You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AzerothCore Docker安装报错:数据库提示崩溃后不支持升级

解决AzerothCore Docker安装中ac-database容器启动错误

错误原因

该错误源于MySQL容器此前以innodb_fast_shutdown=2模式异常关闭,导致redo日志未完成清理,且当前使用的MySQL版本与生成该redo日志的版本(8.0.29)不兼容,无法直接完成升级启动。

中文错误日志翻译

[错误] [MY-012526] [InnoDB] 在innodb_fast_shutdown = 2的情况下崩溃或关闭后,不支持升级。此重做日志由MySQL 8.0.29创建,且在逻辑上不为空。
[错误] [MY-012930] [InnoDB] 插件初始化因通用错误中止。
[错误] [MY-010020] [服务器] 无法初始化DD存储引擎。
[错误] [MY-010020] [服务器] 数据字典初始化失败。
[错误] [MY-010119] [服务器] 正在中止。

解决方案

方案1:清理旧数据卷(适合全新安装场景)

如果是首次部署、无已有数据需要保留,直接删除数据库数据卷重建即可:

  • 停止并删除故障容器:docker-compose stop ac-database && docker-compose rm -f ac-database
  • 查看并定位数据库数据卷:docker volume ls(通常名称类似azerothcore_ac-db-data)
  • 删除目标数据卷:docker volume rm <你的数据库卷名>
  • 重新启动容器:docker-compose up -d ac-database

方案2:修复现有数据库(适合需保留数据场景)

需要用生成redo日志的MySQL版本(8.0.29)启动容器,完成正常关闭后再切换回原版本:

  • 修改docker-compose.yml中ac-database服务的镜像版本为mysql:8.0.29
  • 启动容器并等待正常运行:docker-compose up -d ac-database
  • 正常停止容器(避免强制终止):docker-compose stop ac-database
  • 将镜像版本改回原配置,重新启动容器

预防措施

  • 避免强制终止数据库容器,优先使用docker-compose stop命令停止服务
  • 在docker-compose.yml的ac-database服务中添加配置,降低异常关闭风险:
    services:
      ac-database:
        # 其他原有配置
        command: --innodb-fast-shutdown=1
    

内容的提问来源于stack exchange,提问作者Francesco Borzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 18:12:22