mysql innodb_flush_log_at_trx_commit

本文是关于innodb_flush_log_at_trx_commit的设置的内容,下面是详细介绍。

0:日志缓冲每秒一次地被写到日志文件,并且对日志文件做到磁盘操作的刷新,

但是在一个事务提交不做任何操作。

1:在每个事务提交时,日志缓冲被写到日志文件,对日志文件做到磁盘操作的

刷新。

2:在每个提交,日志缓冲被写到文件,但不对日志文件做到磁盘操作的刷新。

对日志文件每秒刷新一次。网易技术部 67

默认值是 1,也是最安全的设置,即每个事务提交的时候都会从 log buffer 写

到日志文件,而且会实际刷新磁盘,但是这样性能有一定的损失。如果可以容忍在数

据库崩溃的时候损失一部分数据,那么设置成 0 或者 2 都会有所改善。设置成 0,则

在数据库崩溃的时候会丢失那些没有被写入日志文件的事务,最多丢失 1 秒钟的事

务,这种方式是最不安全的,也是效率最高的。设置成 2 的时候,因为只是没有刷新

到磁盘,但是已经写入日志文件,所以只要操作系统没有崩溃,那么并没有丢失数据 ,

比设置成 0 更安全一些。

在 mysql 的手册中,为了确保事务的持久性和复制设置的耐受性、一致性,都是

建议将这个参数设置为 1 的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值