mysql 缓冲池 设置 多大

mysql 缓冲池 设置 多大,第1张

innodb_buffer_pool_instances 参数,将 buffer pool 分成几个区,每个区用独立的锁保护,这样就减少了访问 buffer pool 时需要上锁的粒度,以提高性能。准备一个空数据库,在这里我们将 performance_schema_events_waits_history_long_size 调大,是为了让之后实验数据能采集的更多,在此不多做介绍。使用 sysbench,准备一些数据,

对数据进行预热 60s,可以看到预热期间的性能会不太稳定,预热后会比较稳定,

设置 performance_schema,这次我们将仅开启观察项(生产者)hash_table_locks,并开启 waits 相关收集端(消费者)。(相关介绍参看 实验 03)

为什么我们知道观察项应该选择 hash_table_locks?在 performance_schema.setup_instruments 表中,列出了所有观察项,但我们很难从中选出我们应观察哪个观察项。这时候,可以将所有观察项都启用,然后设计一些对比实验,比如使用几种不同的 SQL,观察这些 *** 作影响了哪些观察项,找到共性或者区。还有一种高效的方式是搜索别人的经验,或者阅读 MySQL 源码。本例中 hash_table_locks 隐藏的比较深,使用了阅读 MySQL 源码和对比试验结合的方法。

[wampmysqld]

port= 3306

socket = /tmp/mysql.sock

key_buffer_size = 16M // 改这里

max_allowed_packet = 1M

sort_buffer_size = 512K

net_buffer_length = 8K

read_buffer_size = 256K

read_rnd_buffer_size = 512K

myisam_sort_buffer_size = 8M


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6095048.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存