我无法访问我的MySQL数据库。 问题:
root @ server:〜# mysql -uroot
错误1045(28000):用户'root'@'localhost'的访问被拒绝(使用密码:NO)
尝试重设密码:
- /etc/init.d/mysql stop
- mysqld_safe --skip-grant-tables&
导致:
root @ server:〜#... mysqld_safe登录到syslog。 ... mysqld_safe登录到'/var/log/mysql/error.log'。 ... mysqld_safe目录 UNIX套接字文件的'/ var / run / mysqld'不存在。
结果:
root @ server:〜#mysql -uroot
错误2002(HY000):无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器
root @ server:〜#mysql -u root -p
输入密码: 错误1045(28000):用户'root'@'localhost'的访问被拒绝(使用密码:是)
答案 0 :(得分:0)
来自Resetting Root Password on Unix and Unix-Like Systems的B.4.3.2.2节中的方向。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
mysqld --init-file=/path/to/file-from-step-2 --user=mysql
答案 1 :(得分:0)
这是对我有用的解决方案。
sudo mysql --defaults-file = / etc / mysql / debian.cnf
现在我进入了! :-)
DROP USER'root'@'localhost';
创建用户'root'@'localhost'由'the_password'标识;
在上授予所有特权。使用GRANT选项将其授予'root'@'localhost';
在上授予所有特权。使用GRANT选项将其授予'root'@'localhost';
感谢毛兹·扎多克(Maoz Zadok):