Миграция данных между двумя базами данных в Oracle 9i

StackOverflow https://stackoverflow.com/questions/1686328

  •  18-09-2019
  •  | 
  •  

Вопрос

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

Существуют ли какие-либо инструменты, которые могут помочь в сопоставлении элементов двух баз данных с правилами обработки дубликатов и значениями по умолчанию и переносом данных?

Спасибо,

Чак.

Это было полезно?

Решение

Если ваша цель — перенести данные между двумя очень разными схемами, вам, вероятно, понадобится решение ETL (ETL=Ээкстракт Тискупить лоад).

ETL позволит вам:

  • Выберите данные из исходной базы данных (баз данных) [Извлечение]
  • применить бизнес-логику к выбранным данным [Преобразовать] (обработать дубликаты, значения по умолчанию, сопоставить исходные таблицы/столбцы с целевыми таблицами/столбцами...)
  • вставьте данные в новую базу данных [Загрузить]

Большинство ETL также допускают некоторую автоматизацию и отчетность о нагрузках (плохие/отброшенные строки...).

ETL Oracle называется Oracle Warehouse Builder (OWB).Он включен в лицензию базы данных, и его можно загрузить с веб-сайта Oracle.Как и большинство продуктов Oracle, он мощный, но кривая обучения немного крутая.

Возможно, вы захотите изучить [ЭТЛ] раздел здесь, в SO, среди прочего:

Другие советы

Во многих случаях создание ссылки на базу данных и некоторых скриптов а-ля

insert into newtable select distinct foo, bar, 'defaultvalue' from oldtable@olddatabase where xxx

должен сделать свое дело

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top