MySQL内存结构
實際上MySQL內存的組成和Oracle類似,也可以分為SGA(系統全局區)和PGA(程序緩存區)。
mysql>show variables like "%buffer%";
一、SGA
1.innodb_buffer_bool
用來緩存Innodb表的數據、索引、插入緩沖、數據字典等信息。
2.innodb_log_buffer
事務在內存中的緩沖,即red log buffer的大小
3.query cache
高速查詢緩存,在生產環境中建議關閉。
4.key_buffer_size
用于MyISAM存儲引擎,緩存MyISAM存儲。
引擎表的索引文件(區別于innodb_buffer_poll數據和索引緩存)
5.innodb_additional_mem_pool_size
用來緩存數據字典信息和其它內部數據結構的內存池的大小。MySQL5.7.4中該參數取消。
?
二、PGA
1.sort_buffer_size
主要用于SQL語句在內存中的臨時排序
2.join_buffer_size
表連接使用,用于BKA,MySQL5.6之后開始支持。
3.read_buffer_size
表順序掃描的緩存,只能應用于MyISAM表存儲引擎。
4.read_rnd_buffer_size
MySQL隨機讀緩沖區大小,用于做mrr,mrr是MySQL5.6之后才有的特性。
5.tmp_table_size
SQL語句在排序或分組時沒有用到索引,就會使用臨時表空間。
6.max_heap_table_size
管理heap,memory存儲引擎表。
?
?
?
?
轉載于:https://www.cnblogs.com/chinaops/p/9634298.html
總結
- 上一篇: 最近有啥好看的电影推荐下?
- 下一篇: 用Django内置form组件实现注册