今天开发人员说开发用测试服务器mysql的root密码忘记了。

mysql root密码重置这种事经常碰到今天顺便做下笔记


环境 OS:CentOS 6.5

  mysql:

    


解决:

  在mysql配置文件中添加skip-grant-tables[mysqld]下面

vim /etc/my.cnf

[mysqld]

#port=7416

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

lower_case_table_names=1

log-error=/usr/mysql.log

character-set-server=utf8

skip-name-resolve

skip-grant-tables


[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

skip-grant-tables:在启动mysql时不启动g授权表grant-tables

***不改配置文件可以这样启动/usr/bin/mysqld_safe --skip-grant-tables &****


重启  service mysqld restart

使用空密码登录mysql并重置密码

UPDATE mysql.user SET Password = password ("123456") WHERE User = 'root';

退出mysql 改回原配置文件 重启mysql即可