Centos系统mysql 忘记root用户的密码:

第一步:(停掉正在运行的mysql)

[root@maomao ~]# service mysqld stop  
Stopping MySQL:                                            [  OK  ]
 
第二步:使用 “--skip-grant-tables”参数重新启动mysql
[root@mcy400 ~]# mysqld_safe --skip-grant-tables 

[root@cy400 ~]# Starting mysqld daemon with databases from /var/lib/mysql

注意:如果停在这一步的时候,请新开SSH登陆接着下一步操作

 
第三步:用帐号登录mysql
[root@cy400 ~]# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.0.77 Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
 
第四步:改变用户数据库
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
 
第五步:修改密码,下面()内的root123为新密
mysql> update user set password=password('root123') where user='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0
 
第六步:刷新权限表
mysql> flush previleges;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'previleges' at line 1
 
第七步:退出mysql
mysql> quit
Bye
 
第八步:对mysql进行重启
[root@cy400 ~]# service mysqld restart;
Stopping MySQL:                                            [  OK  ]
Starting MySQL:                                            [  OK  ]
 
第九步:用更改过的密码重新登录即可。
[root@cy400 ~]# mysql -u root -p
Enter password: admin123
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 2
Server version: 5.0.77 Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql> quit
Bye

[root@cy400 ~]#

加入如下自动启动命令 /etc/rc.d/init.d/mysqld start

现主要从事PHP、Uinx/Linux、C/C++等方面的项目开发。
原文地址:https://www.cnblogs.com/lsl8966/p/3671878.html