Mysql数据库写入数据速度优化
2016-03-30 14:40
796 查看
Mysql数据库写入数据速度优化
1)innodb_flush_log_at_trx_commit 默认值为1;设置为0,可以提高写入速度。
值为0:提升写入速度,但是安全方面较差,mysql服务器宕机可能会造成数据丢失。
值为1:每一次事务提交或者事务外的指令都需要把日志写入硬盘,此过程消耗时间较长;
值为2:是每次操作不写入硬盘,而是写入系统缓存,日志仍然会每秒刷新硬盘;
2)innodb_autoextend_increment默认值为8M,调整为128M ;
此配置项作用主要是当tablespace 空间已经满了后,需要MySQL系统需要自动扩展多少空间,每次tablespace 扩展都会让各个SQL 处于等待状态。增加自动扩展Size可以减少tablespace自动扩展次数。
3)innodb_log_buffer_size默认值为1M,调整为16M ;
此配置项作用设定innodb 数据库引擎写日志缓存区;将此缓存段增大可以减少数据库写数据文件次数。
4)innodb_log_file_size默认值为 8M,调整为128M ;
此配置项作用设定innodb 数据库引擎UNDO日志的大小;从而减少数据库checkpoint操作。
5)bulk_insert_buffer_size默认值为8M,调整为100M;
作用于使用 MyISAM存储引擎,用来缓存批量插入数据的时候临时缓存写入数据。
innodb_flush_log_at_trx_commit、innodb_log_buffer_size和
innodb_log_file_size 需要谨慎调整;因为涉及MySQL本身的容灾处理。
1)innodb_flush_log_at_trx_commit 默认值为1;设置为0,可以提高写入速度。
值为0:提升写入速度,但是安全方面较差,mysql服务器宕机可能会造成数据丢失。
值为1:每一次事务提交或者事务外的指令都需要把日志写入硬盘,此过程消耗时间较长;
值为2:是每次操作不写入硬盘,而是写入系统缓存,日志仍然会每秒刷新硬盘;
2)innodb_autoextend_increment默认值为8M,调整为128M ;
此配置项作用主要是当tablespace 空间已经满了后,需要MySQL系统需要自动扩展多少空间,每次tablespace 扩展都会让各个SQL 处于等待状态。增加自动扩展Size可以减少tablespace自动扩展次数。
3)innodb_log_buffer_size默认值为1M,调整为16M ;
此配置项作用设定innodb 数据库引擎写日志缓存区;将此缓存段增大可以减少数据库写数据文件次数。
4)innodb_log_file_size默认值为 8M,调整为128M ;
此配置项作用设定innodb 数据库引擎UNDO日志的大小;从而减少数据库checkpoint操作。
5)bulk_insert_buffer_size默认值为8M,调整为100M;
作用于使用 MyISAM存储引擎,用来缓存批量插入数据的时候临时缓存写入数据。
innodb_flush_log_at_trx_commit、innodb_log_buffer_size和
innodb_log_file_size 需要谨慎调整;因为涉及MySQL本身的容灾处理。
相关文章推荐
- mysql数据导出excel格式+乱码解决
- MySQL集群搭建详解(三种结点分离)
- mysql-host is not allowed to connect mysql
- 在ibatis和mysql环境下使用insert如何获取返回值
- MySql 中IFNULL、ISNULL和NULLIF的区别
- MYSQL级联条件删除数据
- Mysql主从配置,实现读写分离
- Mysql取分组中前N条记录
- C#连接MySQL数据库
- MySQL同步故障:" Slave_SQL_Running:No" 两种解决办法
- mysql存储过程需要注意的
- mysql主从复制
- 解决mysql error:2014 Commands out of sync; you can't run this command now
- MySQL数据库主主
- Winform中打包本地Mysql数据库
- mysql函数总结
- mysql5.7.11解压版如何安装以及设置root密码
- 关于mysql解压缩版安装的问题
- 测试MySQL性能的几款工具
- 为MySQL选择合适的备份方式