- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MySQL服务器的linux性能优化和扩展技巧
MySQL 服务器的 linux 性能优化和扩展技巧
作者: Yoshinori Matsunbu
作者现在是 DeNA 公司的数据库和基础设施架构师。之前在 SUN 公司工作。他也是 HandlerSocket 的作者。这个是 MySQL
的 NoSQL 插件。
本文是根据他的 PPT 整理而成的,如有不正确敬请指教。
本文主要的内容有如下:
1. 内存和 SWAP 空间管理
2. 同步 I/O ,文件系统和I/O 调度
3. 有用的命令和工具:iostat, mpstat, oprofile, SystemTap, gdb
第一部分 :内存和 SWAP 空间管理
内存也就是随机访问内存
内存是最终要的硬件部件对于 RDBMS(relation database management system)。
内存的访问速度远远超过 HDD (普通硬盘)/SSD (固态硬盘)
内存: 60ns , 但是还没达到每秒 10W
HDD : 5ms
SSD : 100-500us
他们之间的关系为:
1s = 1000ms
1ms = 1000us
1us = 1000ns
所以 16GB-64GB 对于现在是非常合适的。(好像之前在人人的时候都是 72G )
热点应用的数据都需要缓存在内存中
当然最小化热点数据大小也是很重要的,主要有以下几种措施:
使用紧凑长度的数据类型(SMALLINT 来替代 VARCHAR/BIGINT, TIMESTAMP 来替代 DATETIME 等等)
不要创建无用的索引
删除不必要的数据或者将这些数据移到存档表中,来保证热点的表尽量的小
下面这个测试就是针对不同内存大小服务器的一个测试,测试数据在 20-25GB (200 个数据仓库,运行一小时),使用的
是 DBT-2 测试,这是一种密集写的测试,服务器的配置为 Nehalem 2.93 * 8 cores, MySQL 5.5.2, 4 RAID 1+0 HDDs
从上面这个表格中我们可以很明显看到巨大的差异当数据全部缓存到内存中。
内存大小会影响所有操作,不管是 SELECT ,还是INSERT/UPDATE/DELETE 操作。
INSERT :当往一个随机排序的索引中插入数据的时候会造成随机的读/写
UPDATE/DELETE : 当更改数据的时候会导致磁盘的读/写
还有一个 提高性能的 方法是使用 直接I/O (Direct I/O )
从上图中我们可以看到 Direct I/O 就是直接跳过了文件系统的 cache。
Direct I/O 对于完全利用内存是非常重要的。我们可以通过设置 innodb_flush_method=O_DIRECT 来运行。
注:文件I/O 必须是 512byte 为一个单位,同时 O_DIRECT 不能用在 InnoDB 日志文件,二进制日志文件,MyISAM 引擎,
PostgreSQL 数据文件等等。
不要分配 太多的内存
这个其实只要分配到足够其它应用程序使用,而不要最后导致系统没有内存可用。
上图中我们可以看到总共系统 32G 内存,而 Mysqld 已经使用了30G ,而系统居然还只有 150M 可用,这样是非常危险。
当系统没有内存可用时会发生什么事情呢?
减少文件系统缓存来分配内存空间,这个文件系统缓存就是上图中 cached 部分
替换掉一些进行来分配内存空间。也就是将一些内存空间移动到 SWAP
SWAP 是坏的
进程空间会写入到磁盘上(swap out ),而这些进程空间本应该是写入到内存中的。
当访问磁盘上的进程空间会导致磁盘读写(swap in )
同时会产生巨量的随机磁盘读写
那也许有些人会想到把swap 大小设置为 0 ,但是这样其实是非常危险的。
因为当内存和 SWAP 都不可用的时候的,OOM Kille (out of memory )就会被启用。OOM Kille 会杀掉任何进程来分配
内存空间。
最耗费内存的进程会被最先杀掉,在 mysql 服务器上这个一般是 mysqld 进程
mysqld 会被中止关闭,而在重启时候会进行崩溃修复。
OOM Kille 的策略是根据/proc/pid/oom_score 来进行倒序排列,也就是 oom_score 最大的会被第一个干掉
通常 mysqld 会拥有最高的值
您可能关注的文档
- 00年公务人员特种考试司法人员考试试题-公职王.PDF
- 00年教育部奖补助经费专责规划小组第1次-校务研究与管理处.PDF
- 01年公务人员特种考试原住民族考试试题-公职王.PDF
- 04年10000美容乙级技术士技能检定学科测试试题本试卷有选择.PDF
- 03年14600金银珠宝饰品加工乙级技术士技能检定学科测试试题.PDF
- 04年字音字形竞赛题库.PDF
- 03年公务人员特种考试身心障碍人员考试试题-保成网路书局.PDF
- 05年产後护理机构评监辅导作业.PDF
- 06学年技术校院四年制与专科学校二年制统一入学测验化工群.PDF
- 06学年技术校院四年制与专科学校二年制统一入学测验海事群专.PDF
- N2和CO在5A分子筛上吸附的气相色谱研究.PDF
- N80和P110钢在高温高压蒸汽中的耐蚀性腐蚀与防护.PDF
- Na2CONaCl二元共晶熔盐的热稳定性-中南大学学报.PDF
- MRI和MR扩散张量成像在肌萎缩侧索硬化症中的价值.PDF
- N1取代基结构对菲并咪唑荧光色纯度的影响.PDF
- NaOHNaAlOH4H2O三元溶液体系的比定压热容-中国有色金属学报.PDF
- NAStorage4600系列企业用网络附加存储器-Ingrasys.PDF
- NAS简易操作指导.PDF
- NdⅢ对Ni-Fe合金电沉积及镀层结构影响的研究-华侨大学学报.PDF
- Negishi试剂与铜或镍化合物促进含硅基六取代苯-天津大学期刊中心.PDF
最近下载
- 企业吸收合并协议.doc VIP
- 板框压滤机操作规程.doc VIP
- 义务教育版七年级全一册信息科技 第9课 数据传输有新意 教案(表格式).pdf VIP
- 爬山虎的脚PPT课件.pptx
- 康复辅助技术咨询师.pdf VIP
- 北京工业大学822信号与系统2022年真题及答案.pdf VIP
- 全国黄金交易从业水平考试《黄金市场基础知识与交易实务》复习全书【核心讲义+章节练习】.docx VIP
- 电饭煲UL认证零部件检验要求.pdf VIP
- 浙江省桐乡市2025年上半年公开招聘辅警试题含答案分析.docx VIP
- GB30871危险化学品企业位特殊作业安全规范知识考试复习题库(含答案).docx VIP
文档评论(0)