MySql监控优化

MySQL监控

 

MySQL服务器硬件和OS(操作系统)调优:

 

1、有足够的物理内存,能将整个InnoDB文件加载到内存里 —— 如果访问的文件在内存里,而不是在磁盘上,InnoDB会快很多。

 

2、全力避免 Swap 操作 — 交换(swapping)是从磁盘读取数据,所以会很慢。

 

3、使用电池供电的RAM(Battery-Backed RAM)。

 

4、使用一个高级磁盘阵列 — 最好是 RAID10 或者更高。

 

5、避免使用RAID5 — 和校验需要确保完整性,开销很高。

 

6、将你的操作系统和数据分开,不仅仅是逻辑上要分开,物理上也要分开 — 操作系统的读写开销会影响数据库的性能。

 

7、将临时文件和复制日志与数据文件分开 — 后台的写操作影响数据库从磁盘文件的读写操作。

 

8、更多的磁盘空间等于更高的速度。

 

9、磁盘速度越快越好。

 

10、SAS优于SATA。

 

11、小磁盘的速度比大磁盘的更快,尤其是在 RAID 中。

 

12、使用电池供电的缓存 RAID(Battery-Backed Cache RAID)控制器。

 

13、避免使用软磁盘阵列。

 

14. 考虑使用固态IO卡(不是磁盘)来作为数据分区 — 几乎对所有量级数据,这种卡能够支持 2 GBps 的写操作。

 

15、在 Linux 系统上,设置 swappiness 的值为0 — 没有理由在数据库服务器上缓存文件,这种方式在Web服务器或桌面应用中用的更多。

 

16、尽可能使用 noatime 和 nodirtime 来挂载文件系统 — 没有必要为每次访问来更新文件的修改时间。

 

17、使用 XFS 文件系统 — 一个比ext3更快的、更小的文件系统,拥有更多的日志选项,同时,MySQL在ext3上存在双缓冲区的问题。

 

18、优化你的 XFS 文件系统日志和缓冲区参数 – -为了获取最大的性能基准。

 

19、在Linux系统中,使用 NOOP 或 DEADLINE IO 调度器 — CFQ 和 ANTICIPATORY 调度器已经被证明比 NOOP 和 DEADLINE 慢。

 

20、使用 64 位操作系统 — 有更多的内存能用于寻址和 MySQL 使用。

 

21、将不用的包和后台程序从服务器上删除 — 减少资源占用。

 

22、将使用 MySQL 的 host 和 MySQL自身的 host 都配置在一个 host 文件中 — 这样没有 DNS 查找。

 

23、永远不要强制杀死一个MySQL进程 — 你将损坏数据库,并运行备份。

 

24、让你的服务器只服务于MySQL — 后台处理程序和其他服务会占用数据库的 CPU 时间。

上一篇:HDU 4940 Destroy Transportation system(无源汇上下界网络流)


下一篇:2016 ACM/ICPC Asia Regional Qingdao Online HDU5878