mysql - CentOs 6.9 Mysqld 启动失败(InnoDB Error : innodb_system data file './ibdata1' is of a different size)

标签 mysql linux centos vps

升级到 php 5.5(我知道它很旧)并将我的 phpMyAdmin 版本以及 MySQL 更新到 5.7,现在 MySQL 无法启动...

查看 mysqld 日志: 2018-03-16T16:35:54.553247Z 0 [错误] InnoDB:自动扩展的 innodb_system 数据文件 './ibdata1' 的大小与 .cnf 中指定的不同,为 640 页(四舍五入为 MB)文件:初始 768 页,最多 0(如果非零则相关)页面! 2018-03-16T16:35:54.553310Z 0 [错误] InnoDB:插件初始化中止,出现错误一般错误 2018-03-16T16:35:55.153859Z 0 [错误] 插件“InnoDB”初始化函数返回错误。 2018-03-16T16:35:55.153924Z 0 [错误] 插件“InnoDB”注册为存储引擎失败。 2018-03-16T16:35:55.153944Z 0 [错误] 无法初始化内置插件。 2018-03-16T16:35:55.153964Z 0 [错误] 中止

谁能告诉我为什么会发生这种情况。

最佳答案

配置文件/etc/my.cnf 包含一个 innodb_xxxx,它指的是一个大小为 768 页的自动扩展。这可以包括像

这样的参数

innodb_data_home_dir

innodb_data_file_path

完整的语法描述了这个值

file_name:file_size[:autoextend[:max:max_file_size]]

例子

innodb_data_file_path=/var/lib/mysql/ibdata1:768M:autoextend

如果您可以访问以前工作的 MySQL(例如您 friend 的另一台服务器),请登录 mysql 客户端并键入以下内容以查看运行配置

> SELECT @@GLOBAL.innodb_data_file_path;

+--------------------------------+
| @@GLOBAL.innodb_data_file_path |
+--------------------------------+
| ibdata1:10M:autoextend         |
+--------------------------------+

为什么会这样?

您现有的 innodb 存储文件小于 my.cnf 配置中指定的初始大小。

希望这能澄清问题。

关于mysql - CentOs 6.9 Mysqld 启动失败(InnoDB Error : innodb_system data file './ibdata1' is of a different size),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49326642/

相关文章:

mysql - 为什么 SELECT * FROM table WHERE value != '1' 不返回 NULL 字段?

linux - 使用linux系统调用 "read"读取文件的一个字符

java - 通过命令行与 iptables 交互

PHP file_get_contents 在 CentOS 上不起作用

mysql - 使用 IF … THEN … ELSE 在两个 SELECT 查询之间进行选择

mysql - 无法从 Windows GUI 工具连接到远程 Linux 服务器上的 MySql 数据库

mysql独特的两列错误

c# - 运行一个 C# 程序以在单声道中启动另一个 C# 程序

docker - 与其他任何主机操作系统相比,作为Docker主机的CentOS导致不同的容器行为

centos - 如何在非交互模式下重新构建 RPM (rpmrebuild)?