MySQLserver安装前后需要做哪些优化
本篇内容介绍了“MySQL server安装前后需要做哪些优化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
成都创新互联基于成都重庆香港及美国等地区分布式IDC机房数据中心构建的电信大带宽,联通大带宽,移动大带宽,多线BGP大带宽租用,是为众多客户提供专业德阳服务器托管报价,主机托管价格性价比高,为金融证券行业服务器托管,ai人工智能服务器托管提供bgp线路100M独享,G口带宽及机柜租用的专业成都idc公司。
一、硬件部分
1、建议单独跑MySQL server的服务器 使用ssd磁盘,提高磁盘的io
2、建议选择使用RAID 10 而非RAID 5 RAID 10 虽然浪费了一部分磁盘空间,但是比RAID5 的IO能力提高不少
二、OS部分
1、建议使用deadline/noop这两种I/O调度器,系统默认的为cfq
2、建议使用xfs文件系统、高并发情况下凸显出其性能优势
三、系统内核优化
1、将net.ipv4.tcp_tw_recycle设置为1
2、将net.ipv4.tcp_tw_reuse 设置为1
3、将以上两个参数开启,可快速减少在TIME-WAIT状态TCP连接数,提高TCP效率
4、将vm.dirty_background_ratio设置为5
5、将vm.dirty_ratio设置为10
vm.dirty_background_ratio:这个参数指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如5%)就会触发pdflush/flush/kdmflush等后台回写进程运行,将一定缓存的脏页异步地刷入外存
vm.dirty_ratio而这个参数则指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如10%),系统不得不开始处理缓存脏页(因为此时脏页数量已经比较多,为了避免数据丢失需要将一定脏页刷入外存);在此过程中很多应用进程可能会因为系统转而处理文件IO而阻塞。
6、将vm.swappiness设置为0 可以降低swapping的延迟(前提是确保机器不会出现内存不足的情况,若出现可能会被oom掉)
四、MySQL server参数优化
1、建议使用innodb存储引擎、MySQL5.5之后的默认存储引擎是innodb引擎,可满足95%以上用户需求
2、建议调整innodb_buffer_pool_size的大小,主要作用是缓存innodb表的索引,数据,插入数据时的缓冲默认为128M,如果是单独MySQL服务器,建议设置为物理内存的70%--80%左右。
并不是设置的越大越好。设置的过大,会导致system的swap空间被占用,导致操作系统变慢,从而减低sql查询的效率。
innodb的logfile就是事务日志,用来在 mysqlcrash后的恢复.所以设置合理的大小对于mysql的性能非常重要
3、建议设置innodb_log_files_in_group = 2
4、建议设置innodb_file_per_table = 1 使用单独表空间易维护
1. 如果使用软链接将大表分配到不同的分区上,易于管理数据文件
3. 易于修复和恢复损坏的数据
3.2 导出导入只针对单个表,而不是整个共享表空间
5. 对于大量的delete操作,更易于回收磁盘空间
7. 易于安全审计
有三个值:fdatasync(默认),O_DSYNC,O_DIRECT
为O_DSYNC时,innodb会使用O_SYNC方式打开和刷写redo log,使用fsync()刷写数据文件
在类unix操作系统中,文件的打开方式为O_DIRECT会最小化缓冲对io的影响,该文件的io是直接在用户空间的buffer上操作的,
并且io操作是同步的,因此不管是read()系统调用还是write()系统调用,数据都保证是从磁盘上读取的
5、建议设置binlog_format=row 默认为statement,强烈建议设置为row模式 记录每一条记录的修改,有利于主从同步
“MySQL server安装前后需要做哪些优化”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
分享名称:MySQLserver安装前后需要做哪些优化
转载源于:http://hbruida.cn/article/iigcoj.html