1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止nginx以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。
2.修改MySQL的登录设置:
1 | # vim /etc/my.cnf |
在[mysqld]的段后面加上一句:skip-grant-tables
保存并且退出vim。
3.重新启动mysql
1 | # /etc/init.d/mysql restart |
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4.登录并修改MySQL的root密码
1 | # /usr/bin/mysql |
Database changed
1 | mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ; |
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0
1 | mysql> flush privileges ; |
Query OK, 0 rows affected (0.00 sec)
1 | mysql> quit |
Bye
5.将MySQL的登录设置修改回来
1 | # vim /etc/my.cnf |
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出vim。
6.重新启动mysqld
1 | # /etc/init.d/mysql restart |
Shutting down MySQL. SUCCESS!
Starting MySQL.. SUCCESS!