这篇文章介绍了两种情况,知道root密码的情况下修改root密码,以及忘记了root密码,如何对root的密码进行修改,需要的朋友可以参考下
MySQL数据库中如何修改root用户的密码呢?下面总结了修改root用户密码的一些方法
1: 使用set password语句修改
- mysql> select user();
- +----------------+
- | user() |
- +----------------+
- | root@localhost |
- +----------------+
- 1 row in set (0.08 sec)
- mysql> set password=password('123456');
- Query OK, 0 rows affected (0.00 sec)
- mysql> flush privileges;
- Query OK, 0 rows affected (0.00 sec)
- mysql> exit
2: 更新mysql数据库的user表
- mysql> use mysql;
- Reading table information for completion of table and column names
- You can turn off this feature to get a quicker startup with -A
- Database changed
- mysql> update user set password=PASSWORD('QwE123') where user='root';
- Query OK, 4 rows affected (0.03 sec)
- Rows matched: 4 Changed: 4 Warnings: 0
- mysql> flush privileges;
- Query OK, 0 rows affected (0.00 sec)
- mysql> quit
3:使用mysqladmin命令修改
命令一般为 mysqladmin -u root -p'oldpassword' password newpass 如下所示:
- [root@DB-Server ~]# mysqladmin -u root -p'123456' password 'Qwe123'
- Warning: Using a password on the command line interface can be insecure.
验证root密码修改是否成功
- [root@DB-Server ~]# mysqladmin -u root -p'123456' password 'Qwe123'
- Warning: Using a password on the command line interface can be insecure.
上面都是在知道root密码的情况下修改root密码,如果忘记了root密码,如何修改root的密码呢?
1:首先停掉MySQL服务
- [root@DB-Server ~]# service mysql stop
- Shutting down MySQL..[ OK ]
- [root@DB-Server ~]#
或
- [root@DB-Server ~]# /etc/rc.d/init.d/mysql stop
- Shutting down MySQL..[ OK ]
2:然后使用mysqld_safe命令启动mysql,更新root账号的密码
--skip-grant-tables:不启动grant-tables(授权表),跳过权限控制。
--skip-networking :跳过TCP/IP协议,只在本机访问(这个选项不是必须的。可以不用)是可以不用
- [root@DB-Server ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
- [1] 5145
- You have new mail in /var/spool/mail/root
- [root@DB-Server ~]# 150709 14:10:53 mysqld_safe Logging to '/var/lib/mysql/DB-Server.localdomain.err'.
- 150709 14:10:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
- [root@DB-Server ~]# mysql -u root mysql
- Reading table information for completion of table and column names
- You can turn off this feature to get a quicker startup with -A
- Welcome to the MySQL monitor. Commands end with ; or /g.
- Your MySQL connection id is 1
- Server version: 5.6.20-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)
- Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
- Oracle is a registered trademark of Oracle Corporation and/or its
- affiliates. Other names may be trademarks of their respective
- owners.
- Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.
- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | mysql |
- | performance_schema |
- | test |
- +--------------------+
- 4 rows in set (0.00 sec)
- mysql> use mysql
- Database changed
- mysql> UPDATE user SET password=PASSWORD("Qwe123") WHERE user='root';
- Query OK, 4 rows affected (0.01 sec)
- Rows matched: 4 Changed: 4 Warnings: 0
- mysql> flush privileges;
- Query OK, 0 rows affected (0.00 sec)
- mysql> exit
- Bye
3:重新启动MySQL服务。
以上所述就是本文的全部内容了,希望大家能够喜欢
新闻热点
疑难解答