当前位置: 首页 > news >正文

Mysql数据库系统库数据恢复

概述:

Mysql数据库自带系统数据库故障,恢复后业务数据不变

1 备份除系统库外其他库

# 1. 先获取所有数据库列表(排除 mysql、information_schema、performance_schema、sys)
mysql -u root -p -NBe "SHOW DATABASES WHERE \`Database\` NOT IN ('mysql', 'information_schema', 'performance_schema', 'sys')" > databases.txt# 2. 用获取的数据库列表进行备份(排除系统库)
mysqldump -u root -p --databases $(cat databases.txt) > all_business_data.sql

在这里插入图片描述
在这里插入图片描述
– 步骤说明:
第一条命令会生成一个仅包含业务数据库名称的文件 databases.txt(自动排除系统库)。
第二条命令通过 --databases 参数指定备份 databases.txt 中的所有业务库,实现 “排除 mysql 系统库” 的效果。

2 停止 MySQL 服务并备份当前数据目录

# 1. 停止MySQL服务
sudo systemctl stop mysqld# 2. 备份当前数据目录(防止误操作,可选但推荐)
sudo mv /var/lib/mysql /var/lib/mysql_old_backup

在这里插入图片描述

3 创建新的空数据目录并初始化

  • 创建新的空数据目录
# 1. 创建新的数据目录
sudo mkdir /var/lib/mysql# 2. 设置目录权限(必须为mysql用户)
sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod -R 755 /var/lib/mysql
  • 初始化数据库
# 3. 初始化MySQL(生成全新的系统库,包括help_topic等表)
sudo mysqld --initialize --datadir=/var/lib/mysql --user=mysql

在这里插入图片描述

  • 获取初始化生成的临时 root 密码
sudo grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

4 启动 MySQL 并重置 root 密码

# 1. 启动MySQL服务
sudo systemctl start mysqld# 2. 用临时密码登录
mysql -u root -p
# 输入步骤2中记录的临时密码# 3. 修改root密码(替换为你的新密码)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
FLUSH PRIVILEGES;# 4. 退出MySQL
exit

在这里插入图片描述

5 恢复业务数据

# 恢复备份(输入新设置的root密码)
mysql -u root -p < all_business_data.sql

在这里插入图片描述

6 验证修复结果

# 1. 登录MySQL
mysql -u root -p# 2. 检查系统表help_topic是否存在
USE mysql;
DESCRIBE help_topic;  # 正常显示表结构即修复成功# 3. 检查业务数据是否恢复
USE 你的业务库名;
SHOW TABLES;  # 确认业务表已恢复
SELECT * FROM 你的业务表 LIMIT 1;  # 验证数据完整性

7 root用户开启远程连接

# 本地登录 MySQL(使用 root 账号)
mysql -u root -p
# 输入 root 密码后进入 MySQL 命令行# 切换到 mysql 系统库(存储用户权限信息)
USE mysql;-- 查询当前 root 用户的主机限制(默认是 localhost)
SELECT user, host FROM user WHERE user = 'root';-- 修改 root 用户允许从所有 IP 连接
UPDATE user SET host = '%' WHERE user = 'root' AND host = 'localhost';-- 刷新权限使修改生效
FLUSH PRIVILEGES;

在这里插入图片描述


http://www.dtcms.com/a/490903.html

相关文章:

  • 服务器数据恢复—RAID5硬盘掉线,热备盘未启用如何恢复raid5阵列数据?
  • 在 Linux 服务器上配置 SFTP 的完整指南(2025 最新安全实践)
  • pytorch 数据加载加速
  • 网站建设平台设备荣耀手机官网
  • 调用apisix admin 接口创建资源
  • 迅为RK3568开发板OpenHarmony系统南向驱动开发手册-pdf配置 rk3568_uart_config.hcs
  • 中兴通讯的网站建设分析wordpress安装后要删除哪些文件
  • 建设银行对账单查询网站简述电子商务网站开发的主要步骤
  • ARMA模型
  • 智慧园区:引领城市未来发展新趋势
  • python命名约定 私有变量 保护变量 公共变量
  • 气泡图 vs 散点图:什么时候加第三维?
  • 西安网站开发工程师wordpress+中文版
  • 网页设计网站源代码淘宝网站的建设目的
  • 分布式系统的幂等性设计:从理论到生产实践
  • Advanced Port Scanner,极速端口扫描利器
  • 字节面试题
  • 个人项目开发(2) 基于MFA实现的双重登录验证
  • 邢台做移动网站公司电话号码中国设计之家
  • 丹阳高铁站对面的规划打开这个网站你会回来感谢我的
  • 2025年--Lc194-516. 最长回文子序列(动态规划在字符串的应用,需要二刷)--Java版
  • [HTML]播放wav格式音频
  • IntentService 的应用场景和使用方式?
  • 【开题答辩实录分享】以《基于大数据技术的二手车交易数据分析与设计》为例进行答辩实录分享
  • 基础开发工具(上)
  • k8s lngress与安全机制
  • 大模型微调(一):有监督微调与困惑度
  • 网站建设步骤图片素材WordPress点击出现爱心
  • 《从零搭建现代 Android 模块化架构项目(2025 最新实践)》
  • 深圳燃气公司有哪些大型网站和小企业站优化思路