浅析mysql内存参数之-- binlog_cache_size

binlog_cache_size
0.前提:
服务器配置了 log-bin
1.含义:
为每个session 分配的内存,在事务过程中用来存储二进制日志的缓存。
2.作用:
提高记录bin-log的效率
3.属性:
参数:global
默认值:32768 -- 即 32K
范围:4096 .. 4294967295
4.大小选择:
a.根据业务:
没有什么大事务,dml也不是很频繁的情况下可以设置小一点,如果事务大而且多,dml操作也频繁,则可以适当的调大一点。
前者建议是1048576 --1M
后者建议是: 2097152 -- 4194304 即 2--4M
b.根据参数:
show global status like 'bin%';
上述语句我们可以得到当前 数据库binlog_cache_size的使用情况
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| Binlog_cache_disk_use | ???
| Binlog_cache_use | ?????
Binlog_cache_disk_use表示因为我们binlog_cache_size设计的内存不足导致缓存二进制日志用到了临时文件的次数
Binlog_cache_use 表示 用binlog_cache_size缓存的次数
当对应的Binlog_cache_disk_use 值比较大的时候 我们可以考虑适当的调高 binlog_cache_size 对应的值

4.注意点:
a.max_binlog_cache_size 表示的是binlog 能够使用的最大cache 内存大小
当我们执行多语句事务的时候 所有session的使用的内存超过max_binlog_cache_size的值时
就会报错:“Multi-statement transaction required more than 'max_binlog_cache_size' bytes ofstorage”
b.设置太大的话,会比较消耗内存资源;设置太小又会使用到临时文件即disk

5.配置
a.配置文件设置my.cnf
binlog_cache_size = 1M

b. set global binlog_cache_size = 1048576;


转自:http://blog.csdn.net/lxpbs8851/article/details/38455223

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值