it-swarm.com.de

Ist es möglich, Kennwörter pro Datenbank oder pro Host in .my.cnf zu konfigurieren?

Ich habe folgendes in meinem ~/.my.cnf

[client]
password="somepass"

dies ist jedoch nicht das Kennwort, das ich für jeden Benutzer @ Host/Datenbank verwende, mit dem ich eine Verbindung herstelle. Gibt es eine Möglichkeit, in der Konfiguration verschiedene Passwörter für verschiedene Dinge anzugeben, damit ich sie nicht eingeben muss?

48
xenoterracide

Wie ich geantwortet habe hier , können Sie für jeden Benutzer/Host/jede Datenbank, zu der Sie eine Verbindung herstellen, einen Abschnitt hinzufügen, indem Sie die Syntax in Ihrem ~/.my.cnf Verwenden:

[clienthost1]   # Note: client + Host1
user=myuser
password=mypass
database=dbname
Host=server.location.com

Sobald dies in .my.cnf Ihres Benutzers enthalten ist, können Sie es in einer Befehlszeile verwenden:

$ mysql --defaults-group-suffix=Host1
67
Derek Downey

Das Einfügen eindeutiger Passwörter in Textdateien wird nicht empfohlen, da MySQL 5.6.6.

Sie können mysql_config_editor Verwenden, um verschlüsselte Kennwörter zu speichern und auch unterschiedliche Kennwörter für unterschiedliche Verbindungen bereitzustellen https://dev.mysql.com/doc/refman/5.6/en/mysql-config-editor.html)

8
PerroVerd

Die andere Antwort ist richtig. Leider unterstützt mysqladmin--defaults-group-suffix Nicht (zumindest nicht die Version, die ich verwende).

Daher habe ich stattdessen --defaults-file=Host.cnf Verwendet, was für mysql, mysqladmin und mysqldump funktioniert.

8
kqw