Миграция базы данных Oracle в Postgresql для администраторов и разработчиков
Or_в_PGSQL

Задача курса - показать архитектурные особенности сервера Postgresql версии 15.2 и выше, его тонкую настройку с точки зрения сервера Oracle, отличие механизма хранения данных в Oracle от Postgresql, правила прозрачного переноса хранимых программных модулей из Oracle в Postgresql, разница между языком Postgres PLPGSQL и Oracle SQL. Также на примерах будет рассмотрен механизм взаимодействия базы данных Postgresql с базой данных Oracle с использованием встроенного языка программирования Python.

Группа от 4-х человек.

Документы об окончании обучения: Сертификат УЦ ЮНИТУдостоверение гос. образца о повышении квалификации (по требованию).

Аудитория

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

Предварительный уровень подготовки

Необходимая подготовка: основы операционной системы Linux, желательно знание базовой архитектуры сервера Oracle, основы языков программирования - Oracle PL/SQL, языка запросов SQL, Python, Java.

Результат обучения

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

Программа курса
  1. Postgresql и Oracle – интегрированные базы данных. Логическая и физическая компоновка баз данных. Процессы управления. Архитектура табличных пространств. Оптимальное использование памяти сервером. Основные конфигурационные файлы Postgresql, настройка логирования. Общая и рабочая области памяти, серверные процессы. Калькулятор настройки производительности сервера Postgresql.
  2. Утилиты разработчика и администратора для взаимодействия с базой данных Postgresql (psql, pgcli, dbevar, pgadmin). Сравнение с популярными в прошлом утилитами: sqlplus, SQLDeveloper, PLSQL Developer, Oracle EnterpriseManager.
  3. Типы данных данных Postgresql (обзор). Рациональное использование табличных пространств для размещения больших объектов. Слои хранения данных в табличных пространствах. TOAST файлы. Использование объектных и агрегатных типов для хранения данных. Порядок доступа к объектам базы данных, их размер, страничное хранение. Стандартные схемы и каталоги - введение в архитектуру словаря метаданных Postgresql - отличие от словаря Oracle. Два каталога словаря метаданных Postgresql. Разница между ролями Postgresql и пользователями и ролями Oracle.
  4. Расширения базы данных Postgresql для организации наблюдения за распределением памяти и процессом подготовки SQL запросов, страницы в разделяемой памяти, подключение дополнительных механизмов логирования приложений, подобные механизмы в Oracle были доступны через представления словаря метаданных.
  5. SELECT. Использование подзапросов во фразе From. Подзапросы. Коррелированные подзапросы. Древовидные структуры. Конструкции во фразе SELECT. (rollup, cube, case…). Аналитические функции в запросах. Вложенные таблицы в виде агрегатных типов данных. Работа со структурами записей, создание сложных типов данных - в сравнении Oracle и Postgresql. Массивы и особенности их хранения в TOAST файлах. Особенности хранения больших данных в Postgresql.
  6. Язык манипулирования данными DML. Команды копирования данных - вместо INSERT. Загрузка и выгрузка данных - по аналогии с утилитами импорта и экспорта в Oracle. Доступ из базы данных Postgresql к внешним данным, по аналогии с внешними таблицами в Oracle
  7. Оптимизация SQL запросов: Настройка производительности приложения. Разделяемый пул и рабочая область. Оптимизатор. Команда Analyze.  Организация и планирование сбора статистики по объектам. Вакуум. Ранжирование методов доступа. Анализ запросов с целью повышения скорости их выполнения. Команда Explain и алгоритмы её использования. Правила оптимизации запросов и их оценка. Практические примеры оптимизации,  Автоматический сбор статистики по таблицам и параметры конфигурации сервера. Отсутствие возможности в Postgresql управлением планом запросов с помощью подсказок (Oracle Hints), чем заменить?
  8. Язык DDL. Создание и изменение таблиц (DDL). Команда Create Table. Определение параметров хранения таблиц на физическом уровне. Структура записи в Postgresql, отличия. Отсутствие привязки к текущему времени (Oracle SCN), отсутствие ретроспективных запросов. Введение в WAL журналирование. Основные параметры WAL и VACUUM, контрольные точки и производительность, сравнение с параметром Oracle - fast_start_mttr_target 
  9. Транзакции. Конкуренция параллельность и согласованность. Транзакции и взаимовлияние. Наблюдение за активными запросами и сессиями в Postgresql.
  10. Создание временных транзакционных и сессионных таблиц. Использование временных таблиц (Postgresql) для эмуляции работы пакетных переменных (Oracle), использование CTE таблиц в запросах, создание структур данных в памяти, без хранения их на диске в Postgresql. Разница в использовании временных табличных пространств в Oracle и Postgresql.
  11.  Создание таблиц с разбивкой на партиции. Ссылочные партиционные таблицы. Примеры использования партиционных таблиц с различными типами разбивки. Индексные таблицы. Доступ к данным в индексных таблицах, проблемы обновления данных. Особенности размещения индексных таблиц в физических блоках дисковой памяти. Отсутствие отдельного функционала в Postgres и способы обхода.
  12.  Другие объекты. Представления. Материализованные представления данных в Postgresql. Принудительное обновление данных. Расширение DBLINK в Postgresql, создание соединений с другими базами данных Postgresql. Расширение plpython3u. Создание соединений из Postgres с Oracle c использованием языка Python - перенос данных из Oracle .
  13. Python в Postgresql позволяет взаимодействовать с любыми серверами, как SQL, так и NoSQL, серверами сообщений, LDAP и прочими - на примерах (Kafka, ActiveMQ). Взаимодействие сервера Postgresql с микросервисной архитектурой предприятия на примере Spring или JakartaEE приложения. Использование в Postgresql типа данных JSON.
  14. Особенности миграции PL/SQL модулей Oracle в Postgresql. Два языка программирования модулей - sql и plpgsql. Отсутствие пакетов в стандартной версии Postgresql, механизм обхода этой проблемы с помощью схем и временных транзакционных таблиц. Особенности размещения модулей в базе данных Postgresql - компиляция? Обработка исключительных ситуаций. Повторное возбуждение исключений. Перехват ошибок. Создание логера приложения с возможностью записи сообщений в отдельный файл операционной системы.
  15. Использование программных модулей в SQL запросах, транзакционные, волотильные и стабильные модули в сравнении с модулями Oracle, описанными прагмами. Модули, вложенные друг в друга, особенности повторной «компиляции» и определения пространства имён переменных в модулях. Переменные и курсорные ссылочные переменные - в сравнении.
  16. Тригеры объектные и системные.
