Как уменьшить время завершения работы СУБД MySQL при использовании InnoDB |
[исправить] |
Иногда для завершения работы MySQL сервера с таблицами в формате InnoDB
требуется слишком много времени,
из-за необходимости сброса всех буферов. Если процесс завершить принудительно,
то данные не потеряются,
но при следующем запуске будет инициирован значительно более долгий процесс
восстановления из лога транзакций.
Один из способов минимизировать время завершения сервера, за какое-то время
перед выключением MySQL
включить функцию предварительного сброса буферов:
mysql> set global innodb_max_dirty_pages_pct = 0;
Далее периодически смотрим объем не сброшенных буферов:
$ mysqladmin ext -i10 | grep dirty
| Innodb_buffer_pool_pages_dirty | 1823484 |
...
| Innodb_buffer_pool_pages_dirty | 1821293 |
...
| Innodb_buffer_pool_pages_dirty | 1818938 |
Дожидаемся когда значение Innodb_buffer_pool_pages_dirty приблизится к нулю и
выполняем процесс завершения работы,
сведя время простоя сервера к минимуму.
|
|
|
|
Раздел: Корень / Программисту и web-разработчику / SQL и базы данных / MySQL специфика / Оптимизация и администрирование MySQL |
1.2, Аноним (-), 14:43, 17/04/2009 [ответить]
| +/– |
любопытно ... вместо завершения работы и ожидания сброса буферов предлагается вручную толкать мускул на сброс буферов, так же ждать пока он доделает эту операцию, а потом завершать работу демона.
и в чем логика?
| |
|
2.3, Heckfy (ok), 15:07, 17/04/2009 [^] [^^] [^^^] [ответить]
| +/– |
Если спешки с перезагрузкой не намечалось, просто сделаешь ее тогда, когда система будет к этому готова.
| |
2.4, uldus (ok), 15:53, 17/04/2009 [^] [^^] [^^^] [ответить]
| +/– |
Логика в сохранении работы базы лишние минуты, зачем сбрасывать буферы когда сервер отключен, когда это можно сделать не прерывая работу клиентов ?
| |
|
1.5, pavlinux (ok), 03:19, 20/04/2009 [ответить]
| +/– |
Чё париться
echo b > /proc/sysrq-trigger - моментальный сброс кэша.
| |
|
2.6, тигар (?), 14:55, 20/04/2009 [^] [^^] [^^^] [ответить]
| +/– |
[tiger@notebook]~%echo b > /proc/sysrq-trigger
/proc/sysrq-trigger: No such file or directory.
so sad!11 а гдеже моментальный сброс?!:-(
по теме: на лоре возможно подобный йумар кого-либо мог развеселить, предлагай уж нормальные решения, да?
| |
|
|