MySQL优化之硬件篇

内容分享7小时前发布
0 0 0

导致宕机的缘由:

1.运行环境: 35%,运行环境可以看做是支持数据库服务器运行的系统和资源集合,包括操作系统,硬盘以及网络

2.性能:35%

3.复制 20%

4.各种类型的数据库丢失或者损坏以及其他问题。 10%

导致宕机的事件排行

1.在运行环境的问题上,最普遍的问题就是空间耗尽

2.在性能问题上,最普遍的宕机缘由是运行很糟糕的SQL,还有服务器bug和错误的行为导致的

3.索引设计也是影响宕机的缘由

4.复制问题一般是由于主备数据不一致

5.数据丢失一般是由于误删除导致的。

如果你面试时候遇到面试题:MySQL数据库怎么优化,这时你应该从五个方面来回答:

1.硬件优化2.软件优化 3.SQL优化 4.架构优化 5. 流程制度化

今天着重讲一下硬件方面的优化:

一、服务器级别优化

百度公司的优化已经做的很好了,如果目前他们再去优化时候,就只能从硬件优化了

1.服务器选型

SUN小型机、DELL730xd、HPDL380、IBM3850、云服务等 DELLR710

2. CPU个数、内存大小

大内存,高IO,是现代基于web的数据库的必备 (百度的服务器内存 :96G —128个,2个实例 ,CPU 8到16颗)

3.磁盘:SAS、SSD、FIO卡

减小寻道时间、旋转时间、传输时间

ssd (高并发)>sas(线上普通业务)>sata (线下业务)

4. RAID卡电池,RAID级别

WriteBack, ReadAheadNone,Direct,NoWrite Cache if Bad BBU

RAID0 >raid10 >raid5>raid1

5.其他:网卡等(多块网卡)

二、操作系统级别优化

1. I/O调度策略

NOOP、CFQ、Deadline、Anticipatory

临时生效:echo “dadline” >
/sys/block/sda/queue/scheduler

永久生效:/etc/grub.conf中kernel后加elevator=deadline(需要重启)

2. SWAP使用策略

echo”vm.swappiness=10″>>/etc/sysctl.conf

https://www.percona.com/blog/2014/04/28/oom-relation-vm-swappiness0-new-kernel/

3.文件系统

ext3、ext4还是使用XFS 准确来说XFS要优于ext系列

4. 避免NUMA问题

numactl –interleave=all即是允许所有的处理器可以交叉访问所有的内存

5. /tmp分区

tmpfs /dev/shm tmpfs defaults 00

设置tmpdir=/tmp之后,某些习惯性把文件写到tmp下的人要改一改习惯了,由于这些文件占用的是内存不是磁盘,而且如果不重启的话是一直占用

6. CPU

关闭服务器的节能模式

查看kondemand进程运行情况:

ps -ef |grepkondemand

© 版权声明

相关文章

暂无评论

none
暂无评论...