首页 > 数据库 > MySQL > 正文

MySQL修改root账号密码的方法

2024-07-24 13:07:43
字体:
来源:转载
供稿:网友

这篇文章介绍了两种情况,知道root密码的情况下修改root密码,以及忘记了root密码,如何对root的密码进行修改,需要的朋友可以参考下

MySQL数据库中如何修改root用户的密码呢?下面总结了修改root用户密码的一些方法

1: 使用set password语句修改

 

 
  1. mysql> select user(); 
  2. +----------------+ 
  3. | user() | 
  4. +----------------+ 
  5. | root@localhost | 
  6. +----------------+ 
  7. 1 row in set (0.08 sec) 
  8.  
  9. mysql> set password=password('123456'); 
  10. Query OK, 0 rows affected (0.00 sec) 
  11.  
  12. mysql> flush privileges; 
  13. Query OK, 0 rows affected (0.00 sec) 
  14.  
  15. mysql> exit 

MySQL修改root账号密码的方法

2: 更新mysql数据库的user表

 

 
  1. mysql> use mysql; 
  2. Reading table information for completion of table and column names 
  3. You can turn off this feature to get a quicker startup with -A 
  4.  
  5. Database changed 
  6. mysql> update user set password=PASSWORD('QwE123') where user='root'
  7. Query OK, 4 rows affected (0.03 sec) 
  8. Rows matched: 4 Changed: 4 Warnings: 0 
  9.  
  10. mysql> flush privileges; 
  11. Query OK, 0 rows affected (0.00 sec) 
  12.  
  13. mysql> quit 

MySQL修改root账号密码的方法

3:使用mysqladmin命令修改

命令一般为 mysqladmin -u root -p'oldpassword' password newpass 如下所示:

 

 
  1. [root@DB-Server ~]# mysqladmin -u root -p'123456' password 'Qwe123' 
  2. Warning: Using a password on the command line interface can be insecure. 

验证root密码修改是否成功

 

 
  1. [root@DB-Server ~]# mysqladmin -u root -p'123456' password 'Qwe123' 
  2. Warning: Using a password on the command line interface can be insecure. 

上面都是在知道root密码的情况下修改root密码,如果忘记了root密码,如何修改root的密码呢?

1:首先停掉MySQL服务

 

 
  1. [root@DB-Server ~]# service mysql stop 
  2. Shutting down MySQL..[ OK ] 
  3. [root@DB-Server ~]# 

 

 
  1. [root@DB-Server ~]# /etc/rc.d/init.d/mysql stop 
  2. Shutting down MySQL..[ OK ] 

2:然后使用mysqld_safe命令启动mysql,更新root账号的密码

--skip-grant-tables:不启动grant-tables(授权表),跳过权限控制。

--skip-networking :跳过TCP/IP协议,只在本机访问(这个选项不是必须的。可以不用)是可以不用

 

 
  1. [root@DB-Server ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 
  2. [1] 5145 
  3. You have new mail in /var/spool/mail/root 
  4. [root@DB-Server ~]# 150709 14:10:53 mysqld_safe Logging to '/var/lib/mysql/DB-Server.localdomain.err'
  5. 150709 14:10:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 
  6.  
  7. [root@DB-Server ~]# mysql -u root mysql 
  8. Reading table information for completion of table and column names 
  9. You can turn off this feature to get a quicker startup with -A 
  10.  
  11. Welcome to the MySQL monitor. Commands end with ; or /g. 
  12. Your MySQL connection id is 1 
  13. Server version: 5.6.20-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial) 
  14.  
  15. Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. 
  16.  
  17. Oracle is a registered trademark of Oracle Corporation and/or its 
  18. affiliates. Other names may be trademarks of their respective 
  19. owners. 
  20.  
  21. Type 'help;' or '/h' for help. Type '/c' to clear the current input statement. 
  22.  
  23. mysql> show databases; 
  24. +--------------------+ 
  25. | Database | 
  26. +--------------------+ 
  27. | information_schema | 
  28. | mysql | 
  29. | performance_schema | 
  30. | test | 
  31. +--------------------+ 
  32. 4 rows in set (0.00 sec) 
  33.  
  34. mysql> use mysql 
  35. Database changed 
  36. mysql> UPDATE user SET password=PASSWORD("Qwe123") WHERE user='root';  
  37. Query OK, 4 rows affected (0.01 sec) 
  38. Rows matched: 4 Changed: 4 Warnings: 0 
  39.  
  40. mysql> flush privileges; 
  41. Query OK, 0 rows affected (0.00 sec) 
  42.  
  43. mysql> exit 
  44. Bye 

3:重新启动MySQL服务。

以上所述就是本文的全部内容了,希望大家能够喜欢

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表