在批量更新数据的时候,mysqld.err中多次出现了:
130701 11:53:42 InnoDB: ERROR: the age of the last checkpoint is 2863227109,
InnoDB: which exceeds the log group capacity 566225511.
InnoDB: If you are using big BLOB or TEXT rows, you must set the
InnoDB: combined size of log files at least 10 times bigger than the
InnoDB: which exceeds the log group capacity 566225511.
InnoDB: If you are using big BLOB or TEXT rows, you must set the
InnoDB: combined size of log files at least 10 times bigger than the
查看show engine innodb status \G
---
LOG
---
Log sequence number 35 1084195310
Log flushed up to 35 1082093330
Last checkpoint at 34 2875247845
0 pending log writes, 0 pending chkp writes
175831373 log i/o's done, 5.55 log i/o's/second
LOG
---
Log sequence number 35 1084195310
Log flushed up to 35 1082093330
Last checkpoint at 34 2875247845
0 pending log writes, 0 pending chkp writes
175831373 log i/o's done, 5.55 log i/o's/second
发现Log flushed up跟Last checkpoint 确实相差比较大,在redo log 中的capacity变量,代表最后的checkpoint不能超过这个阀值;若超过这个阀值则需将innodb buffer pool 中的脏数据写回到磁盘。
只是偶尔出现一次这类告警,不调整my.cnf参数也可以;若经常出现这类告警,可以将innodb_log_file_size参数调大。
innodb_log_file_size 参数的调整需重启数据库,对于生产线的数据库需选择好重启的时机,调整时如下操作:
1.停止mysql;
2.修改my.cnf中的innodb_log_file_size参数的大小;
3.将ib_logfile* 的文件移至其他目录(在正常关闭的情况下可以直接删除,最好还是移至其他目录,若mysql正常启动后再删除也不迟);
4.启动mysql,检查启动是否正常。
相关推荐
当遇到"InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes"这样的错误时,通常意味着InnoDB的日志文件大小与MySQL配置文件中设置的大小不匹配。 InnoDB的日志文件通常以`ib_logfile0`和...
总的来说,`py_innodb_page_info`是MySQL数据库管理员和开发者的得力助手,它提供了深入理解InnoDB存储引擎内部运作的工具,使我们能够更好地调试问题、优化性能和设计更高效的数据模型。通过学习和使用这个工具,...
- `innodb_log_file_size`:每个重做日志文件的大小。 - `innodb_log_files_group`:用于指定日志组。 - `innodb_flush_log_at_trx_commit`:决定日志何时刷新到磁盘。 #### 5. 恢复和性能 InnoDB的重做日志对于...
当遇到"InnoDB Error ib_logfile0 of different size"错误时,意味着MySQL在启动时检测到当前的InnoDB日志文件(ib_logfile0和ib_logfile1)的大小与配置文件(my.cnf)中指定的大小不匹配,这可能导致数据库无法...
`innodb_log_file_size` - **描述**:定义每个日志文件的大小(以MB为单位),理想的数值为缓冲池大小的1/n。 - **应用场景**:根据系统负载情况调整日志文件大小,较大值可以减少刷新缓冲池的频率,但会延长崩溃后...
10. **学习与实践**:这本书籍结合`py_innodb_page_info`工具,为读者提供了深入理解InnoDB存储引擎的机会,有助于提升数据库管理技能和解决实际问题的能力。 总之,`py_innodb_page_info`工具是MySQL数据库管理员...
本篇文章将详细探讨如何利用这个参数来解决MySQL崩溃的问题,以及其背后的原理和潜在风险。 一、背景 在某次故障中,一台创业公司的服务器由于磁盘阵列损坏导致系统崩溃。在尝试重启MySQL服务时,遇到了InnoDB引擎...
innodb_data_file_path用来指定innodb tablespace文件,如果我们不在My.cnf文件中指定innodb_data_home_dir和innodb_data_file_path那么默认会在datadir目录下创建ibdata1 作为innodb tablespace。 说明 在测试环境...
在数据库管理领域,深入理解存储引擎的内部工作原理对于优化查询性能和解决数据问题至关重要。MySQL的InnoDB存储引擎是广泛使用的,它提供了事务处理、行级锁定以及外键支持。`py_innodb_page_info.py`是一个用...
利用MySQL性能监控工具如SHOW STATUS、SHOW VARIABLES、SHOW ENGINE INNODB STATUS等,监控InnoDB的运行状态,及时发现和解决问题。 总结,MySQL的InnoDB存储引擎在提供强大功能的同时,也带来了丰富的优化可能性...
5. **InnoDB日志文件问题**:InnoDB使用重做日志文件(`ib_logfile0`和`ib_logfile1`)进行事务持久化。如果这些文件损坏或无法访问,也可能导致启动失败。检查日志文件的状态。 6. **数据文件损坏**:`ibdata1`...
《深入解析MySQL Innodb页结构:py_innodb_page.tar.gz》 MySQL作为一个广泛使用的开源关系型数据库管理系统,其InnoDB存储引擎在处理事务、行级锁定等方面表现出色。InnoDB内部的数据存储机制是基于页(Page)的,...
首先,`innodb_flush_log_at_trx_commit` 参数是 InnoDB 存储引擎特有的,它控制着事务日志(redo log 和 undo log)何时以及如何被刷新到磁盘上的 ib_logfile 文件。此参数有三个可选值: 1. 当设置为 0 时,...
py_innodb_page_info工具为《INNODB存储引擎》作者姜承尧写的。 该工具用来分析表空间中的各页得类型和信息,用python编写。 网上多是python2版本的,这里给出python3版本的。
10. **innodb_log_file_size**:定义单个日志文件的大小,直接影响性能和恢复时间。增大此值可以提高性能,但也会增加故障恢复的复杂性。 11. **innodb_log_files_in_group**:此参数用于设置日志文件组的数量,...
file="ADMIN-PC-slow.log" long_query_time=10 lower_case_table_names=1 log-error="ADMIN-PC.err" secure-file-priv="c:/ProgramData/MySQL/MySQL Server 5.7/Uploads" user=mysql innodb_buffer_pool_size=2G ...