MySQL auf shell ohne passwort

Um auf der Komandozeile eine Verbindung mit MySQL herzustellen ohne immer Benutzer und Passwort (-u & -p) eingeben zu müssen, kann man dies (auf einem Vertrauenswürdigen System) gans einfach lösen.

Einfach im Home-Verzeichnis des Benutzers eine .my.cnf erstellen:

[cc lang=’bash‘ line_numbers=’false‘]vi ~/.my.cnf[/cc]

Und dort folgenden Inhalt einfügen:

[cc lang=’vim‘ ]

[mysqladmin]
user=myuser
pass=mypass

[client]
user=myuser
pass=mypass

[/cc]

Diese werte gelten entsprächend für die Programme mysqladmin und mysql(-client). Dies ist auch bei Monitoring-Lösungen hilfreich, wenn man über Shell-Scripte Statusvariablen aus der Datenbank auslesen möchte:
[cc lang=’bash‘ line_numbers=’false‘]HOME=/opt/meinscript mysql -e ‚SHOW global status WHERE Variable_name=“Connections“;’|awk ‚{print $2}'[/cc]

In diesem Beispiel sind die Zugangsdaten in /opt/meinscript/.my.cnf gespeichert.