Obwohl einige dieser Antworten hilfreich sind, sind einige verwirrend, da der Unix-Root-Benutzer und der MySQL-Root-Benutzer nicht identisch sind und im Grunde keine Beziehung haben, außer dass beide den Anmeldenamen 'root' verwenden. Möglicherweise ist das offensichtlich, aber es scheint, dass einige Antworten die zwei vereinen.
Eine nützliche Option für mysqld wäre, Client-Programmen wie mysql oder mysqldump etc, die als Unix-Root ausgeführt werden, den Zugriff auf mysqlds root @ localhost ohne Kennwort zu ermöglichen, ohne das Kennwort von root @ localhost (mysql) speichern zu müssen in einer my.cnf-Datei oder ähnlichem.
Ich weiß, das macht einige nervös, aber die Überlegung ist, dass jeder, der als lokaler (auf dem mysqld-Server) Unix-Root läuft, die Sicherheit von mysqld ohnehin recht leicht umgehen kann. Und wenn ich eine my.cnf mit dem mysqld-root-Passwort 7x24 habe oder sogar eine my.cnf mit dem mysql-root-Passwort (woher kommt dieses Passwort?) Im laufenden Betrieb erstelle / lösche (z. B. um einen mysqldump durchzuführen), bin ich nervös.
Es würde etwas Infrastruktur und Nachdenken erfordern, da man mysql / mysqldump / etc vertrauen müsste, um an mysqld zu übermitteln, dass es wirklich glaubt, dass es von einem lokalen Unix-Root-Konto ausgeführt wird.
Aber zum Beispiel könnte eine Beschränkung auf den Unix-Socket von mysqld, kein TCP, helfen, zumindest als dringend empfohlene Option dieser Option. Dies könnte darauf hinweisen, dass der Client lokal ausgeführt wird, obwohl dies wahrscheinlich nicht ausreicht. Aber es könnte ein Anfang einer Idee sein. Vielleicht könnte ein Dateideskriptor über einen Unix-Socket gesendet werden (google es, wenn das wie verrücktes Gerede klingt.)
PS: Nein, ich werde hier nicht versuchen, mir Gedanken darüber zu machen, wie dies auf einem Nicht-Unix-Betriebssystem funktionieren könnte, obwohl die Idee wahrscheinlich auf andere Betriebssysteme übertragen werden kann.