Mysql Innodb引擎优化(参数篇)(2)
来源:asp之家 发布时间:2010-05-02 19:57:00
2.关于日值方面:
innodb_log_file_size
作用:指定日值的大小
分配原则:几个日值成员大小加起来差不多和你的innodb_buffer_pool_size相等。上限为每个日值上限大小为4G.一般控制在几个LOG文件相加大小在2G以内为佳。具体情况还需要看你的事务大小,数据大小为依据。
说明:这个值分配的大小和数据库的写入速度,事务大小,异常重启后的恢复有很大的关系。
设置方法:
innodb_log_file_size=256M
innodb_log_files_in_group
作用:指定你有几个日值组。
分配原则: 一般我们可以用2-3个日值组。默认为两个。
设置方法:
innodb_log_files_in_group=3
innodb_log_buffer_size:
作用:事务在内存中的缓冲。
分配原则:控制在2-8M.这个值不用太多的。他里面的内存一般一秒钟写到磁盘一次。具体写入方式和你的事务提交方式有关。在Oracle等数据库了解这个,一般最大指定为3M比较合适。
参考:Innodb_os_log_written(show global status 可以拿到)
如果这个值增长过快,可以适当的增加innodb_log_buffer_size
另外如果你需要处理大理的TEXT,或是BLOB字段,可以考虑增加这个参数的值。
设置方法:
innodb_log_buffer_size=3M
innodb_flush_logs_at_trx_commit
作用:控制事务的提交方式
分配原则:这个参数只有3个值,0,1,2请确认一下自已能接受的级别。默认为1,主库请不要更改了。
性能更高的可以设置为0或是2,但会丢失一秒钟的事务。
说明:
这个参数的设置对Innodb的性能有很大的影响,所以在这里给多说明一下。
当这个值为1时:innodb 的事务LOG在每次提交后写入日值文件,并对日值做刷新到磁盘。这个可以做到不丢任何一个事务。
当这个值为2时:在每个提交,日志缓冲被写到文件,但不对日志文件做到磁盘操作的刷新,在对日志文件的刷新在值为2的情况也每秒发生一次。但需要注意的 是,由于进程调用方面的问题,并不能保证每秒100%的发生。从而在性能上是最快的。但操作系统崩溃或掉电才会删除最后一秒的事务。
当这个值为0时:日志缓冲每秒一次地被写到日志文件,并且对日志文件做到磁盘操作的刷新,但是在一个事务提交不做任何操作。mysqld进程的崩溃会删除崩溃前最后一秒的事务。
从以上分析,当这个值不为1时,可以取得较好的性能,但遇到异常会有损失,所以需要根据自已的情况去衡量。
设置方法:
innodb_flush_logs_at_trx_commit=1


猜你喜欢
- 当获取FileField数据时会出现编码问题在数据库里显示的是D:\python项目\wxmkczpy\uploadfile\QQ截图201
- 在项目中遇到后台数据还没有加载完毕,但是页面上调用了后台数据中的字段,这样就会报undefined。例如:一进入页面直接回显数据。我在cre
- 首先找到要下载的歌曲排行榜的链接,这里用的是:https://music.163.com/discover/toplist?id=37786
- python中xmltodict使用xml转换成OrderedDict代码 :import xmltodictfrom pprin
- 在使用Django2.0 并配置了mysql作为数据库时,启动报错:报错1:找不到mysqlclientdjango.core.except
- 问题: pydev使用wx库开发的过程中,import时碰到wx可以识别,但是其它很多函数和变量上面全部是红叉,即无法识别。 解决方法: 1
- 错误提示: Warning: session_start() [function.session-start]: Cannot send s
- 一、yield迭代器在python深度学习模型读取数据时,经常遇到yield,互联网搜索后,将比较容易理解的说明记录一下。二、使用步骤1.引
- 表空间概述Oracle的表空间属于Oracle中的存储结构,是一种用于存储数据库对象(如:数据文件)的逻辑空间,是Oracle中信息存储的最
- 昨天在做一道CTF题的时候碰到了一个图片异或的问题,操作大概如下:将一个图片读入,然后每字节进行异或操作,核心代码可简化为以下:#codin
- 有时候难免会要用到只读的文本框,可今天发现只读文本框有一个缺陷,当鼠标焦点在文本框里面的时候按回退键(backSpace), 会退回到前一个
- panic源码解读前言本文是在go version go1.13.15 darwin/amd64上进行的panic的作用panic能够改变程
- 本文讲述了Python基本语法。分享给大家供大家参考,具体如下:概述:这里主要讲述以下内容:① 缩进② 流程控制语句③ 表达式④ 函数⑤ 对
- 查看python内部模块命令,内置函数,查看python已经安装的模块命令可以用dir(modules)或者用 pip list或者用 he
- 在 Python 中,函数可以通过以下语法定义和使用:def function_name(parameter1, parameter2, .
- 概述在本文中,我们将以深度库即 Mediapipe为基础库,以及其他计算机视觉预处理的CV2库来制作手部地标检测模型。市场上有很多关于这种问
- 关于最近要在python下做可视化界面的设计,想到之前用QtDesigner来画界面很是方便,当时画完之后都要手动在终端输入 pyuic5
- 介绍asyncore库是python的一个标准库,提供了以异步的方式写入套接字服务的客户端和服务器的基础结构。操作网络的时候可以直接使用so
- 本文将带领大家由浅入深的去窥探一下,这个装饰器到底是何方神圣,看完本篇,装饰器就再也不是难点了.一、什么是装饰器网上有人是这么评价装饰器的,
- 我们在为大家整Python程序员面试试题中,发现了一些被面试官问到的最多的一些问题,以下就是本篇内容:Python是个非常受欢迎的编程语言,