Forum Webscript.Ru
Общие => Базы данных => Тема начата: Foshvad от 04 Января 2002, 02:29:12
-
Надо было создать копию базы с другим именем. Сделал DAMP, загрузил в вновь созданную базу и
с удивлением обнаружл, что она стала занимать на 9% меньше....
Количество записей то же, индексы те же. От чего же это?
Я понимаю, что здесь простое объяснение, но какое? :)
-
Способ хранения, удаления, записи новой информации - это причина.
-
Все равно не понятно. Была база. Сделали ТОЧНУЮ копию. Почему же она размер изменила? Информацию ведь новую никто не записывал
-
Один из моих постингов:
--------------------
На сколько я понимаю, у разных баз своя структура хранения информации.
К примеру имеем таблицу из 1000 записей, потом 10 удаляем и вставляем новые 10.
Что происходит...
MySQL ничего не удаляет, он просто помечает записи как удаленные. При вставке новых он перезаписывает те записи, у которых пометка "удалены"
Postgres так же ничего не удаляет, а просто помечает как удаленные. При вставке новых он уже вставляет новые, т.е. таблица начинает содержать пустую информацию. Если я не ошибаюсь, это и есть вакуум.
Вообще это сложно, понять как там базы работают. Но такие фишки делаются для ускорения работы баз.
--------------------
Весь тред http://forum.ru-board.com/topic.cgi?forum=23&topic=0008#1
-
Foshvad
Этого же эффекта можно добиться командой
OPTIMIZE TABLE