数据在不断变化,数据库性能随着数据量的变大而变低,在对数据库进行性能分析时,为保障数据库处于高性能状态下,有时改变InnoDB日志文件大小或数量,这个过程需要停止mysql服务,否则会造成数据丢失或mysql服务启动失败。在说明如何添加和调整innodb log文件之前,先来看看与日志有关的参数。

innodb_log_group_home_dir

在事务被提交并写入到表空间磁盘文件上之前,事务数据存储在InnoDB的redo日志文件里。这些日志位于innodb_log_group_home_dir变量定义的目录中,通常我们把这个目录设置与innodb_data_home_dir变量相同。为了获得最佳性能,建议分离innodb_data_home_dir和innodb_log_group_home_dir到单独的物理存储阵列上,这样可以保证IO资源不起冲突,利于服务器处理大量高并发连接。

innodb_log_file_size

这个选项决定着性能,要慎重设置。默认设置为5M,难以满足生产环境下的需求。日志文件在mysql实例第一次启动时初始化,该文件是旋转的,因此可以根据文件修改时间来判断日志文件的旋转频率,旋转频率太频繁,说明日志文件太小了,要扩大。

innodb_log_file_size设置大小通常视innodb_buffer_pool_size而定。影响日志文件性能的变量是innodb_log_buffer_size,确保有足够大的日志缓冲区来保存脏数据在被写入到日志文件之前。

对于比较小的innodb_buffer_pool_size,建议是设置一样大。 但是,对于比较大的innodb_buffer_pool_size,不建议这么设置,这会存在一个潜在的问题,那就是当mysql挂掉时,恢复数据需要很久,造成大量的停机时间。官方文档的建议设置是innodb_buffer_pool_size/innodb_log_files_in_group。

[warning]innodb_log_file_size是静态的变量,需要以“干净”的方式更改并重新启动,否则mysql启动不起来。[/warning]

innodb_log_buffer_size

该变量将数据存导入到内存中,可以减少大量的IO资源消耗。当事务提交时,保存脏数据,后续在刷新到磁盘。当我们调整innodb_buffer_pool_size大小时,innodb_log_buffer_size和innodb_log_file_size也应该做出相应的调整。

innodb_log_files_in_group

该变量控制日志文件数。默认值为2。日志是以顺序的方式写入。

[warning]innodb_log_files_in_group是静态的变量,需要以“干净”的方式更改并重新启动,否则mysql启动不起来。[/warning]

添加和调整innodb log文件步骤:

1. 停止mysql服务

# /etc/init.d/mysqld stop

1

# /etc/init.d/mysqld stop

[warning]一定要正常的关闭。[/warning]2. 根据innodb_log_group_home_dir变量进入到日志目录下

# cd /data/mysql_data

1

# cd /data/mysql_data

3. 备份旧的日志文件,以防不测便于回退

# mv ib_logfile* /backup/

1

# mv ib_logfile* /backup/

4. 按照要求调整日志文件大小或数量并写入到my.cnf文件中

innodb_log_file_size调整日志文件大小。

innodb_log_files_in_group调整日志文件数量。

innodb_log_group_home_dir调整日志文件位于目录。

5. 重新启动mysql服务

该过程将会按照新的日志配置来创建日志文件。同时,注意查看mysql错误日志,来监控是否出错。

就这么简单,下节来说说如果调整表空间。

如需转载请注明出处: http://www.ttlsa.com/html/2937.html

