Mysql innodb 写入数据最重要的参数

本文介绍了MySQL InnoDB存储引擎中对于写入性能至关重要的五个配置参数:innodb_buffer_pool_size、innodb_log_file_size、innodb_flush_log_at_trx_commit、innodb_flush_method和innodb_file_per_table,并详细解释了它们的作用及最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【Mysql innodb 写入数据最重要的参数】2010-12-10 16:38【Mysql innodb 写入数据最重要的参数】

要加快写入速度,又不丢失数据,这几个参数比较关键:

1. innodb_buffer_pool_size 这个参数包括查询、写入缓存等等设置,越大越好
2. innodb_log_file_size 这个是写入操作事务日志大小,如果设置的小,那么就会频繁的需要同步到物理数据,一般128M足够用,设置到256M也可以,也有设置为1024M的
3. innodb_flush_log_at_trx_commit 实务日志写入方式:0:每隔1秒写入一次 1:有commit命令就吸入 2:两种方法都是用,commit也写,每秒也写,建议设为0
4. innodb_flush_method 这个是使用什么方式写入数据,值有 Fdatasync、O_DSYNC、O_DIRECT,缺省是 Fdatasync。随机写(更新操作)用O_DIRECT更好,一般写使用 fdatasync就足够了。 fdatasync被认为是安全的,因为在MySQL总会调用fsync来flush数据。使用O_DSYNC是有些风险的,有些OS会忽略该参数O_SYNC。我们看到O_DIRECT和fdatasync和很类似,但是它会使用O_DIRECT来打开数据文件。有数据表明,如果是大量随机写入操作,O_DIRECT会提升效率。但是顺序写入和读取效率都会降低。所以使用O_DIRECT需要谨慎。
5. innodb_file_per_table 能够把每个表都拆成一个数据文件,能够生成多个文件操作fd,加快数据写入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值