现在的位置: 首页 > 综合 > 正文

Linux下重置MySQL ROOT密码

2017年08月07日 ⁄ 综合 ⁄ 共 1193字 ⁄ 字号 评论关闭

在安装MYSQL时,默认会弹出密码配置界面,显示设置root用户密码,但是一旦忘记就只能想办法重设了。重设ROOT密码有如下几种方法。

方法一、使用mysqladmin

# ./mysqladmin -u root password 'newpassword'

# ./mysqladmin -u root -h host_name password 'newpassword'

Usually mysqladmin's path is /usr/bin, host_name is your real host name, e.g. localhost.localdomain.

password后面的引号不是必须的,不过如果密码包含空格或者一些特殊的符号,需要用引号。

方法二、利用mysql SET PASSWORD命令

# ./mysql -u root

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');

mysql> SET PASSWORD FOR 'root'@'host_name' = PASSWORD('newpassword');

方法三、使用UPDATE语句更新user表重置ROOT密码

# ./mysql -u root

mysql> UPDATE mysql.user SET Password = PASSWORD('newpassword') WHERE User = 'root';

mysql> FLUSH PRIVILEGES;

方法四、启动MYSQL的安全模式重置ROOT密码

1、停止MySQL进程

执行:/etc/init.d/mysql stop,具体位置可能随系统不同而不同,也可能是/etc/init.d/mysql,/etc/init.d/mysqld等路径,或下面直接终止(最好不要使用下面这个强制语句):

# killall -TERM mysqld

2、以安全模式启动MySQL

# mysqld_safe –skip-grant-tables &

或,

# mysqld_safe --skip-grant-tables >/dev/null 2>&1 &

提示:mysqld_safe一般在/usr/local/mysql/bin/目录下。

3、登陆MYSQL

完成上述两步以后就可以不用密码进入MySQL了

# mysql -u root

或,

# /usr/local/mysql/bin/mysql -u root mysql

4、更改ROOT密码

以下几句依次执行:

use mysql;

select host, user, password from user;

update user set password=password(“newpassword”) where user=”root”

flush privileges;

 

5.退出控制台,重启MYSQL服务

service mysqld restart

或,

/etc/init.d/mysql restart

抱歉!评论已关闭.