如何重新设置MySQL Root密码
May 28, 2009 – 9:55 pm我忘记了MySQL root密码,怎样才能重设MySQL root密码呢?
MySQL root密码是可以重设的。按照下面的步骤,你可以重设Unix / Linux / BSD等操作系统中的
MySQL root用户的密码。
首先,你需要以root管理员帐号登录UNIX / Linux系统。
第一步:停止MySQL
在RHEL / Fedora / CentOS Linux系统中,输入下面的命令来停止MySQL数据库服务器:
# /etc/init.d/mysqld stop
在FreeBSD UNIX系统中,输入下面的命令来停止MySQL数据库服务器:
# /usr/local/etc/rc.d/mysql-server stop
在Debian / Ubuntu Linux系统中,输入下面的命令来停止MySQL数据库服务器:
# /etc/init.d/mysql stop
另外,你也可以通过kill命令停止mysqld进程, 在下面的cat命令后,输入mysqld.pid文件所在的路径:
# kill $(cat /var/run/mysqld/mysqld.pid)
或者:
# pgrep -u mysql mysqld
# kill PID
或者, 在Linux下,使用简单的killall命令:
# killall mysql
第二步:创建新的mysql密码的sql script
新建命名为 /root/mysql.reset.sql sql文件, 并输入如下内容,将下面的“你的新mysql密码”改成你自己想要设置的密码。
# vi /root/mysql.reset.sql
输入如下代码::
UPDATE mysql.user SET Password=PASSWORD('你的新mysql密码') WHERE User='root';
FLUSH PRIVILEGES;
!wq 保存并关闭文件。
第三步: 设置新的mysql root密码
输入如下命令:
# mysqld_safe --init-file=/root/mysql.reset.sql &
出现如下提示:
nohup: ignoring input and redirecting stderr to stdout
Starting mysqld daemon with databases from /var/lib/mysql
mysqld_safe[20970]: started
你已经完成了操作。现在只需停止服务器,并启动它就可以了:
# killall mysqld
# /etc/init.d/mysql start
(the end)