risposta-alla-domanda-sullo-sviluppo-web-bd.com

Utilità MySQL - file di opzioni ~ / .my.cnf

Sto cercando di utilizzare 2 delle utility mysql, mysqldiff e mysqldbcompare e voglio evitare di inserire la mia password dalla riga di comando

È possibile utilizzare un file di opzioni per specificare la password per la mia connessione DB per impedirmi di specificare la password?

Questo è il tipo di comando che ho attualmente ...

/usr/share/mysql-workbench/python/mysqldiff [email protected] --server2=roo[email protected] --difftype=sql db1:db2

Ho anche un file in ~/.my.cnf che ha permessi "600" e contiene i seguenti ..

[client]
user=root
password=mypassword

Quando mi connetto tramite la riga di comando a MySQL raccoglie i dettagli nel mio file di opzioni, ma le utility mysql non lo fanno: - /

44
Carlton

Prova questo -

[client]
user=root
password="pass"

[mysql]
user=root
password="pass"

[mysqldump]
user=root
password="pass"

[mysqldiff]
user=root
password="pass"

Posizione per .my.cnf: ~/.my.cnf

Fare riferimento alla pagina del manuale intitolata tilizzo dei file delle opzioni

66
Retraut

Per migliorare la risposta di @ Retraut, inserisci le tue password tra virgolette. La risposta accettata non funzionerebbe se hai caratteri speciali nella tua password, che tra l'altro è una buona pratica di sicurezza.

[client]
user=root
password="[email protected]$$"

[mysql]
user=root
password="[email protected]$$"

[mysqldump]
user=root
password="[email protected]$$"

[mysqldiff]
user=root
password="[email protected]$$"

http://dev.mysql.com/doc/refman/5.7/en/option-files.html

Cerca "Ecco un tipico file di opzioni utente:" e vedi l'esempio che contengono. Buona fortuna e spero di salvare qualcun altro un po 'di tempo.

36
mimoralea