Рекомендуемые курсы
Дополнительно

Курс читают тренер-практик с опытом проведения курсов и практическими знаниями в работе программы. 

Для получения более подробной информации о наших преподавателях свяжитесь с нами по тел. (343) 227-30-37, по эл.почте edu@unit-edu.ru или в нашем Online-чате.

Ближайшие курсы

PG_DBA1 10.08 - 11.08.2026

Администрирование PostgreSQL 16. Базовый курс

Стоимость обучения в группе

32 900 ₽

Стоимость индивидуального обучения

50 000 ₽

Длительность

3 дня (24 ак. ч.)

БТ10 10.08 - 12.08.2026

Аудит информационной безопасности

Стоимость обучения в группе

40 000 ₽

Стоимость индивидуального обучения

64 000 ₽

Длительность

3 дня (24 ак. ч.)

Primavera 10.08 - 12.08.2026

Управление проектами с использованием Oracle Primavera

Стоимость обучения в группе

35 000 ₽

Стоимость индивидуального обучения

64 900 ₽

Длительность

3 дня (24 ак. ч.)

PG_DBA2 10.08 - 13.08.2026

Администрирование PostgreSQL. Настройка и мониторинг

Стоимость обучения в группе

43 800 ₽

Стоимость индивидуального обучения

60 000 ₽

Длительность

4 дня (32 ак. ч.)

PG_DEV2 10.08 - 13.08.2026

Разработка серверной части приложений PostgreSQL 16. Расширенный курс

Стоимость обучения в группе

43 800 ₽

Стоимость индивидуального обучения

60 000 ₽

Длительность

4 дня (32 ак. часа)

Компас-СМ 10.08 - 13.08.2026

Компас 3D. Скоростное моделирование

Стоимость обучения в группе

44 000 ₽

Стоимость индивидуального обучения

57 200 ₽

Длительность

32 ак. ч. (4 дня)

JV_Advanced 10.08 - 14.08.2026

Язык программирования Java. Создание приложений для работы с базами данных - технологии ORM (Hibernate, TopLink)

Стоимость обучения в группе

122 600 ₽

Стоимость индивидуального обучения

