vadimk
18.03.2013 - 21:40
Когда нужно проводить оптимизацию таблиц MySQL (OPTIMIZE TABLE)? (вручную или всегда после удаления/изменения записей?)
От чего зависит время, требуемое для оптимизации?
Valick
18.03.2013 - 21:53
vadimk, оптимизацию необходимо проводить на финальной стадии проектировки БД
удаление / изменение записей - это не повод для "секса"
_____________
Стимулятор ~yoomoney - 41001303250491
vadimk
18.03.2013 - 21:56
Цитата (Valick @ 18.03.2013 - 21:53) |
vadimk, оптимизацию необходимо проводить на финальной стадии проектировки БД удаление / изменение записей - это не повод для "секса" |
Имеется ввиду команда OPTIMIZE TABLE
Valick
18.03.2013 - 22:01
Команда OPTIMIZE TABLE должна использоваться после удаления большей части таблицы или если в таблице было внесено много изменений в строки переменной длины (таблицы, в которых есть столбцы VARCHAR, BLOB или TEXT). Удаленные записи поддерживаются при помощи связного списка, и последующие операции INSERT повторно используют позиции старых записей. Чтобы перераспределить неиспользуемое пространство и дефрагментировать файл данных, можно воспользоваться командой OPTIMIZE TABLE
_____________
Стимулятор ~yoomoney - 41001303250491
vadimk
18.03.2013 - 22:13
Цитата (Valick @ 18.03.2013 - 22:01) |
Команда OPTIMIZE TABLE должна использоваться после удаления большей части таблицы или если в таблице было внесено много изменений в строки переменной длины (таблицы, в которых есть столбцы VARCHAR, BLOB или TEXT). Удаленные записи поддерживаются при помощи связного списка, и последующие операции INSERT повторно используют позиции старых записей. Чтобы перераспределить неиспользуемое пространство и дефрагментировать файл данных, можно воспользоваться командой OPTIMIZE TABLE |
Можно ли команду выполнять после каждого удаления/изменения записи в таких таблицах? не будет ли она занимать много времени, если была изменена только 1 запись после последней оптимизации?
Вариант оптимизировать вручную при необходимости не подходит т.к. редактировать и удалять записи будет обычный пользователь через админку
Valick
18.03.2013 - 22:27
а вы мусор вместе с мусорным ведром выбрасываете? и каждый раз покупаете новое мусорное ведро?
Цитата |
не будет ли она занимать много времени |
зависит от размера таблицы, чем больше тем дольше, но на время оптимизации таблица будет заблокирована.
Цитата |
Можно ли команду выполнять после каждого удаления/изменения записи в таких таблицах? |
можно... но ненужно
если у вас запросы имеют адекватное время выполнения, то нефиг заморачиваться ...
Цитата |
Вариант оптимизировать вручную при необходимости не подходит |
сдается мне вы плохо представляете себе что такое оптимизация
_____________
Стимулятор ~yoomoney - 41001303250491
vadimk
18.03.2013 - 22:46
Цитата (Valick @ 18.03.2013 - 22:27) |
... |
Нужно ли предусматривать возможность автоматического запуска оптимизации таблиц и при каком условии?
а что, трудно сделать кнопку в админке и тыкать её раз в неделю, например?)
Valick
18.03.2013 - 22:48
vadimk, сколько записей в вашей БД? каково время выполнения самого медленного запроса?
_____________
Стимулятор ~yoomoney - 41001303250491
vadimk
18.03.2013 - 22:58
Цитата (Valick @ 18.03.2013 - 22:48) |
vadimk, сколько записей в вашей БД? каково время выполнения самого медленного запроса? |
16 тыс. записей. Проблем с временем выполнения пока не было
Valick
18.03.2013 - 23:16
vadimk, предлагаю дождаться проблем, а пока спать спокойно и не забивать голову
_____________
Стимулятор ~yoomoney - 41001303250491
vadimk
18.03.2013 - 23:29
Цитата (Valick @ 18.03.2013 - 23:16) |
vadimk, предлагаю дождаться проблем, а пока спать спокойно и не забивать голову |
Хорошо, спасибо за консультацию
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.