Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Oracle > Размеры файлов БД


Автор: man2002ua 26.12.2002, 18:16
Есть база данных Оракла, к-я содержит довольно много *.DBF файлов, нек-е из которых имеют размеры от 2 до 8 Гб !! (autoextend я убрал когда увидел это чудо). В сумме БД занимает 65 Гб (из них якобы используется 50Гб). Но когда делаю полный export (exp.exe /all) общий архив получается всего 1 Гб.
Если ли возможность или утилиты, к-е помогут мне сократить размеры файлов или почистить их или удалить неиспользуемые?

Автор: AntonSaburov 27.12.2002, 01:04
В самом Оракле были какие-то утилитки сжатия. Надо поискать. А то, что база большая - это вполне может быть. Сами файлы не ужимаются. И если в начале данных было много, то потом их многие могли грохнуть и в файлах данных Оракла практически одни нули.

Автор: man2002ua 27.12.2002, 01:06
вспомни плиз, как называется ута утилитка...

Автор: AntonSaburov 27.12.2002, 01:49
Если мне память не изменяет - там есть две утилитки. Одна экспортирует данные, другая обратно импортирует (exp и imp). Такое перекидывание как раз и ужимает.

Можно еще через восстановление бэкапов как-то делать, но что-то у нас это никто не пробовал.

Автор: man2002ua 27.12.2002, 01:53
эти две утилитки я уже давно юзаю, только они место не ужимают.

Автор: Medved 28.12.2002, 10:52
Довольно распространенная проблема.... Не знаю как в 9i но в 8ке бывает такое частенько... Надо почистить журнал транзакций... Это делается стандартными средствами Oracle.

Автор: man2002ua 28.12.2002, 18:09
поподробнее если можно, после вчера меня на английскую доку Оракла что-то не тянет...

Автор: Rem 14.1.2003, 19:00
Цитата(man2002ua @ 26.12.2002, 10:16)
Если ли возможность или утилиты, к-е помогут мне сократить размеры файлов или почистить их или удалить неиспользуемые?

Изменить размер файла:

alter database datafile '<полный путь к файлу>' resize <размер>;

Удалить файл нельзя, можно удалить все табличное пространство, в которое он входит (при этом файлы с диска _не_ удаляются)

Относительно журнала транзакций - если БД работает в archivelog режиме, то после очередного полного бэкапа нужно просто удалять те архивые логи, которые было созданы до бэкапа. Если noarchivelog - ничего не нало удалять.

Автор: Divan 31.1.2003, 22:13
Проблема может решиться при помощи exp/imp.
Архивные журнальные файлы подчищать действительно только после полного "холодного" бакапа.
Цитата

Это делается стандартными средствами Oracle.

Никаких стандартных средств, обычное удаление файлов с жесткого диска.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)