AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 789328
Accepted
A X
A X
Asked: 2016-07-13 02:21:55 +0800 CST2016-07-13 02:21:55 +0800 CST 2016-07-13 02:21:55 +0800 CST

致命错误:mysql.user 表已损坏。请运行 mysql_upgrade

  • 772

我调整了 Azure VM 的大小,现在在 VM 内的 Windows 中运行的 MySQL DB 已经死了。我在启动时看到以下致命错误。我尝试按照它的建议运行 mysql_upgrade ,但这只是错误提示它无法连接。有没有人对如何解决这个问题有任何想法?

2016-07-12T09:59:48.426367Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2016-07-12T09:59:48.426367Z 0 [Note] IPv6 is available.
2016-07-12T09:59:48.426367Z 0 [Note]   - '::' resolves to '::';
2016-07-12T09:59:48.426367Z 0 [Note] Server socket created on IP: '::'.
2016-07-12T09:59:48.426367Z 0 [Note] Shared memory setting up listener
2016-07-12T09:59:48.438315Z 0 [Note] InnoDB: Loading buffer pool(s) from C:\ProgramData\MySQL\MySQL Server 5.7\Data\ib_buffer_pool
2016-07-12T09:59:48.455584Z 0 [Note] InnoDB: Buffer pool(s) load completed at     160712  9:59:48
2016-07-12T09:59:48.455584Z 0 [ERROR] Fatal error: mysql.user table is     damaged. Please run mysql_upgrade.
2016-07-12T09:59:48.455584Z 0 [ERROR] Aborting
windows mysql database
  • 2 2 个回答
  • 10193 Views

2 个回答

  • Voted
  1. Best Answer
    Kruthika C S
    2017-08-30T19:03:27+08:002017-08-30T19:03:27+08:00

    终于解决了!这对我有用:/etc/init.d/mysqld start --skip-grant-tables && mysql_upgrade

    升级成功后,您可以这样做:/etc/init.d/mysqld restart 或者,您可以单独停止和启动 mysqld。

    我昨天在 Centos 6 上被锁定在 mysql 错误中。

    如果您在系统上安装了不同版本的 mysql,而系统上已经安装了另一个版本的 mysql,这确实可以节省您的时间。在这种情况下,很可能会出现不同类型的错误。

    --skip-grant-tables 可以派上用场,让您摆脱这种情况。如果您有一些安全问题,请检查此:有关如何使用此选项进行安全性的链接。

    有关 --skip-grant-tables 的更多详细信息: 这使任何人都可以在没有密码和所有权限的情况下进行连接,并禁用帐户管理语句,例如 ALTER USER 和 SET PASSWORD。资料来源:点击这里从官方 mysql 网站了解更多关于跳过授权的信息

    克鲁西卡

    • 10
  2. hexalys
    2022-08-29T07:29:45+08:002022-08-29T07:29:45+08:00

    mysql 升级文档没有完全提及的另一个标志是: --force.

    在我过去的升级中,一个失败的/mysql_upgrade -u root -p命令显示了这个通知:

    这个安装的 MySQL 已经升级了,如果你还需要运行 mysql_upgrade,使用 --force

    如果skip-grant-tables选项失败,就像我在 Mac OS X 上经常发生的那样......最后的手段是强制升级所有表:./mysql_upgrade -u root -p --force.

    除此之外ALTER TABLE或REPAIR TABLE之后,确保所有表都完全重建。

    • 0

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve