MySql删除root后的奇葩问题

现象

root密码忘记,根据网上教程,关闭mysqld服务,用mysqld --skip-grant-tables开启服务。
删除root后,新建root,设置密码,然后关闭mysqld服务,开启已注册的mysql服务,发现无法密码错无法登录。

原因

直接 mysqld --skip-grant-tables时,指向安装目录D:\Program Files\MySQL\MySQL Server 5.6下的默认配置文件,配置文件中指向的数据库文件地址为D:\Program Files\MySQL\MySQL Server 5.6\data

而作为服务的mysqld参数为"D:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="D:\ProgramData\MySQL\MySQL Server 5.6\my.ini" MySQL56
数据库文件位于datadir=D:/ProgramData/MySQL/MySQL Server 5.6/Data

因此,修改前者的root,不影响后者,所以导致修改root密码失败。。

解决方法

my.ini中[mysqld]区中增加mysqld --skip-grant-tables即可。

你可能感兴趣的:(MySql删除root后的奇葩问题)