2017-02-15 3 views
0

У меня есть приложение, которое вызывает клиент mysql для выполнения различных задач. По разным причинам mysql вызывается как пользователь, который запускает приложение (это центральное место в модели безопасности и также влияет на функциональность, если она изменена). В настоящее время имя пользователя и пароль mysql передаются в клиентскую программу через командную строку - очевидно, это не является желательным положением дел.Запуск клиента mysql с пользовательским my.cnf

Переписывание файла $ HOME/my.cnf не является идеальным решением - могут быть несколько параллельных задач, выполняющихся с различными (локальными и/или удаленными) базами данных. Доступ к базам данных должен быть аутентифицирован.

Есть ли способ передать пользовательский файл my.cnf (или другой способ безопасно передать имя пользователя и пароль) клиенту mysql без необходимости имитации интерактивного входа?

(поставки файл my.cnf, используя --defaults-файл или результаты --defaults-экстра-файлов в mysql: unknown variable 'username=my_db_user'

ответ

1

Вы испытали это

$ cat .my.cnf 
[client] 
user=root 
password=rootpw 

$ mysql --defaults-file=/Pathtomycnf/.my.cnf 

MariaDB [(none)]> quit 
Bye 
+0

Спасибо - да проблема в том, что я было «имя пользователя» вместо «пользователь» :) – symcbean

Смежные вопросы