1 / 29
文档名称:

mysql性能优化.ppt

格式:ppt   大小:582KB   页数:29页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

mysql性能优化.ppt

上传人:回忆笑一笑 2021/10/5 文件大小:582 KB

下载得到文件列表

mysql性能优化.ppt

相关文档

文档介绍

文档介绍:MySQL优化
2021/3/10
1
MySQL优化方式
MySQL技巧分享
MySQL函数
目录索引
2021/3/10
2
MySQL优化方式
2021/3/10
3
系统优化:硬件、架构
服务优化
应用优化
MySQL优化方式
2021/3/10
4
使用好的硬件,更快的硬盘、大内存、多核CPU,专业的存储服务器(NAS、SAN)
设计合理架构,如果 MySQL 访问频繁,考虑 Master/Slave 读写分离;数据库分表、数据库切片(分布式),也考虑使用相应缓存服务帮助 MySQL 缓解访问压力
系统优化
2021/3/10
5
配置合理的MySQL服务器,尽量在应用本身达到一个MySQL最合理的使用
针对 MyISAM 或 InnoDB 不同引擎进行不同定制性配置
针对不同的应用情况进行合理配置
针对 进行配置,后面设置是针对内存为2G的服务器进行的合理设置
服务优化
MySQL配置原则
2021/3/10
6
服务优化
公共选项
选项
缺省值
推荐值
说明
max_connections
100
1024
MySQL服务器同时处理的数据库连接的最大数量
query_cache_size
0 (不打开)
16M
查询缓存区的最大长度,按照当前需求,一倍一倍增加,本选项比较重要
sort_buffer_size
512K
16M
每个线程的排序缓存大小,一般按照内存可以设置为2M以上,推荐是16M,该选项对排序order by,group by起作用
record_buffer
128K
16M
每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区,可以设置为2M以上
table_cache
64
512
为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。MySQL对每个唯一打开的表需要2个文件描述符。
2021/3/10
7
服务优化
MyISAM 选项
选项
缺省值
推荐值
说明
key_buffer_size
8M
256M
用来存放索引区块的缓存值, 建议128M以上,不要大于内存的30%
read_buffer_size
128K
16M
用来做MyISAM表全表扫描的缓冲大小. 为从数据表顺序读取数据的读操作保留的缓存区的长度
myisam_sort_buffer_size
16M
128M
设置,恢复,修改表的时候使用的缓冲大小,值不要设的太大
2021/3/10
8
服务优化
InnoDB 选项
选项
缺省值
推荐值
说明
innodb_buffer_pool_size
32M
1G
InnoDB使用一个缓冲池来保存索引和原始数据, 这里你设置越大,你在存取表里面数据时所需要的磁盘I/O越少,一般是内存的一半,不超过2G,否则系统会崩溃,这个参数非常重要
innodb_additional_mem_pool_size
2M
128M
InnoDB用来保存 metadata 信息, 如果内存是4G,最好本值超过200M
innodb_flush_log_at_trx_commit
1
0
0 代表日志只大约每秒写入日志文件并且日志文件刷新到磁盘; 1 为执行完没执行一条SQL马上commit; 2 代表日志写入日志文件在每次提交后,但是日志文件只有大约每秒才会刷新到磁盘上. 对速度影响比较大,同时也关系数据完整性
innodb_log_file_size
8M
256M
在日志组中每个日志文件的大小, 一般是innodb_buffer_pool_size的25%,官方推荐是 innodb_buffer_pool_size 的 40-50%, 设置大一点来避免在日志文件覆写上不必要的缓冲池刷新行为
innodb_log_buffer_size
128K
8M
用来缓冲日志数据的缓冲区的大小. 推荐是8M,官方推荐该值小于16M,最好是 1M-8M 之间
2021/3/10
9
设计合理的数据表结构
对数据表建立合适有效的数据库索引
数据查询:编写简洁高效的SQL语句
应用优化
应用优化方式
2021/3/10
10