простой вопрос, но он уже навязывал мне какое-то время...
что такое "накладные расходы" в MySQL, и я должен волноваться?
делает щелчок "оптимизировать таблицу" исправить это для реального?
простой вопрос, но он уже навязывал мне какое-то время...
что такое "накладные расходы" в MySQL, и я должен волноваться?
делает щелчок "оптимизировать таблицу" исправить это для реального?
Похоже, что накладные расходы - это временное дисковое пространство, которое база данных использовала для выполнения некоторых запросов, поэтому вы должны только беспокоиться, если это становится очень высоким.
Вы можете сравнить "Оптимизация таблицы" с дефрагментацией вашего жесткого диска.
Я цитирую:
Каждая база данных со временем, требуют некоторой поддерживать оптимальную производительность уровень. Очистка удаленных строк, переустановка, сжатие, управление индексные пути, дефрагментация и т.д. что называется OPTIMIZATION в mysql и другие термины в других базах данных. Например, IBM DB2/400 называет это РЕОРГАНИЗИРУЙТЕ ФИЗИЧЕСКИЙ ФАЙЛ.
Это похоже на изменение масла в ваш автомобиль или получить настройку. Вы можете думайте, что вам действительно не нужно, но так что ваш автомобиль работает намного лучше, вы получаете лучший пробег газа и т.д. Автомобиль что требует много пробега настраиваются чаще. База данных, которая требует особого использования. Если вы делаете много ОБНОВЛЕНИЯ и/или DELETE, и особенно если ваши таблицы имеют переменную длину столбцы (VARCHAR, TEXT и т.д.), вам нужно чтобы сохранить настройку.
Если вы говорите о том, что phpMyAdmin
вызывает overhead
, то это фактический размер файла данных таблицы относительно идеального размера того же файла данных (как если бы он был только что восстановлен из резервной копии).
По соображениям производительности MySQL
не сжимает файлы данных после удаления или обновления строк.
Это overhead
плохо для сканирования таблицы, i. е. когда ваш запрос должен работать над всеми значениями таблицы, ему нужно будет искать более пустое пространство.
Вы можете избавиться от overhead
, запустив OPTIMIZE TABLE
, который будет уплотнять вашу таблицу и индексы.
Накладные расходы Data_free таблицы, Количество выделенных, но неиспользуемых байтов. Мы можем найти его командой SQL SHOW TABLE STATUS. Это свободное пространство в выделенном размере для вашей таблицы.
Оптимизация таблицы может быть очень проблематичной. Например, если таблица сильно используется на сайте.
http://dev.mysql.com/doc/refman/5.1/en/optimize-table.html
После удаления большой части таблицы MyISAM или ARCHIVE или внесения большого количества изменений в таблицу MyISAM или ARCHIVE с строками переменной длины (таблицы с столбцами VARCHAR, VARBINARY, BLOB или TEXT). Удаленные строки сохраняются в связанном списке, а последующие операции INSERT повторно используют старые позиции строк. <
Я считаю, что подтвердил это поведение. И это действительно было бы очень полезно.