数据库(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> 
相关推荐
会飞的灰大狼2 小时前
MyCAT完整实验报告
mysql·centos7
不羁。。5 小时前
【撸靶笔记】第七关:GET - Dump into outfile - String
数据库·笔记·oracle
yangchanghua1116 小时前
pgsql 如何查询今天范围内的数据(当天0点0分0秒 - 当天23点59分59秒....)
数据库·pgsql
larance6 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
python_chai7 小时前
从数据汇总到高级分析,SQL 查询进阶实战(下篇)—— 分组、子查询与窗口函数全攻略
数据库·sql·mysql
在努力的前端小白7 小时前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
未来之窗软件服务7 小时前
自建知识库,向量数据库 (九)之 量化前奏分词服务——仙盟创梦IDE
数据库·仙盟创梦ide·东方仙盟·自建ai·ai分词
冒泡的肥皂10 小时前
MVCC初学demo(一
数据库·后端·mysql
.Shu.11 小时前
Redis Reactor 模型详解【基本架构、事件循环机制、结合源码详细追踪读写请求从客户端连接到命令执行的完整流程】
数据库·redis·架构
Bruce_Liuxiaowei13 小时前
MySQL完整重置密码流程(针对 macOS)
mysql