数据库(mysql)忘记密码解决办法

步骤一:先停止数据库服务

bash 复制代码
[root@GGB ~]# systemctl  stop   mysql.service 
[root@GGB ~]# systemctl  status  mysql.service 
● mysql.service - MySQL Server
   Loaded: loaded (/etc/systemd/system/mysql.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 五 2024-07-12 01:03:45 CST; 1s ago
  Process: 3738 ExecStop=/usr/local/mysql/bin/mysqladmin shutdown (code=exited, status=1/FAILURE)
  Process: 2951 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/3306/data (code=exited, status=0/SUCCESS)
 Main PID: 2951 (code=exited, status=0/SUCCESS)

步骤二:采用安全模式启动数据库(空密码方式进入数据库)

bash 复制代码
#mysqld_safe  一个命令
#--skip-grant-tables   Start without grant tables. This gives all users FULL  两个参数
#                      数据库服务启动时,不加载授权表(没有保安)
#--skip-networking     Don't allow connection with TCP/IP
                      关闭远程连接端口
mysqld_safe --skip-grant-tables  --skip-networking   &



[root@GGB ~] 
[root@GGB ~]  mysqld_safe --skip-grant-tables --skip-networking &
[1] 4642
[root@GGB ~]  2024-07-11T17:15:00.581337Z mysqld_safe Logging to '/data/3306/data/GGB.err'.
2024-07-11T17:15:00.600168Z mysqld_safe Starting mysqld daemon with databases from /data/3306/data

[root@GGB ~]  
[root@GGB ~]  ps -ef | grep mysql
root       4642   2019  0 01:14 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --skip-grant-tables --skip-networking
mysql      4798   4642  3 01:14 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/3306/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --skip-grant-tables --skip-networking --log-error=GGB.err --pid-file=GGB.pid --socket=/tmp/mysql.sock
root       4840   2019  0 01:15 pts/0    00:00:00 grep --color=auto mysql
[root@GGB ~]# 

步骤三:登录数据库设置数据库密码信息

bash 复制代码
[root@GGB ~]  mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 8.0.26 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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> flush privileges;
Query OK, 0 rows affected (0.01 sec)

mysql> alter user root@'localhost' identified by '1';
Query OK, 0 rows affected (0.00 sec)

mysql> 

步骤四:重启数据库服务

bash 复制代码
#先pkiil 掉之前后台启动的数据库
[root@GGB ~] pkill mysql
[root@GGB ~] 
[root@GGB ~] 2024-07-11T17:19:26.708758Z mysqld_safe mysqld from pid file /data/3306/data/GGB.pid ended

[1]+  完成                  mysqld_safe --skip-grant-tables --skip-networking
[root@GGB ~] 
[root@GGB ~] 
[root@GGB ~] systemctl  start   mysql.service 
[root@GGB ~] systemctl  status  mysql.service 
● mysql.service - MySQL Server
   Loaded: loaded (/etc/systemd/system/mysql.service; enabled; vendor preset: disabled)
   Active: active (running) since 五 2024-07-12 01:21:31 CST; 2s ago
  Process: 3738 ExecStop=/usr/local/mysql/bin/mysqladmin shutdown (code=exited, status=1/FAILURE)
 Main PID: 5097 (mysqld)
   CGroup: /system.slice/mysql.service
           └─5097 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/3306/data
[root@GGB ~] 

步骤五:验证数据库密码

bash 复制代码
[root@GGB ~] mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.26 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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> 
相关推荐
rylshe13143 分钟前
在scala中sparkSQL连接mysql并添加新数据
开发语言·mysql·scala
fmdpenny8 分钟前
SQL中联表的运用
数据库·sql
不剪发的Tony老师15 分钟前
互联网SQL面试题:用户会话时长分析
数据库·sql
睡觉z33 分钟前
Shell编程之正则表达式与文本处理器
数据库·mysql·正则表达式
TDengine (老段)36 分钟前
TDengine 做为 Spark 数据源
大数据·数据库·物联网·ajax·spark·时序数据库·tdengine
Dreams_l1 小时前
MySQL初阶:查询进阶
数据库·mysql
码农黛兮_461 小时前
数据库数据清洗、预处理与质量监控、 数据质量的核心概念
数据库
张哈大3 小时前
【 Redis | 实战篇 秒杀实现 】
数据库·redis·缓存
weixin_472339463 小时前
Postgresql与openguass对比
数据库·postgresql
程序员曼布4 小时前
主从架构:技术原理与实现
redis·mysql·架构