如何重置MySQL数据库管理员(root)密码

经常有同事忘记了root用户密码。这里把Linux上的重置步骤描述一下:


1)停止mysqld进程


查看mysqld的进程信息。如:

# ps -ef | grep -i mysql

root      7631     1  0 11:39 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/mmdev-com.pid

mysql     7758  7631  1 11:39 pts/0    00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/mmdev-com.err --pid-file=/var/lib/mysql/mmdev-com.pid

7758 号进程即为mysqld进程。使用kill停止它:
kill 7758

如果已经将mysqld安装为服务,也可以这样停止它:

# service stop mysqld

2)重启mysqld进程,附加命令参数 --skip-grant-tables 和 --skip-networking。第一个参数可以关闭身份认证。第二个参数则是为了安全考虑,关闭了网络访问。

/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/mmdev-nq-com.err --pid-file=/var/lib/mysql/mmdev-com.pid --skip-grant-tables --skip-networking

3)在mysqld本机启动mysql客户端

# mysql

4)使用下面的SQL语句修改root密码

5)停止mysqld进程


与第一步做法相同。


6)正常启动mysqld,不带 --skip-grant-tables 和 --skip-networking 这两个参数。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章