升级到 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/