- 3
- 0
- 约1.41万字
- 约 9页
- 2017-01-19 发布于重庆
- 举报
一個InnoDB性能超过Oracle的调优Case
一个InnoDB性能超过Oracle的调优Case
年前抽空到兄弟公司支援了一下Oracle迁移MySQL的测试,本想把MySQL调优到接近Oracle的性能即可,但经过 @何_登成 @淘宝丁奇 @淘宝褚霸 @淘伯松 诸位大牛的指导和帮助(排名不分先后,仅按第一次为此CASE而骚扰的时间排序),不断修正方案,最终获得了比Oracle更好的性能,虽然是个特殊场景,但是我觉得意义是很广泛的,值得参考,遂记录于此。所有涉及表结构和具体业务模型的部分全部略去,也请勿咨询,不能透露,敬请谅解。
一、测试模型:
包含12张业务表,每个事务包含12个SQL,每个SQL向一张表做INSERT,做完12个SQL即完成一个事务。
用一个C API编写的程序连接MySQL,不断执行如下操作
开始事务:START TRANSACTION;每张表插入一行:INSERT INTO xxx VALUES (val1,val2,…); #一共12次提交事务:COMMIT;
通过一个Shell脚本来启动32个测试程序并发测试
二、测试环境:
1. 机型:
R510CPU:Intel(R) Xeon(R) CPU E5645 @ 2.40GHz 双路24线程内存:6 * 8G 48G存储:FusionIO 320G MLC
R910CPU:Intel(R) Xeon(R) CPU E7530 @ 1.87GHz 四路48线程内存:32* 4G 128G存储:FusionIO 640G MLC
2. Linux配置:
单实例启动数据库:/boot/grub/menu.lst修改kernel启动参数增加numa=off多实例启动数据库:numactl –cpunodebind=$BIND_NO –localalloc $MYSQLD
RHEL 5.4 with 2.6.18内置内核RHEL 6.1 with 2.6.32淘宝版内核
fs.aio-max-nr = 1048576 #调整系统允许的最大异步IO队列长度vm.nr_hugepages = 18000 #大页页数vm.hugetlb_shm_group = 601 #允许使用大页的用户id,即mysql用户vm.swappiness = 0 #不倾向使用SWAP
3. FusionIO配置:
启动配置:/etc/modprobe.d/iomemory-vsl.confoptions iomemory-vsl use_workqueue=0 # 忽略Linux IO调度options iomemory-vsl disable-msi=0 # 开启MSI中断options iomemory-vsl use_large_pcie_rx_buffer=1 # 打开PCIE缓冲options iomemory-vsl preallocate_memory=SN号 # 预分配管理内存
格式化配置:fio-format -b 4K /dev/fct0 # 格式化设备为4K匹配NAND芯片页大小mkfs.xfs -f -i attr=2 -l lazy-count=1,sectsize=4096 -b size=4096 -d sectsize=4096 -L data /dev/fioa # 调整XFS与FusionIO 4K页匹配,比较激进,需要更多稳定性测试认为这组参数充分安全
mount配置:/dev/fioa on /data type xfs (rw,noatime,nodiratime,noikeep,nobarrier,allocsize=100M,attr2,largeio,inode64,swalloc) # FusionIO的逻辑Block是100M,所以设为100M的预扩展
4. MySQL版本和通用配置:
Percona 5.1.60-13.1 原版Percona 5.1.60-13.1 修改版* 允许自定义InnoDB AIO队列申请长度 (5.5_change_aio_io_limit.patch)Percona 5.5.19-24.0 原版* 允许innodb_flush_neighbor_pages=2来合并真正相邻的脏页合并* Group CommitPercona 5.5.18-23.0 修改版* 允许自定义InnoDB AIO队列申请长度 (5.5_change_aio_io_limit.patch)* 允许预先扩展数据文件 (5.5_innodb_extent_tablespace.patch,@淘宝丁奇 贡献)* Group Cimmit
innodb_buffer_pool_size=20Gsync_binlog=1
原创力文档

文档评论(0)