Вы хорошо знакомы с Microsoft SQL Server? В этом случае вы можете использовать Управляемый экземпляр SQL Azure для перепроектирования базы данных. Преимущества этого варианта:
Встроенные возможности обеспечения непрерывности бизнес-процессов и аварийного восстановления.
Взаимодействие с Помощником по миграции SQL Server для Oracle (SSMA). Это средство позволяет легко преобразовывать объекты Oracle и переносить данные в Управляемый экземпляр SQL.
Архитектура
Рабочий процесс
Используйте SSMA для преобразования схемы Oracle в схему SQL.
Перенесите новую схему в Управляемый экземпляр SQL Azure.
Подключите Управляемый экземпляр SQL к Базе данных SQL Azure.
Компоненты
Управляемый экземпляр SQL Azure представляет собой интеллектуальную масштабируемую облачную службу базы данных, которая сочетает в себе широкую совместимость с ядром SQL Server и все преимущества полностью управляемой и актуальной платформы в формате PaaS.
Azure SQL обеспечивает единый интерфейс со всеми решениями на базе SQL и полный спектр вариантов развертывания.
Виртуальная сеть Azure — это частная сеть в среде Azure.
Развертывание этого сценария
Оценка базы данных Oracle
Используйте набор средств оценки и планирования Майкрософт (MAP) для оценки существующей базы данных и схем Oracle. Дополнительные сведения см. в руководстве по миграции Oracle в SQL Server.
Результаты преобразования объектов Oracle
Скачайте SSMA и используйте это средство для переноса данных и схемы Oracle: Помощник по миграции Microsoft SQL Server для Oracle.
В этой таблице показаны результаты преобразования объектов Oracle в объекты SQL Server с помощью SSMA.
Объекты Oracle | Результирующие объекты SQL Server |
---|---|
Функции | Если функция может быть напрямую преобразована в инструкцию Transact-SQL, SSMA создает функцию. В некоторых случаях функция должна быть преобразована в хранимую процедуру. В этом случае SSMA создает хранимую процедуру и функцию, которая вызывает хранимую процедуру. |
Процедуры | Если процедуру можно преобразовать непосредственно в инструкцию Transact-SQL, SSMA создает хранимую процедуру. В некоторых случаях хранимая процедура должна вызываться в автономной транзакции. В этом случае SSMA создает две хранимые процедуры: одна из них реализует процедуру, вторая используется для вызова хранимой процедуры. |
Пакеты | SSMA создает набор хранимых процедур и функций с похожими именами объектов. |
Последовательности | SSMA создает объекты последовательности (SQL Server 2012 или SQL Server 2014) или эмулирует последовательности Oracle. |
Таблицы с зависимыми объектами, такими как индексы и триггеры | SSMA создает таблицы с зависимыми объектами. |
Представление с зависимыми объектами, такими как триггеры | SSMA создает представления с зависимыми объектами. |
Материализованные представления | SSMA создает индексированные представления на сервере SQL с некоторыми исключениями. Преобразование завершится ошибкой, если материализованное представление содержит одну или несколько следующих конструкций: Определяемая пользователем функция Недетерминированное поле, функция или выражение в предложениях SELECT, WHERE или GROUP BY Использование столбца типа Float в предложениях SELECT *, WHERE или GROUP BY (частный случай предыдущей ситуации) Пользовательский тип данных (включая вложенные таблицы) COUNT(distinct <поле>) FETCH Инструкции объединения OUTER (LEFT, RIGHT или FULL) Вложенный запрос, другое представление OVER, RANK, LEAD, LOG MIN, MAX UNION, MINUS, INTERSECT HAVING |
Триггер | SSMA создает триггеры на основе следующих правил: Триггеры BEFORE преобразуются в триггеры INSTEAD OF. Триггеры AFTER преобразуются в триггеры AFTER. Триггеры INSTEAD OF преобразуются в триггеры INSTEAD OF. Несколько триггеров INSTEAD OF, определенных в одной операции, объединяются в один. Триггеры уровня строки имитируются с помощью курсоров. Каскадные триггеры преобразуются в несколько отдельных триггеров. |
Синонимы | Синонимы создаются для следующих типов объектов: Таблицы и таблицы объектов Представления и представления объектов Хранимые процедуры Функции Синонимы для следующих объектов разрешаются и заменяются прямыми ссылками на объекты: Последовательности Пакеты Объекты схемы классов Java Пользовательские объектные типы Синонимы синонимов не переносятся и отмечаются как ошибки. Синонимы не создаются для материализованных представлений. |
Пользовательские типы | SSMA не поддерживает преобразования пользовательских типов. Типы User-Defined, включая их использование в программах PL/SQL, помечаются специальными ошибками преобразования в соответствии со следующими правилами.: Столбец таблицы пользовательского типа преобразуется в тип VARCHAR(8000). Аргумент пользовательского типа для хранимой процедуры или функции преобразуется в тип VARCHAR(8000). Переменная пользовательского типа в блоке PL/SQL преобразуется в тип VARCHAR(8000). Таблица объектов преобразуется в стандартную таблицу. Представление объектов преобразуется в стандартное представление. |
Дополнительные сведения см. в разделе Преобразование схем Oracle (OracleToSQL).
Преобразование объектов Oracle и миграция данных
После установки SSMA создайте отчет для преобразования схемы Oracle и выполните миграцию данных в Управляемый экземпляр SQL Azure. Пошаговое руководство см. в статье Перенос схемы Oracle в SQL Server 2017 на Linux посредством Помощника по миграции Microsoft SQL Server.
Задачи после переноса данных
После завершения миграции удалите клиентские компоненты, чтобы удалить схему ssma_oracle.
Примечание
Не удаляйте пакет расширения из SQL Server, если в перенесенной базе данных еще используются функции из схемы ssma_oracle базы данных sysdb.
Дополнительные сведения см. в разделе Удаление SSMA для компонентов Oracle.
Соавторы
Эта статья поддерживается корпорацией Майкрософт. Первоначально она была написана следующими авторами.
Основной автор:
- Эмбер Чжао | Главный инженер клиента
Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.
Дальнейшие действия
Чтобы приступить к миграции базы данных Oracle в SQL, ознакомьтесь со статьей Помощник по миграции Microsoft SQL Server для Oracle (OracleToSQL).
Примечание
Если этот путь миграции не подходит для вашей компании, вернитесь к дереву принятия решений по миграции.