Назад | Перейти на главную страницу

Пользователи root и mysql: `sudo mysql` vs` / root / .my.cnf`

у меня есть /root/.my.cnf файл, в котором хранится пароль пользователя root mysql:

[client]
password = "my password"

Когда я вхожу в систему как root и ввожу mysql, я получаю логин без пароля:

myuser@local:$ sudo su
root@local:$ mysql
mysql>

Но когда я пытаюсь сделать то же самое, просто используя sudo, мне отказывают в доступе:

myuser@local:$ sudo mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Как я могу получить sudo mysql войти в систему как пользователь root mysql без ввода пароля?

sudo -i mysql также должен работать - это должно запускать mysql под новой интерактивной оболочкой.

Если вы заблокированы и единственная команда, которую вы можете ввести как sudo, - это mysqldump (неинтерактивный), возможно, вы захотите добавить параметр .my.cnf с помощью параметра --defaults-file.

Команда sudo su -c "mysql" окажет желаемый эффект.