【问题标题】:mysqld service won't startmysqld 服务无法启动
【发布时间】:2018-05-22 13:32:43
【问题描述】:

在 Fedora 28 决定将 mysql-community 软件包升级到 8.0(最新)之后,我意识到我的应用程序失败了,不得不降级到 mysql 5.27.2

当然,我的 db 文件 (.idb) 是相同的(由 mysql 8.0 更改)。 启动mysql 5.27服务时,失败。我已阅读日志文件 /var/log/mysqld.log 并发现:

InnoDB:表标志在数据字典中为 0,但标志在 文件 ./ibdata1 为 0x4000!

【问题讨论】:

    标签: mysql innodb fedora-28


    【解决方案1】:

    此问题已解决删除所有数据库文件:

     sudo rm -rf /var/lib/mysql/*
    

    请注意,这样做会丢失服务器中的所有数据库!!! 就我而言,我有一个转储,我可以恢复。

    【讨论】:

    • 升级说明很清楚——不重新加载数据就不能回到5.7!
    • 您真的阅读了完整操作系统版本中更新的每个软件包的升级说明吗?
    • 您正在尝试降级:“不得不回滚到 mysql 5.27.2”。
    • 在 mac 上是否可以使用 Time Machine 来恢复 mysql 数据文件夹的内容? (这是一台开发机器而不是生产机器!只是一台普通的笔记本电脑而不是服务器)。
    • 哇。天才解决方案
    【解决方案2】:

    确保您使用的是 MySQL 8.0 版客户端以避免此错误

    RCA 1.你试图用mysqld_safe(ver5)而不是8.0版本来启动一个新版本的mysql服务器

    解决方案

    export MYSQL_8_HOME=/path/to/mysql-8.0.17-macos10.14-x86_64 #e.g /usr/local/mysql-8.0.17-macos10.14-x86_64
    cd $MYSQL_8_HOME # where is the dorectory mysql v8.0 was installed.
    bin/mysqld_safe --user=mysql --datadir=/path/to/data/mysql 
    

    只是为了增加措施,您可能会考虑更新您的 PATH 变量,以使用更新版本的 MySQL 程序作为前缀

    export PATH=$MYSQL_HOME/bin:$PATH
    

    在启动 mysqld_safe 之前

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-06
      • 1970-01-01
      • 2017-06-21
      • 2012-12-20
      • 2014-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多