140 000 ₽

Длительность

5 дней (40 ак. ч.)

20411 10.08 - 14.08.2026

Администрирование Windows Server 2012 R2

Стоимость обучения в группе

41 800 ₽

Стоимость индивидуального обучения

64 000 ₽

Длительность

5 дней (40 ак. ч.)

10964 10.08 - 14.08.2026

Мониторинг ЦОД с System Center Operations Manager

Стоимость обучения в группе

41 650 ₽

Стоимость индивидуального обучения

68 000 ₽

Длительность

5 дней (40 ак. ч.)

FBD-102 10.08 - 14.08.2026

Сетевое администрирование FreeBSD

Стоимость обучения в группе

40 650 ₽

Стоимость индивидуального обучения

61 050 ₽

Длительность

5 дней (40 ак. ч.)

PG_QPT 12.08 - 13.08.2026

PostgreSQL. Оптимизация запросов

Стоимость обучения в группе

28 600 ₽

Стоимость индивидуального обучения

42 400 ₽

Длительность

3 дня (24 ак. ч.)

PG_DBA3 17.08 - 18.08.2026

Администрирование PostgreSQL. Резервное копирование и репликация

Стоимость обучения в группе

28 600 ₽

Стоимость индивидуального обучения

42 400 ₽

Длительность

2 дня (16 ак. ч.)

55166 17.08 - 18.08.2026

Microsoft Excel 2016. Уровень 2

Стоимость обучения в группе

15 850 ₽

Стоимость индивидуального обучения

20 500 ₽

Длительность

2 дня (16 ак. ч.)

55167 17.08 - 18.08.2026

Microsoft Excel 2016. Уровень 3

Стоимость обучения в группе

17 600 ₽

Стоимость индивидуального обучения

20 900 ₽

Длительность

2 дня (16 ак. ч.)

ЗПДн 17.08 - 19.08.2026

Обеспечение безопасности персональных данных при обработке в информационных системах персональных данных

Стоимость обучения в группе

38 700 ₽

Стоимость индивидуального обучения

64 000 ₽

Длительность

3 дня (72 ак. ч.)

AC7 17.08 - 20.08.2026

AutoCAD Civil 3D. Проектирование генплана и вертикальной планировки

Стоимость обучения в группе

43 800 ₽

Стоимость индивидуального обучения

80 000 ₽

Длительность

4 дня (32 ак. ч.)

PGSQL_develop 17.08 - 21.08.2026

PostgreSQL для разработчиков: SQL, PL/PgSQL, Java

Стоимость обучения в группе

47 600 ₽

Стоимость индивидуального обучения

64 500 ₽

Длительность

5 дней (40 ак. ч.)

MPLS_nd 17.08 - 21.08.2026

Внедрение MPLS на сетевых устройствах Cisco

Стоимость обучения в группе

75 300 ₽

Стоимость индивидуального обучения

97 900 ₽

Длительность

40 ак. ч. (5 дней)

IIpSN 17.08 - 21.08.2026

Внедрение коммутируемых сетей на примере ведущих вендоров

Стоимость обучения в группе

72 500 ₽

Стоимость индивидуального обучения

94 000 ₽

Длительность

5 дней (40 ак. часов)

ОСТ-1_ю 17.08 - 21.08.2026

Основы сетевых технологий, I часть

Стоимость обучения в группе

76 500 ₽

Стоимость индивидуального обучения

99 000 ₽

Длительность

5 дней (40 ак. ч.)

20412 17.08 - 21.08.2026

Настройка дополнительных сервисов Windows Server 2012 R2

Стоимость обучения в группе

41 800 ₽

Стоимость индивидуального обучения

64 000 ₽

Длительность

5 дней (40 ак. ч.)

FBD-201 17.08 - 21.08.2026

Углубленное администрирование FreeBSD

Стоимость обучения в группе

41 360 ₽

Стоимость индивидуального обучения

61 050 ₽

Длительность

5 дней (40 ак. ч.)

55273 20.08 - 20.08.2026

Microsoft Word 2019. Уровень 2

Стоимость обучения в группе

7 930 ₽

Стоимость индивидуального обучения

17 270 ₽

Длительность

1 день (8 ак. ч.)

55274 21.08 - 21.08.2026

Microsoft Word 2019. Уровень 3

Стоимость обучения в группе

8 880 ₽

Стоимость индивидуального обучения

