|
table engine=memory съедают всю имеющеюся оперативную память
|
|||
---|---|---|---|
#18+
Имеется достаточно мощный сервер. 16 ядер 128 ГБ оперативной памяти База данных занимает 400 ГБ на жестком диске для ускорения некоторых запросов решено было использовать таблицы в памяти engine=memory Таблиц суммарно около 200 шт. общим объемом примерно на 10 ГБ вместе с индексами. Когда сайт работает в стандартном своем режиме, то использование памяти не превышает и половины 64 ГБ. Но когда создаются таблицы в памяти за один раз 200 штук то это съедает 15 ГБ оперативной памяти и составляет примерно 79 ГБ. если теперь сделать TRUNCATE или DROP таблиц в памяти то использование памяти не уменьшается. Логично было бы предположить что память выделенная для таблиц должна была освободиться, но к сожалению свободной памяти на сервере без таблиц столько же сколько после их удаления. Теперь возьмем и снова создадим эти же 200 таблиц повторно после предыдущего DROP. Mysql еще раз скушает 15 ГБ и общий занимаемый объем 79+15=94 ГБ. Если же теперь снова удалить ранее созданные таблицы и уже в третий раз создать их то занятая память на сервере будет 109 ГБ и сайт начинает притормаживать из за того, что некоторые данные потихоньку начинают залазить в swap. ну и последний раз запускаем удаление и создание и сайт уходит в даун. Подскажите в чем может быть причина не освобождения выделенной памяти для memory таблиц? Может командой какой-нибудь можно пересчитать используемую память и освободить ее? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 20:49 |
|
table engine=memory съедают всю имеющеюся оперативную память
|
|||
---|---|---|---|
#18+
devi409, Точная версия MySQL ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 21:54 |
|
table engine=memory съедают всю имеющеюся оперативную память
|
|||
---|---|---|---|
#18+
devi409, Чему равны параметры tmp_table_size и max_heap_table_size ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2019, 22:11 |
|
table engine=memory съедают всю имеющеюся оперативную память
|
|||
---|---|---|---|
#18+
Версия 5.7.28-31-log tmp_table_size=256МБ max_heap_table_size=256БМ Но эти параметры я специально переопределяю так как ошибка возникала что таблица полная. поэтому для одного подключения выполнял команды SET tmp_table_size=1024 * 1024 * 1024 SET max_heap_table_size =1024 * 1024 * 1024 получается что каждая по 1ГБ думаете в этом проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2019, 05:45 |
|
|
start [/forum/topic.php?fid=47&fpage=28&tid=1828854]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 310ms |
total: | 463ms |
0 / 0 |