-
总体说明
对于学习Linux的人来说,使用Mysql时可能不会刻意地用Excel记录下自己设定的root密码,亦或是记下了但是却在输入的时候发生了冲突。
当这种局面出现的时候,下面的方法也许可以给你提供一些参考。
操作步骤:
1、停止mysql服务
2、进行跳过密码验证的设置
3、启动mysql服务
3、跳过密码验证进入Mysql
4、修改root密码
5、收尾工作
-
详细的操作说明
1、停止mysql服务
首先是停止mysql服务。
net stop mysql #笔者这里用的是systemctl stop mysqld
2、进行跳过密码验证的设置
在/etc/my.cnf文件中,找到[mysqld]一行(如没有则请自行添加),在下面添加一行skip-grant-tables
vim /etc/my.cnf
3、启动mysql服务
net start mysql #笔者这里用的是systemctl start mysqld
4、跳过密码验证进入Mysql
mysql -u root -p #要求你输入密码的时候,打个回车即可
5、修改root密码
MariaDB[(none)]> set password for 'root'@'localhost'=password('123456');
#注:有些博客中使用了 update mysql.user set password=password("123456") where User="root" and Host="localhost"; 的命令,但是总会出现'Password' is not updatable'的错误。 #注2:如果出现 The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement 的报错的话,请刷新一下权限再修改root密码。 刷新权限的命令:
MariaDB [(none)]> flush privileges;
6、收尾工作
修改完毕后,停止mysql服务
net stop mysql
在/etc/my.cnf文件中,找到[mysqld]一行(如没有则请自行添加),在添加的skip-grant-tables前面加上#号将其无效化。
vim /etc/my.cnf
再次启动mysql服务
net start mysql
最后验证一下修改后的密码是否正确即可。
mysql -u root -p