16 500 ₽

Длительность

1 день (8 ак. ч.)

132_1 24.08 - 25.08.2026

Макросы в Excel: практическое программирование. Уровень I.

Стоимость обучения в группе

27 500 ₽

Стоимость индивидуального обучения

42 500 ₽

Длительность

2 дня (16 ак. ч.)

Ansible 24.08 - 26.08.2026

Автоматизация с использованием Ansible: Базовый курс

Стоимость обучения в группе

39 050 ₽

Стоимость индивидуального обучения

50 800 ₽

Длительность

3 дня (24 ак. ч.)

БТ07 24.08 - 27.08.2026

Расследование инцидентов безопасности компьютерных систем

Стоимость обучения в группе

48 300 ₽

Стоимость индивидуального обучения

83 000 ₽

Длительность

4 дня (32 ак. ч.)

ROS-102 24.08 - 27.08.2026

Основы администрирования РЕД ОС

Стоимость обучения в группе

40 000 ₽

Стоимость индивидуального обучения

52 000 ₽

Длительность

4 дня (32 ак. часа)

20483 24.08 - 28.08.2026

Программирование на C#

Стоимость обучения в группе

44 440 ₽

Стоимость индивидуального обучения

74 850 ₽

Длительность

5 дней (40 ак. ч.)

Lin_Debian 24.08 - 28.08.2026

Системное администрирование Debian. Расширенные возможности

Стоимость обучения в группе

62 300 ₽

Стоимость индивидуального обучения

81 000 ₽

Длительность

5 дней (65 ак. часов)

РЕДОС-101 24.08 - 28.08.2026

Системное администрирование РЕД ОС

Стоимость обучения в группе

50 000 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

LPI-101 24.08 - 28.08.2026

Администрирование GNU/Linux

Стоимость обучения в группе

40 650 ₽

Стоимость индивидуального обучения

53 000 ₽

Длительность

5 дней (40 ак. ч.)

РЕДОС-102 31.08 - 04.08.2026

Сетевое администрирование РЕД ОС

Стоимость обучения в группе

50 000 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

ROS-101 31.08 - 01.09.2026

Основы работы в РЕД ОС

Стоимость обучения в группе

18 000 ₽

Стоимость индивидуального обучения

26 000 ₽

Длительность

2 дня (16 ак. часов)

IT-02 31.08 - 02.09.2026

Основы ITIL

Стоимость обучения в группе

35 000 ₽

Стоимость индивидуального обучения

66 550 ₽

Длительность

3 дня (24 ак. ч.)

20764 31.08 - 04.09.2026

Администрирование инфраструктуры базы данных SQL

Стоимость обучения в группе

44 400 ₽

Стоимость индивидуального обучения

71 850 ₽

Длительность

5 дней (40 ак. ч.)

БТ04 31.08 - 04.09.2026

Защита информации в компьютерных сетях

Стоимость обучения в группе

57 300 ₽

Стоимость индивидуального обучения

105 000 ₽

Длительность

5 дней (40 ак. ч.)

ICND 1 v3.0 31.08 - 04.09.2026

Использование сетевого оборудования Cisco (часть I) v3.0

Стоимость обучения в группе

66 500 ₽

Стоимость индивидуального обучения

93 500 ₽

Длительность

5 дней (40 ак. ч.)

VM2 v.8.0/7.0/6.5 31.08 - 04.09.2026

Продвинутый курс по оптимизации и решению проблем виртуальных сред VMware vSphere

Стоимость обучения в группе

85 400 ₽

Стоимость индивидуального обучения

126 500 ₽

Длительность

5 дней (40 ак. ч.)

Компас-МП 01.09 - 04.09.2026

Компас 3D. Курс методики проектирования

Стоимость обучения в группе

47 200 ₽

Стоимость индивидуального обучения

61 350 ₽

Длительность

32 ак. ч. (4 дня)

СПром_видео 02.09 - 04.09.2026

Установка и настройка систем промышленного видеонаблюдения. Базовый курс

Стоимость обучения в группе

50 800 ₽

Стоимость индивидуального обучения

72 200 ₽

Длительность

2 дня (20 ак. часов)

CMDB 03.09 - 04.09.2026

CMDB, управление конфигурациями и активами

Стоимость обучения в группе

21 600 ₽

Стоимость индивидуального обучения

30 250 ₽

Длительность

2 дня (16 ак. часов)