mysql innodb_log_group_home_dir_如何添加和调整mysql innodb log文件相关推荐

  1. mysql源码添加一个命令,MySQL ALTER命令

    MySQL ALTER命令 当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令. 开始本章教程前让我们先创建一张表,表名为:testalter_tbl. root@ho ...

  2. mysql file-pos_mysql-5.7 调整mysql的复制方式由master_log_file+master_log_pos 到gtid 详解

    一.祖传的master_log_file + master_log_pos的复制方式面临的问题: 在很久以前 那个时候我还没有出道,mysql就已经就有复制这个功能了.如果要告诉slave库从mast ...

  3. mysql innodb log_教你如何理解mysql中的innoDB log

    前言:之前一直弄不清楚mysql里面bin log和innodb log文件的区别,在脑子里面一直有个疑问binlog日志文件已经可以用来进行数据库的日志备份恢复了,怎么又多了一个redo log文件 ...

  4. mysql 批量导入sql_MySQL高效导入多个.sql文件方法详解

    MySQL有多种方法导入多个.sql文件(里面是sql语句),常用的有两个命令:mysql和source. 但是这两个命令的导入效率差别很大,具体请看最后的比较. (还有sqlimport和LOAD ...

  5. Linux里下载mysql显示红色_Linux下安装mysql

    到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic (g ...

  6. mysql 5.7 存储引擎_mysql5.7——innodb存储引擎总结

    一.innodb初探: 1.MySQL日志文件: ①:slow.log 文件会记录慢查询日志,当一条语句执行时间超过在配置参数long_query_time中指定的值时,这条语句就会被记录在这个文件中 ...

  7. mysql 表中添加唯一约束

    mysql表中添加唯一约束 在做权限系统中,有一张表叫用户角色关系表(user_role_relation),这张表中有user_id 和role_id(建表语句如下). CREATE TABLE u ...

  8. php mysql主从延迟_如何解决主从数据库同步延迟问题?php连接 mysql 数据库如何添加一个公共的配置文件50...

    在上一篇文章中,小编为您详细介绍了关于<图上属标注的什么样元器件?火车购票明明显示无座为什么样乘车后却发现有很多空座>相关知识.本篇中小编将再为您讲解标题如何解决主从数据库同步延迟问题?p ...

  9. 「mysql优化专题」详解引擎(InnoDB,MyISAM)的内存优化攻略?(9)

    注意:以下都是在MySQL目录下的my.ini文件中改写(技术文). 一.InnoDB内存优化 InnoDB用一块内存区域做I/O缓存池,该缓存池不仅用来缓存InnoDB的索引块,而且也用来缓存Inn ...

  10. mysql运维机制_《MySQL运维内参》节选 | InnoDB日志管理机制(一)

    引 子 InnoDB 存储引擎是支持事务ACID特性的,它是以二十多年前IBM的一篇著名文章<ARIES:A Transaction Recovery Method Supporting Fin ...

最新文章

  1. linear regression
  2. 使用scrollIntoView方法解决抛锚定位时网页往上跳的问题
  3. 洛谷 P2919 [USACO08NOV]守护农场Guarding the Farm
  4. 还是想继续写代码,不想这么快就去养猪~
  5. java 存储空间_Java中的存储空间类型
  6. mysql数据库重做日志文件_mysql数据库重做日志
  7. coffeescript html5,HTML5——前端预处理技术(Less、Sass、CoffeeScript)
  8. [翻译] TGLStackedViewController
  9. ajax分片上传,ajax异步实现文件分片上传
  10. C++学习笔记(十二):重载函数
  11. 全局角度出发讨论敏捷
  12. python处理识别图片验证码
  13. 微信小程序——实现时钟样式
  14. c语言a十六进制的地址,使用gdb调试c程序以显示十六进制地址
  15. 在python中读取.pgm格式图像
  16. Matlab龚珀兹曲线模型预测,第三章 趋势曲线模型预测法.ppt
  17. 直播弹幕互动游戏如何开播?
  18. R语言学习-----数据的载入
  19. 【建议收藏】一文了解FPC柔性电路板(5.29更新)
  20. 金融计量模型(三):工具变量法

热门文章

  1. 置换元素和非置换元素
  2. Google工程师多图详解Android架构
  3. 医学遗传学词汇英语术语英文(Glossary) 5
  4. generator.xml mysql_generatorConfig-mysql.xml中连接数据库的正确书写方式。
  5. mysql如何怎么进行单表的单条数据删除--根据id进行删除
  6. sequelize 连接2个数据库_Sequelize如何同步判断数据库连接及同步成功
  7. Android游戏SQL注入,关于Android contentprovider sql注入问题
  8. ai一个线段多个箭头_「平面设计」Illustrator(AI)基础教学-第2章 绘制简单的图形...
  9. python 相关系数矩阵可视化_python seaborn heatmap可视化相关性矩阵实例
  10. 属性篇(3)—If you love css …