首先停止mysql服务进程
service mysqld stop
然后编辑mysql的配置文件my.cnf
vim /etc/my.cnf
找到 **[mysqld]**这个模块
在最后面添加一段代码
skip-grant-tables ##忽略mysql权限问题,直接登录
然后保存 :wq!退出
启动mysql服务:
service mysqld start
直接进入mysql数据库
mysql
使用mysql表,然后进行修改mysql的root密码
mysql> use mysql; ##使用mysql数据库
Database changed
mysql> update user set password=password("121312321") where user="root";##更新密码
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> flush privileges;##刷新权限
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
将MySQL的登录验证修改回来
vi /etc/my.cnf
将刚才在**[mysqld]的段中加上的skip-grant-tables**删除
保存并且退出vi。
重新启动mysqld
service mysqld start
Starting MySQL. SUCCESS!
2022年1月12日11:13:55 更新
新版更新root密码的方法
update user set authentication_string = password('121312321'),password_last_changed=now() where user='root';