帮助我解决大脑信任问题,为什么我的MariaDB 10.2.27比缓冲区多使用4倍的驻留内存?
MariaDB [(none) 10.2.27]>SELECT MAX_USED_MEMORY_GB, INNODB_BUFFER FROM
(SELECT ROUND((@@key_buffer_size + @@query_cache_size + @@tmp_table_size + @@innodb_buffer_pool_size + @@innodb_log_buffer_size + @@max_connections *
(@@read_buffer_size + @@read_rnd_buffer_size + @@sort_buffer_size + @@join_buffer_size + @@binlog_cache_size + @@thread_stack + @@tmp_table_size))/power(1024,3),2) AS MAX_USED_MEMORY_GB)A,
(SELECT ROUND(SUM(@@key_buffer_size + @@query_cache_size + @@tmp_table_size + @@innodb_buffer_pool_size + @@innodb_log_buffer_size + @@max_connections)/power(1024,3),2) AS INNODB_BUFFER)B;
+--------------------+---------------+
| MAX_USED_MEMORY_GB | INNODB_BUFFER |
+--------------------+---------------+
| 33.15 | 3.13 |
+--------------------+---------------+
Memory on the box:
total used free shared buff/cache available
Mem: 565G 219G 4.2G 4.0G 341G 340G
Swap: 2.0G 833M 1.2G来自HTOP

发布于 2022-06-07 04:51:51
key_buffer_size仅由MyISAM使用,因此,在将表转换为InnoDB之后,将其设置为30米。tmp_table_size和max_heap_size很少发挥作用。也就是说,它们不必要地夸大了总数。query_cache_size应该是0 --这是一个正在消亡的旧设备。innodb_buffer_pool_size是最重要的设置,它应该是大约70%的可积内存。max_connections,但即使是这样也很少准确--通常太高,有时太低。等。
底线是没有一个好的内存使用公式。
https://dba.stackexchange.com/questions/313021
复制相似问题