Как подключится к локальному mysql серверу без пароля?
Я поставил VestaCP вместе с mysql сервером.
Пока ковырял привилегии рута сломал ему вход без пароль по команде mysql или mysql -u root.
Теперь при прописывании одной из этих команд я получаю:
'Access denied for user 'root'@'localhost' (using password: YES)'
В бд ничего нет, разве что настройки от весты и ее же бд стандартного юзера.
Спасибо, кажется теперь я понимаю как это работает.
Я тут новую проблему создал, не подскажете как ее исправить ?
ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded
sudo /etc/init.d/mysql stop
sudo mysqld_safe --skip-grant-tables &
# enter
mysql -uroot
mysql>
use mysql;
update user set authentication_string=PASSWORD("") where User='root';
update user set plugin="mysql_native_password" where User='root';
flush privileges;
quit;
Пробовал, результат примерно тот же, сейчас я волбще сломал рута...
ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded
Может можно просто сбросить таблицу с привилегиями ?
Тимофей, Можно заново все инициализировать, особенно если ничего ценного в базе нет. Но лучше всего не править параметры, не прочитав заранее зачем они :)
CityCat4, Дельный совет.
Дело в том что я не совсем знаю как работает алгоритм входа без пароля, вот и искал различные способы решения, впредь постараюсь не выполнять не ведомых запросов дабы не сделать хуже.
Тимофей, Это зависит от дистрибутива и того, что используете (MySQL или MariaDB). Сами подумайте, хорошая ли это практика - пустой пароль для MySQL root.
В Debian (и клонах) есть специальный пользователь, с настройками в /etc/mysql/debian.cnf. Можно им воспользоваться для установки пароля любому пользователю.