Windows 下 MySQL sys 数据库误删恢复教程(mysql_upgrade 已废弃,新版适用)

目录

[一、新版 MySQL 修复机制](#一、新版 MySQL 修复机制)

二、恢复前准备

三、使用服务器强制修复

四、总结


在日常使用 MySQL 时,不少同学会不小心把系统自带的 sys 数据库删掉。删掉之后,虽然业务库一般还能用,但性能监控、部分管理工具会异常,看着也很闹心。

以前大家常用 mysql_upgrade 来修复,但从较新版本 MySQL(尤其是 8.0+)开始,官方已经明确提示:

The mysql_upgrade client is now deprecated.mysql_upgrade 客户端已被废弃,相关升级、修复逻辑现在由服务器自动完成。

下面在 Windows 上真正可用、符合新版 MySQL 规范的 sys 库恢复方法,全程亲测有效。


一、新版 MySQL 修复机制

从新版 MySQL 开始:

  • mysql_upgrade 已废弃,不再推荐使用
  • 升级 / 修复系统表、重建 sys 库的逻辑,由 mysqld 服务器自动执行
  • 启动时服务器会自动检查数据目录,自动修复系统表
  • 支持通过启动参数控制是否升级 / 修复

核心参数:

  • --upgrade=FORCE:强制执行升级 / 修复序列,用来重建 sys 库非常合适
  • --upgrade=NONE:不执行任何升级,避免意外修复
  • --upgrade=MINIMAL:仅最小启动,不跑升级,方便你手动排错

二、恢复前准备

  1. 备份数据目录默认路径一般是:

    复制代码
    C:\ProgramData\MySQL\MySQL Server 8.0\Data

    直接复制整个 Data 文件夹到其他盘备份。

  2. 停止 MySQL 服务以管理员身份打开 CMD 或 PowerShell:

    复制代码
    net stop MySQL80

    服务名如果不是 MySQL80,可以去「服务」里看一眼。

  3. 找到你的 mysqld.exe典型路径:

    复制代码
    C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe

三、使用服务器强制修复

直接用 mysqld 强制触发升级修复流程,它会自动重建 sys 库。

  • 管理员 CMD 进入 bin 目录:

    复制代码
    cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
  • 执行强制修复:

    复制代码
    mysqld --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data" --upgrade=FORCE
  • 等待命令执行完成屏幕输出一堆日志,没有报错、稳定停下就成功。

  • 启动 MySQL:

    复制代码
    net start MySQL80
  • 登录验证:

    复制代码
    SHOW DATABASES;

    能看到 sys 库就恢复成功了。


四、总结

在 Windows 上恢复误删的 sys 库:

  1. 优先用:mysqld --upgrade=FORCE 自动修复
  2. 全程不需要重装 MySQL,不会丢业务数据
  3. 操作前备份 Data 目录,永远不翻车

如果你用的是 MySQL 8.0.20+ 以上版本,直接按本文第一套方法走,基本一次成功。

相关推荐
唐青枫1 小时前
MySQL EXISTS 详解:存在性判断、NOT EXISTS 与实战示例
sql·mysql
2301_773643623 小时前
华为云存储实验
网络·mysql·华为云
quan26314 小时前
20260529,日常开发-数据库主从问题
java·mysql·主从·延迟
DIY源码阁7 小时前
JavaSwing宿舍管理系统 - MySQL版
java·数据库·mysql·eclipse
cfm_29147 小时前
MySQL8.0 InnoDB Cluster
数据库·mysql
夜微凉49 小时前
三、MySQL
android·数据库·mysql
暴躁小师兄数据学院9 小时前
【AI大数据工程师特训笔记】第11讲:正则表达式与正则函数
数据库·mysql
IT龟苓膏10 小时前
MySQL InnoDB 内存结构与性能调优:Buffer Pool、脏页、刷盘、临时表和 filesort 一篇讲清
数据库·mysql
加号310 小时前
【MySQL】 审计功能深度解析:从原理到落地实践
数据库·mysql
还是鼠鼠10 小时前
AI掘金头条新闻系统 (Toutiao News)-获取用户信息
后端·python·mysql·fastapi·web