Каков наилучший способ архивирования данных в базе данных Oracle? - PullRequest
8 голосов
/ 11 ноября 2009

Я хотел бы найти лучший способ архивировать данные, которые больше не нужны, для повышения производительности приложения и экономии дискового пространства. По вашему опыту, как лучше всего это реализовать, какие инструменты я могу использовать? Для этой цели лучше разработать конкретное домашнее приложение?

Ответы [ 3 ]

2 голосов
/ 25 января 2016

Один из способов управления архивированием:

  1. Разделите ваши таблицы по диапазону дат, например, месячные разделы
  2. Когда разделы устаревают, например, через 36 месяцев эти разделы теперь можно перемещать в хранилище данных, которое может быть другой базой данных, содержащей только текстовые файлы, в зависимости от ваших потребностей в доступе.
  3. После перемещения устаревшие разделы можно удалить из вашей основной базы данных, поэтому всегда сохраняйте (например) 36 месяцев текущих данных.
  4. Все это можно автоматизировать с помощью набора сценариев SQL / Shell.
1 голос
/ 17 апреля 2014

Лучший способ архивировать старые данные в базе данных ORACLE:

  1. Определение политики архивирования и хранения на основе даты или размера.
  2. Экспорт архивируемых данных во внешнюю таблицу (табличное пространство) на основе определенной политики.
  3. Сожмите внешний стол и сохраните его на более дешевом носителе.
  4. Удалите заархивированные данные из вашей активной базы данных, используя SQL DELETE.
  5. Затем, чтобы очистить пространство, выполните следующие команды: изменить таблицу T_XYZ включить движение строк; изменить таблицу T_XYZ сжимать пространство;
  6. Если вы все еще хотите освободить часть дискового пространства обратно в ОС (поскольку Oracle теперь зарезервировал бы общее пространство, которое он ранее использовал), вам, возможно, придется изменить размер самого файла данных: SQL> изменить файл данных базы данных '/home/oracle/database/../XYZ.dbf' resize 1m;

Для получения более подробной информации, пожалуйста, обратитесь: http://stage10.oaug.org/file/sroaug080229081203621527.pdf

0 голосов
/ 12 ноября 2009

Я бы экспортировал данные в файл с разделителями-запятыми, чтобы их можно было экспортировать практически в любую базу данных. Поэтому, если вы поменяете версии Oracle или перейдете к чему-то еще через несколько лет, вы сможете восстановить его без особого беспокойства.

Используйте функцию файла спула в SQL * Plus, чтобы сделать это: http://cisnet.baruch.cuny.edu/holowczak/oracle/sqlplus/#savingoutput

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...