mysql的root密码忘记与修改方法

 
忘记root密码:
 
1、编辑MySQL配置文件my.cnf
 
vi /etc/my.cnf    #编辑文件,找到[mysqld],在下面添加一行skip-grant-tables
[mysqld]
skip-grant-tables
:wq!  #保存退出
service mysqld restart  #重启MySQL服务
2、进入MySQL控制台
mysql -uroot -p   #直接按回车,这时不需要输入root密码。
3、修改root密码
 
update mysql.user set password=password('123456') where User="root" and Host="localhost";
flush privileges;  #刷新系统授权表
 
4、取消/etc/my.cnf中的skip-grant-tables
vi /etc/my.cnf   编辑文件,找到[mysqld],删除skip-grant-tables这一行
:wq!  #保存退出
 
5、重启mysql
service mysqld restart    #重启mysql,这个时候mysql的root密码已经修改为123456
 
6、进入mysql控制台
mysql -uroot -p  #进入mysql控制台
123456 #输入密码
 

 
修改root密码的多种方法
方法1: 用SET PASSWORD命令
  mysql -u root
  mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
 
方法2:用mysqladmin
  mysqladmin -u root password "newpass"
  如果root已经设置过密码,采用如下方法
  mysqladmin -u root password oldpass "newpass"
 
方法3: 用UPDATE直接编辑user表
  mysql -u root
  mysql> use mysql;
  mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
  mysql> FLUSH PRIVILEGES;
 
在丢失root密码的时候,可以这样
  mysqld_safe --skip-grant-tables&
  mysql -u root mysql
  mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
  mysql> FLUSH PRIVILEGES;
posted @ 2017-02-01 20:17  chenghuan  阅读(136)  评论(0)    收藏  举报