数据库同步工具
sqlserver,Mysql数据同步软件

关于innodb引擎因为修改参数而不能启动数据库的解决方案

购买事宜请联系QQ:1793040

实验环境

系统版本

[root @ Mysql data]#cat/etc/issue

红帽企业Linux服务器版本6.3(圣地亚哥)

mysql版本

[root @ Mysql data]#mysql–version

mysql \适用于Linux(x86_64)的版本14.14 Distrib 5.5.19,使用 EditLine包装器

查看默认存储引擎

mysql>显示类似” default%”的变量;

+————————+——–+

| Variable_name \ |值\ |

+————————+——–+

| default_storage_engine | InnoDB | #默认存储引擎为Innodb

查看参数值

mysql>显示类似” innodb_log_file_size”的变量;

+———————-+———–+

| Variable_name \ |值\ |

+———————-+———–+

| innodb_log_file_size | 157286400 | # 150M

+———————-+———–+

设置1行(0.00秒)

目前,您可以在操作系统中查看日志文件的大小

[root @ Mysql data]#ll-h ib_logfile *

-rw-rw—-。 1个mysql mysql 150M Aug 30 01:36 ib_logfile0

-rw-rw—-。 1个mysql mysql 150M Aug 30 01:24 ib_logfile1

模拟错误:

假设由于调试修改了配置文件/etc/my.cnf

……………..

121 innodb_buffer_pool_size = 600M

122 innodb_additional_mem_pool_size = 2M

123#将.._ log_file_size设置为缓冲池大小的25%

124 innodb_log_file_size = 100M \ 此值将原来的 150M 更改为当前的> 100M

125 innodb_log_buffer_size = 10M

………………….

由于修改了此参数值,mysql无法上下移动

[root @ Mysql数据]#/etc/init.d/mysqld restart

关闭MySQL。成功! \ Nbsp;

启动MySQL。错误!服务器退出而不更新PID文件(/usr/local/mysql/data/Mysql.host.com.pid)。

此时检查/data目录中的err错误日志文件

[root @ Mysql数据]#vim Mysql.host.com.err

最后发现以下错误

40830 \ 1:36:55 InnoDB:缓冲池的完整初始化

InnoDB:错误:日志文件/usr/local/mysql/data/ib_logfile0的大小不同0 157286400字节

InnoDB:比.cnf文件中指定的0 104857600字节!

140830 \ 1:36:55 [ERROR]插件” InnoDB”初始化函数返回错误。

140830 \ 1:36:55 [ERROR]插件” InnoDB”注册为存储引擎失败。

140830 \ 1:36:55 [ERROR]未知/不受支持的存储引擎:InnoDB

140830 \ 1:36:55 [ERROR]正在中止

140830 \ 1:36:55 [注意]/usr/local/mysql/bin/mysqld:关闭完成

140830 01:36:55 mysqld_safe mysqld来自pid文件/usr/local/mysql/data/Mysql.host.com.pid已结束

此错误消息表示实际日志文件的大小与my.cnf中指定的大小不同。解决方案是删除原始日志文件*并重新启动mysql

删除

[root @ Mysql data]#rm-rf ib_logfile *

重新启动

[root @ Mysql数据]#/etc/init.d/mysqld restart

错误!找不到MySQL服务器PID文件!

正在启动MySQL…成功! \ Nbsp; 成功启动

而且我们看到日志文件的大小已更改为调整后的100M

[root @ Mysql data]#ll ib_logfile *-h

-rw-rw—-。 1个mysql mysql 100M 8月30日01:44 ib_logfile0

-rw-rw—-。 1个mysql mysql 100M 8月30日01:44 ib_logfile1

配置文件中有关于innodb的多个参数

[root @ Mysql data]#grep innodb_/etc/my.cnf

innodb_data_home_dir =/usr/本地/mysql/数据

innodb_data_file_path = ibdata1:10M:自动扩展

innodb_log_group_home_dir =/usr/本地/mysql/数据

innodb_buffer_pool_size = 600M

innodb_additional_mem_pool_size = 2M

innodb_log_file_size = 100M

innodb_log_buffer_size = 10M

#innodb_flush_log_at_trx_commit = 1

#innodb_lock_wait_timeout = 50

几乎所有其他参数都可以修改,然后只能直接重启mysql innodb_log_file_size 参数 修改后,必须删除原始日志文件才能重新启动,记住。

未经允许不得转载:数据库同步软件|Mysql数据同步软件|sqlserver数据库同步工具|异构同步 » 关于innodb引擎因为修改参数而不能启动数据库的解决方案

分享到:更多 ()

syncnavigator 8.6.2 企业版

联系我们联系我们