暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
MySQL最佳优化完美攻略.pdf
1576
14页
29次
2021-03-25
5墨值下载
资源由 www.eimhe.com 美河学习在线收集分享
kider
1
目录
MYSQL 优化 ............................................................................................................ 1
1. 我们可以且应该优化什么? ................................................................................... 2
2. 优化硬件 ......................................................................................................... 2
3. 优化磁盘 ......................................................................................................... 2
4. 优化操作系统 ................................................................................................... 3
5. 选择应用编程接口 .............................................................................................. 3
6. 优化应用 ......................................................................................................... 3
7. 应该使用可移植的应用 ........................................................................................ 4
8. 如果你需要更快的速度 ........................................................................................ 4
9. 优化 MYSQLD .................................................................................................. 4
10. 编译和安装 MYSQL ......................................................................................... 5
11. 维护 ........................................................................................................... 5
12. 优化 SQL ..................................................................................................... 5
13. 不同 SQL 服务器的速度差别(以秒计) ................................................................ 6
14. 重要的 MYSQL 启动选项 ................................................................................... 7
15. 优化表 ........................................................................................................ 7
16. MYSQL 如何次存储数据 ................................................................................... 7
17. MYSQL 表类型 .............................................................................................. 8
18. MYSQL 行类型(专指 IASM/MYIASM 表) ............................................................ 8
19. MYSQL 缓存 ................................................................................................. 8
20. MYSQL 表高速缓存工作原理 .............................................................................. 9
21. MYSQL 扩展/优化-提供更快的速度 ...................................................................... 9
22. MYSQL 何时使用索引 .................................................................................... 10
23. MYSQL 何时不使用索引 ................................................................................. 10
24. 学会使用 EXPLAIN ....................................................................................... 10
25. 学会使用 SHOW PROCESSLIST ...................................................................... 11
26. 如何知晓 MYSQL 解决一条查询 ........................................................................ 11
27. MYSQL 非常不错 .......................................................................................... 11
28. MYSQL 应避免的事情 .................................................................................... 12
29. MYSQL 各种锁定 .......................................................................................... 12
30. MYSQL 更多信息以更好地解决问题的技巧 ........................................................ 12
31. 事务的例子 ................................................................................................. 13
32. 使用 REPLACE 的例子 ................................................................................... 13
33. 一般技巧 .................................................................................................... 13
34. 使用 MYSQL 3.23 的好处 ............................................................................... 14
35. 正在积极开发的重要功能 ................................................................................ 14
MySQL 优化
(本文是 Monty O'Reilly Open Source Convention 2000 大会上的演讲)
资源由 www.eimhe.com 美河学习在线收集分享
kider
2
1. 我们可以且应该优化什么
硬件
操作系统/软件库
SQL 服务器(设置和查询)
应用编程接口(API)
应用程序
2. 优化硬件
如果你需要庞大的数据库表(>2G),你应该考虑使用 64 位的硬件结构,像 AlphaSparc 或即将推
出的 IA64。因为 MySQL 内部使用大量 64 位的整数,64 位的 CPU 将提供更好的性能。
对大数据库,优化的次序一般是 RAM、快速硬盘、CPU 力。
更多的内存通过将最常用的键码页面存放在内存中可以加速键码的更新。
如果不使用事务安全(transaction-safe)的表或有大表并且想避免长文件检查,一台 UPS 就能够在电
源故障时让系统安全关闭。
对于数据库存放在一个专用服务器的系统,应该考虑 1G 的以太网。延迟与吞吐量同样重要。
3. 优化磁盘
为系统、程序和临时文件配备一个专用磁盘,如果确是进行很多修改工作,将更新日志和事务日志放
在专用磁盘上。
低寻道时间对数据库磁盘非常重要。对与大表,你可以估计你将需要:
log(行数)/log(索引块长度/3*2/(键码长度 + 数据指针长度))+1 次寻到才能找到一行
对于有 500000 行的表,索引 Mediun int 类型的列,需要:
log(500000) / log(1024/3*2/(3 + 2))+1=4 次寻道。
上述索引需要 500000*7*3/2=5.2M 的空间。实际上,多数块将被缓存,所以大概只需要 1-2
寻道。
然而对于写入(如上),你将需要 4 次寻道请求来找到在哪里存放新键码,而且一般要 2 次寻道来更
新索引并写入一行。
对于非常大的数据库,你的应用将受到磁盘寻道速度的限制,随着数据量的增加呈 N log N 数据级递
增。
将数据库和表分在不同的磁盘上。在 MySQL 中,你可以为此而使用符号链接。
条列磁盘(RAID 0)将提高读和写的吞吐量。带镜像的条列(RAID 0+1)将更安全并提高读取的吞吐量。
写入的吞吐量将有所降低。不要对临时文件或可以很容易地重建的数据所在的磁盘使用镜像或 RAID(除了
RAID 0)
Linux 上,在引导时对磁盘使用命令 hdparm -m16 -d1 以启用同时读写多个扇区和 DMA 功能。
这可以将响应时间提高 5~50%
Linux 上,用 async (默认) noatime 挂载磁盘(mount)。对于某些特定应用,可以对某些特定
表使用内存磁盘,但通常不需要。
of 14
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