Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Миграция данных из Oracle в Postgres

Avatar for CUSTIS CUSTIS
September 15, 2015

Миграция данных из Oracle в Postgres

Выступление Максима Трегубова, нашего ведущего системного администратора, на встрече сообщества #PostgreSQLRussia (15 сентября 2015 года, Москва).

Avatar for CUSTIS

CUSTIS

September 15, 2015
Tweet

More Decks by CUSTIS

Other Decks in Programming

Transcript

  1. 15 сентября 2015 года Миграция данных из Oracle в Postgres

    Максим Трегубов Ведущий системный администратор
  2. О себе  18 лет Oracle-бэкграунда (Dev + DBA) 

    Python (Shell + Web App)  *nix power user  Hadoop, MongoDB, Elasticsearch… 2/24
  3. Почему Postgres?  Три коммитера ядра в России  Сертификация

    ФСТЭК  Лицензия BSD  Существует компания Postgres Professional: http://postgrespro.ru 4/24
  4. Требования к инструменту миграции  Возможность воссоздания структуры данных (таблиц,

    индексов, constraints…)  Быстрота миграции данных (около 50 Гб)  Простота в освоении и надежность  …  Бесплатность 8/24
  5. Наш выбор – Ora2Pg  Богатый функционал  Активное развитие

    проекта на протяжении 15 лет  Open Source, лицензия GPLv3 9/24
  6. Подготовка тестового стенда  Создание или обновление стендов для разработки

    и тестирования  Oracle, WebLogic, WebSphere, Hadoop, Postgres  Более 100 серверов 10/24
  7. Подготовка тестового стенда VM1 Oracle 11.2.0.3 Oracle Enterprise Linux VM2

    Postgres 9.4 Oracle Client 11.2.0.3 Ora2Pg 15.2 CentOS 6.6 TCP 1521 13/24
  8. Конфигурация Ora2Pg  ora2pg --init_project tst_owner tst_owner/ ├── config ├──

    data ├── reports ├── schema │ ├── dblinks │ ├── directories … 15/24
  9. Конфигурация Ora2Pg  ./export_schema.sh  $psql -d qqq -U test_owner

    < schema/tables/table.sql  $ora2pg -t COPY -o data.sql -b ./data -c ./config/ora2pg.conf  $psql -d qqq -U test_owner < schema/tables/INDEXES_table.sql  $psql -d qqq -U test_owner < schema/tables/CONSTRAINTS_table.sql 19/24
  10. Итоги  Подтвердили возможность перехода  Не поменяли ни строчки

    кода в Java  Трудозатраты составили ~ 100 часов  Приложение без PL/SQL  Объем БД – 50 Гб  10 отчетов  35 таблиц 22/24