Экспорт из Oracle в SQL Server/mySQL

У меня есть база данных Oracle, которую мы скоро удалим. Но я хотел бы хранить некоторые данные где-то еще, так что если можно получить доступ, если требуется.

Есть ли стандартный / рекомендуемый способ сделать это? Думали ли вы экспортировать в XML, а затем XML в SQL Server... или это рекомендуется?

Спасибо,

2 ответа

XML не является хорошим протоколом передачи для перемещения больших объемов данных между RDBMS. Я бы предпочел использовать SSIS и таким образом загружать данные из Oracle. Или используйте инструмент массового экспорта Oracle. XML очень раздутый и лучше всего подходит для хранения неструктурированных данных или перемещения небольших объемов данных между неизвестными источниками.

Если вы не уверены в том, в какие rdbms вы хотите восстановить данные и не хотите создавать дамп структуры, вы можете сбросить их в файл на сервере oracle, используя внешнюю таблицу (тип oracle_datapump) в качестве.csv-файла. Это должно быть легко импортировать в любой rdbms.

Другой способ - хранить данные как операторы импорта (ANSI-)sql (которые, как и xml, довольно многословны, но хорошо сжимаются). Эти заявления могут быть легко отредактированы впоследствии.

Вы можете выгрузить ddl для структуры в текстовый файл, используя exp/imp или dbms_metadata.get_ddl('table', 'schema', 'user'), но вам придется многое изменить (Oracle-) ddl для адаптации к другим rdbms.

Другие вопросы по тегам