Страница 1 из 1

Расчёт максимально потребной памяти для MySQL

Добавлено: 2009-11-17 13:00:11
Dmitriy_K
Возник вопрос определить максимально потребную память для MySQL.
Использовал рекомендуемую формулу расчёта:

Код: Выделить всё

SELECT ( @@key_buffer_size + @@query_cache_size + @@tmp_table_size + @@innodb_buffer_pool_size + @@innodb_additional_mem_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 ) ) / 1073741824 AS MAX_SQL_MEMORY_GB;
Получилось больше 3Гб.
Возникает следующий вопрос: этот объём памяти рассматривается системой как память одного процесса или как сумма памяти процессов в количестве max_connections? И как этот потребный объём памяти будет рассматриваться системой при установке многопоточности MySQL?
Если как память одного процесса, то придётся выставлять соответствующее значение в kern.maxdsiz в /boot/loader.conf

Буду очень признателен за подсказку.

Re: Расчёт максимально потребной памяти для MySQL

Добавлено: 2009-11-17 18:43:24
Gerk
Как память одного процесса, от многопоточности не зависит.
Подробности на той странице откуда Вы формулу взяли http://dev.mysql.com/doc/refman/5.0/en/memory-use.html
и в официальной доке по FreeBSD для девелоперов.

Re: Расчёт максимально потребной памяти для MySQL

Добавлено: 2009-11-17 18:45:54
LMik
Gerk писал(а):Как память одного процесса, от многопоточности не зависит.
Афтар имел ввиду "Все потоки работают в одной выделенной памяти"

Re: Расчёт максимально потребной памяти для MySQL

Добавлено: 2009-11-17 18:54:33
zg
Dmitriy_K писал(а):@@max_connections * (
это по всем коннектам

Re: Расчёт максимально потребной памяти для MySQL

Добавлено: 2009-11-17 21:30:55
Dmitriy_K
Большое спасибо за вправление имеющегося на место! :smile: