mysql数据库优化视频_关于MySQL数据库配置优化的15条建议

e3d2f39199dcc1a70fdda2a3e1def408.png

概述

今天主要分享一下关于MySQL数据库在配置上的15条建议,仅供参考。

4a103c8333cd08aaeade4331b05a869a.png

Mysql 配置优化建议

1、使用 innodb_flush_method=O_DIRECT 来避免写的时候出现双缓冲区。

2、避免使用 O_DIRECT 和 EXT3 文件系统 — 这会把所有写入的东西序列化。

3、分配足够 innodb_buffer_pool_size ,来将整个InnoDB 文件加载到内存 — 减少从磁盘上读。

f7dedac0083ec516354325300241f18f.png

4、不要让 innodb_log_file_size 太大,这样能够更快,也有更多的磁盘空间 — 经常刷新有利降低发生故障时的恢复时间。

5、不要同时使用 innodb_thread_concurrency 和 thread_concurrency 变量 — 这两个值不能兼容。

6、为 max_connections 指定一个小的值 — 太多的连接将耗尽你的RAM,导致整个MySQL服务器被锁定。

7、保持 thread_cache 在一个相对较高的数值,大约是 16 — 防止打开连接时候速度下降。

8、使用 skip-name-resolve — 移除 DNS 查找。

d56fa1f21093ae1b80f173f00fa682ad.png

9、如果你的查询重复率比较高,并且你的数据不是经常改变,请使用查询缓存 — 但是,在经常改变的数据上使用查询缓存会对性能有负面影响。

10、增加 temp_table_size — 防止磁盘写。

11、增加 max_heap_table_size — 防止磁盘写。

12、不要将 sort_buffer_size 的值设置的太高 — 可能导致连接很快耗尽所有内存。

13、监控 key_read_requests 和 key_reads,以便确定 key_buffer 的值 — key 的读需求应该比 key_reads 的值更高,否则使用 key_buffer 就没有效率了。

8b36482c4efc69479b495c2ff468310e.png

14、设置 innodb_flush_log_at_trx_commit = 0 可以提高性能,但是保持默认值(1)的话,能保证数据的完整性,也能保证复制不会滞后。

15、有一个测试环境,便于测试你的配置,可以经常重启,不会影响生产环境。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值