2012-09-30 18 views
41

Ich benutze derzeit das Folgende, aber es fordert mich IMMER auf, das Passwort manuell einzugeben. Gibt es eine Möglichkeit, es in der Befehlszeile beim Starten der ausführbaren Datei zu übergeben?Gibt es eine Möglichkeit, das DB-Benutzerkennwort in das Befehlszeilen-Tool mysqladmin zu übergeben?

mysqladmin processlist -u root -p 
+0

Set MYSQL_PWD in der Umwelt ('exportiere MYSQL_PWD = muhpassword') und führe deinen Befehl ohne' -p' aus. Siehe [MySQL-Programmumgebungsvariablen] (https://dev.mysql.com/doc/refman/5.7/en/environment-variables.html). Trotz der [schrecklichen Warnungen] des Handbuchs (https://dev.mysql.com/doc/refman/5.7/en/password-security-user.html) ist dies [ziemlich sicher] (https: // security. stackexchange.com/questions/20282/is-passing-sensitive-data-through-the-process-environment-secure). Es sei denn, Sie starten seltsame Warez in der gleichen Shell, die Ihre Umgebung staubsaugen könnte und senden sie an darkaspirator.cc. –

Antwort

67

einfach die Antwort herausgefunden ....

mysqladmin processlist -u root -pYOURPASSWORDHERE 

Kein Platz zwischen Ihrem Passwort und dem -p

+4

Anführungsstriche sind ebenfalls erlaubt, wenn das Passwort Leerzeichen enthält, wie in: '-p'YOURPASSWORD HERE'' –

+8

Wow ... wirklich intuitiv ... Leerzeichen zwischen' -h localhost' und '-u root', aber nicht' -pPASSWORD' . Klassische Programmierer machen alles schwerer als nötig. –

+1

@KolobCanyon können Sie den Raum zwischen -u und Wurzel weglassen, '-uroot' funktioniert gut –

18

Versuchen:

--password=PasswordTextHere 
+0

Das hat für mich funktioniert. –

+0

das funktionierte auch für mich –

+0

Nützlich, wenn Sie ein "leeres" Passwort (für Testzwecke natürlich) übergeben müssen. –