我们使用MYSQL的时候有可能由于种种原因忘记ROOTpassword,假设是那样数据库可能就废掉了。可是今天给大家分享下找回ROOTpassword的方法或者说是在不知道rootpassword的情况下改动ROOTpassword,可是还是建议大家对rootpassword慎重保管,防止一些不必要的麻烦
找回管理员password:
[root@localhost~]# service mysqld stop
Shutting down MySQL....[确定]
[root@localhost~]# vim /etc/init.d/mysqld
大约在283行:
$bindir/mysqld_safe --datadir="$datadir"--pid-file="$mysqld_pid_file_path" $other_args >/dev/null2>&1 &
wait_for_pid created "$!""$mysqld_pid_file_path"; return_value=$?
更改为
$bindir/mysqld_safe --skip-grant-tables --skip-networking
--datadir="$datadir"--pid-file="$mysqld_pid_file_path" $other_args >/dev/null2>&1 &
wait_for_pid created "$!""$mysqld_pid_file_path"; return_value=$?
保存退出
mysql> use mysql
Readingtable information for completion of table and column names
You canturn off this feature to get a quicker startup with -A
Databasechanged
mysql> select user,host,password from user;
+---------+-----------------------+-------------------------------------------+
|user | host | password |
+---------+-----------------------+-------------------------------------------+
|root | localhost |*4941369BD46398A2BDEEC85411065D7137D4EA0F |
|root | localhost.localdomain |*4941369BD46398A2BDEEC85411065D7137D4EA0F |
|root | 127.0.0.1 |*4941369BD46398A2BDEEC85411065D7137D4EA0F |
|tianke | % |*A399693A49F7EC7C548D0FC376FA52AD293A552F |
|tianke1 | % |*EEAC51414F1AE247D67F47A875BDB134CF39986C |
+---------+-----------------------+-------------------------------------------+
5 rowsin set (0.01 sec)
改动rootpassword
mysql> update user setpassword=password('123456') whereuser='root';
QueryOK, 3 rows affected (0.00 sec)
Rowsmatched: 3 Changed: 3 Warnings: 0
然后将服务再次停掉,然后再将掺数改回重新启动mysql就可以。