数据库配置修改
数据库安装时,没有修改任何配置,全部为默认配置,网上查询解决方案:
1、sync_binlog和innodb_flush_log_at_trx_commit 两个参数,这两个参数是控制MySQL 磁盘写入策略以及数据安全性的关键参数
于是修改这两个参数值,注意这样设置重启后将会失效!!!!
set global sync_binlog=500;
set global innodb_flush_log_at_trx_commit=2;
2、innodb_buffer_pool_size 缓冲区配置,什么是 innodb_buffer_pool_size
MySQL 缓存表数据,索引数据的地方。增加它的值可以减少 磁盘 io ,提升 读写性能。
提升读的原理:因为 buffer_pool_size 设置的比较大, 很多表数据和索引已缓存到 buffer pool , 要查询的数据在缓存中找到了,就不需要访问磁盘了。读性能就得到了提升。
提升写的原理:因为 buffer_pool_size 设置的比较大, 写的数据,暂时以脏页的方式放在内存,然后慢慢落到磁盘,如果buffer_pool_size 太小就没办法缓存写操作,写一次访问一次磁盘 ,写入性能就比较慢。(实际自测增大buffer_pool_size后,并未带来纯写操作的性能提升, 这块有待进一步研究)
设置多大的 innodb_buffer_pool_size 合适? 通常将innodb_buffer_pool_size其配置为物理内存的50%到75%,在my.ini中设置,重启mysql:
结束语
最后再进行压力测试,性能提高到1秒左右了。