MYSQL 8.0 - 不支持的重做日志格式

Ahm*_*abi 16 php mysql xampp phpmyadmin

我最近更新了位于我的xampp文件夹下的mysql,并且我从日志文件中报告了以下错误:

2018-04-19T12:59:19.667059Z 0 [System] [MY-010116] [Server] C:\xampp\mysql\bin\mysqld.exe (mysqld 8.0.11) starting as process 9324
2018-04-19T12:59:20.025280Z 1 [ERROR] [MY-013090] [InnoDB] InnoDB: Unsupported redo log format (0). The redo log was created before MySQL 5.7.9
2018-04-19T12:59:20.026140Z 1 [ERROR] [MY-012930] [InnoDB] InnoDB: Plugin initialization aborted with error Generic error.
2018-04-19T12:59:20.229069Z 1 [ERROR] [MY-011013] [Server] Failed to initialize DD Storage Engine.
2018-04-19T12:59:20.230803Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-04-19T12:59:20.231371Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-04-19T12:59:20.233136Z 0 [System] [MY-010910] [Server] C:\xampp\mysql\bin\mysqld.exe: Shutdown complete (mysqld 8.0.11)  MySQL Community Server - GPL.

我被告知如果更新你的mysql,你应该注释掉你的my.ini中不推荐的配置,但我不知道要注释掉什么,所以我把它保留原样.

知道是什么原因引起的吗?

Gar*_*een 24

如果您已经安装了MySQL并且没有使用

innodb_fast_shutdown

标记,只需转到您的MySQL目录

/var/lib/mysql/

并删除日志文件(如果在备份数据库之前需要数据库中的表数据,请不要这样做):

ib_logfile0 ib_logfile1

如果你再次需要它们,请先备份它们.

  • 当尝试将 MariaDB 数据库从 10.5 降级到 10.4 时,也会出现此问题。删除“ib_logfile0”的解决方案有效 - 然后运行“mysql_upgrade”恢复了对所有数据的访问(我只在我急于添加的玩具数据上测试了降级)。 (3认同)

Sol*_*eco 8

Docker 用户

我在使用 dockerized mariaDB 时遇到了同样的错误。

解决方案是:

删除泊坞窗图像:

docker image ls
docker rmi imagename
Run Code Online (Sandbox Code Playgroud)

删除卷:

docker volume ls
docker volume rm yourvolume
Run Code Online (Sandbox Code Playgroud)

移除容器:

docker ps -a
docker rm yourcontainer
Run Code Online (Sandbox Code Playgroud)

然后:

docker-compose up
Run Code Online (Sandbox Code Playgroud)

Windows 10 用户

同样在 Windows 中,如果您想按照之前的建议删除日志文件: ib_logfiles 位于

C:\ProgramData\MySQL\MySQL Server x.x\Data