2015-05-02 2 views
8

Сегодня (2015-05-02) Я модернизировал свою систему Linux с помощью APT-получить обновление и
APT-получить обновление в то время как MySQL, mysqladmin и много больше пакетов
имеют был обновлен. MySQL-сервер-5.5 работает, и я могу войти и сделать все
типичных операций с базами данных, но когда я типом:
mysqladmin: подключение к серверу на «локальном» не удалось

[email protected]:~# mysqladmin proc 

Я получаю следующее сообщение об ошибке:

mysqladmin: connect to server at 'localhost' failed 
error: 'Access denied for user 'root'@'localhost' (using password: NO)' 

Раньше я мог решить эту проблему, просто установив новый пароль root mysql.
Это не решает проблему больше:

[email protected]:~# sudo dpkg-reconfigure mysql-server-5.5 

Как получить mysqladmin снова без переустановки MySQL?

ответ

14

Короткая версия: Если пользователь MySQL root необходим пароль для подключения, это может быть хорошей идеей, чтобы иметь mysqladmin предоставить этот пароль;)

Longer версия: Ваш пользователь MySQL root кажется, нуждается пароль для подключения

setting the mysql root password new

Но mysqladmin пытается подключиться без пароль

'Access denied for user 'root'@'localhost' (using password: NO)'

И mysqladmin делает это потому, что ты не говоришь это иначе;)

mysqladmin, как и другие MySQL-родственных инструментов командной строки (mysql, mysqldump, mysqlshow и т.д.), дает возможность обеспечить такой доступ данные.

  • h: Хост для подключения. Если не указано, принимается localhost
  • u: К какому пользователю подключиться как. Если не указано, root принимается
  • p: Какой пароль использовать. Если не указан, пароль не используется

Вы должны быть в состоянии использовать что-то вроде

mysqladmin -uroot -pmysupersecretpassword proc 

(быть в курсе, что там нет места между опциями и их значениями). Вы также можете запросить у MySQL пароль, например

mysqladmin -uroot -p proc 

При этом MySQL должен предоставить вам подсказку, в которой вы можете ввести свой пароль.

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