Подтвердить что ты не робот

Утилиты MySQL - ~/.my.cnf

Я пытаюсь использовать 2 утилит mysql, mysqldiff и mysqldbcompare и хочу, чтобы не помещать мой пароль в командной строке

Можно ли использовать файл опций для указания пароля для моего подключения к БД, чтобы я не мог указать пароль?

Это команда, которую я в настоящее время имею...

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

У меня также есть файл ~/.my.cnf, который имеет разрешения "600" и содержит следующее.

[client]
user=root
password=mypassword

Когда я подключаюсь через командную строку к MySQL, он выбирает детали в моем файле параметров, но утилиты mysql не выполняют: -/

4b9b3361

Ответ 1

Попробуйте это -

[client]
user=root
password="pass"

[mysql]
user=root
password="pass"

[mysqldump]
user=root
password="pass"

[mysqldiff]
user=root
password="pass"

Расположение .my.cnf: ~/.my.cnf

См. страницу руководства Использование файлов параметров

Ответ 2

Чтобы усилить ответ @Retraut, получите свои пароли в кавычках. Принятый ответ не будет работать, если у вас есть специальные символы в вашем пароле, который, кстати, является хорошей практикой безопасности.

[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

Найдите "Вот типичный файл пользовательских параметров:" и посмотрите пример, который они там укажут. Удачи, и я надеюсь немного сэкономить время.