我正在尝试重置我的root密码,并很高兴地遵循了各种示例。
我正在尝试遵循https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html,已停止我的mysql服务器并使用--skip-grant-tables重新启动
然后我登录并更改我的根密码:
sudo mysql -u root -p
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY ''
Query OK, 0 rows affected (0.00 sec)
然后我停止服务器并在没有“跳过授予表”标志的情况下重新启动,但是仍然无法使用root用户和密码登录。
我还尝试将/etc/mysql/my.cnf文件编辑为:
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
[mysqld]
socket=/var/run/mysqld/mysqld.sock
[client]
user=root
password=""
[mysql]
user=root
password=""
[mysqldump]
user=root
password=""
[mysqldiff]
user=root
password=""
我尝试过的其他方法包括停止mysql并使用
重新启动sudo mysqld --skip-grant-tables &
但是在成功启动之后,我无法在该套接字上连接到mysql
mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
我尝试在my.cnf中指定套接字没有任何乐趣
最令人沮丧的部分是这不是一个新的安装-我已经在本地运行了几个月,而没有root密码的mysql,今天早上它随机无法连接
非常感谢您的帮助