如何修改mysql root密码忘了怎么办
发布网友
发布时间:2022-02-26 19:16
我来回答
共2个回答
懂视网
时间:2022-02-26 23:38
产品型号:Thinkpad E15
系统版本:centos8
软件版本:mysql 5.7
mysql忘记root密码怎么办
启动MySQL服务的时候跳过权限表认证。
停止数据库
[root@xuegod63 ~]# systemctl stop mariadb
直接通过安全模式启动并跳过用户名认证
[root@xuegod63 ~]# mysqld_safe --skip-grant-table &
修改密码
[root@xuegod63 ~]# mysql
MariaDB [(none)]> update mysql.user set password=password('xuegod') where user='root' and host='localhost';
通过新密码关闭数据库
[root@xuegod63 ~]# mysql
admin -uroot -pxuegod shutdown
重新启动数据库
[root@xuegod63 ~]# systemctl start mariadb
注:如果修改配置文件绕过权限表认证,则启动数据库前应删除配置文件中添加的skip-grant-tables。
新密码登录数据库
[root@xuegod63 ~]# mysql
-uroot -pxuegod
总结:
1、停止数据库
2、通过安全模式跳过安全表启动并修改密码
3、使用新密码关闭数据库后重新启动mysql
热心网友
时间:2022-02-26 20:46
mysql5.6忘记数据库的root密码:
[root@oraserver139 ~]# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
查看当前安装的mysql版本:
root@oraserver139 ~]# rpm -qa | grep MySQL
MySQL-server-5.6.15-1.el6.x86_64
MySQL-client-5.6.15-1.el6.x86_64
MySQL-shared-compat-5.6.15-1.el6.x86_64
MySQL-devel-5.6.15-1.el6.x86_64
perl-DBD-MySQL-4.022-1.el6.rfx.x86_64
停止mysql服务:
[root@oraserver139 ~]# service mysql stop
Shutting down MySQL.. SUCCESS!
进入到skip-grant-tables模式:
[root@oraserver139 ~]# mysqld_safe --skip-grant-tables
140211 15:37:49 mysqld_safe Logging to '/var/lib/mysql/oraserver139.err'.
140211 15:37:49 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
现在就不需要密码就可以进入mysql了:
[root@oraserver139 ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.15 MySQL Community Server (GPL)
Copyright (c) 2000, 2013, 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系统数据库:
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
修改root账户密码:
mysql> update user set password=password("12345") where user="root";
Query OK, 4 rows affected (0.02 sec)
Rows matched: 4 Changed: 4 Warnings: 0
刷新权限:
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
停止mysql进程:
[1]+ Stopped mysqld_safe --skip-grant-tables
启动mysql:
[root@oraserver139 ~]# service mysql start
Starting MySQL SUCCESS!
使用刚才修改的密码进入mysql:
[root@oraserver139 ~]# mysql -uroot -p12345
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.15
Copyright (c) 2000, 2013, 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;
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
mysql> SET PASSWORD = PASSWORD('12345');
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
修改完成;