MySQL优化
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL优化,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1886字,纯文字阅读大概需要3分钟。
内容图文
导致宕机的原因:
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
内容总结
以上是互联网集市为您收集整理的MySQL优化全部内容,希望文章能够帮你解决MySQL优化所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。