Руководство по переносу Oracle в базу данных SQL Azure

Применимо к: База данных SQL Azure

В этом руководстве описано, как перенести схемы Oracle в Базу данных Azure SQL, используя Помощник по миграции SQL Server для Oracle (SSMA для Oracle).

Другие рекомендации по миграции см. в руководствах по переносу баз данных в Azure.

Внимание

Испробуйте новое расширение "Оценка переноса базы данных для Oracle" в Azure Data Studio для предварительной оценки Oracle для SQL и классификации рабочей нагрузки. Если вы находитесь на раннем этапе миграции Oracle в SQL и вам нужно выполнить высокоуровневую оценку рабочей нагрузки, определить размер целевого объекта Azure SQL для рабочей нагрузки Oracle или определить четность миграции возможностей, воспользуйтесь новым расширением. Чтобы получить подробные сведения об оценке и преобразовании кода, перейдите к SSMA для Oracle.

Необходимые компоненты

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

Подготовка к миграции

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

Оценка

Используя SSMA для Oracle, можно просмотреть объекты и данные баз данных, оценить возможности переноса баз данных, перенести объекты баз данных в БД SQL, а затем перенести в базу сами данные.

Чтобы создать оценку, выполните следующие действия.

  1. Откройте SSMA для Oracle.

  2. Выберите File (Файл) и New Project (Создать проект).

  3. Введите имя проекта и расположение для сохранения проекта. Затем в раскрывающемся списке выберите управляемый экземпляр Базы данных Azure SQL в качестве цели миграции и нажмите кнопку ОК.

    Снимок экрана: подключение к Oracle.

  4. Щелкните Connect to Oracle (Подключиться к Oracle). Введите сведения о подключении к Oracle в диалоговом окне Подключение к Oracle.

  5. Выберите схемы Oracle для переноса.

    Снимок экрана, на котором представлен выбор схемы Oracle.

  6. В Обозревателе метаданных Oracle щелкните правой кнопкой мыши схему Oracle, которую вы хотите перенести, и выберите Создать отчет, чтобы создать отчет в формате HTML. Вместо этого можно выбрать базу данных, а затем вкладку Создание отчета.

    Снимок экрана: создание отчета.

  7. Ознакомьтесь с HTML-отчетом, чтобы получить сведения о статистике преобразований и любых ошибках или предупреждениях. Также можно открыть отчет в Excel, чтобы получить список объектов Oracle и действий, необходимых для выполнения преобразований схемы. По умолчанию отчет находится в папке report в каталоге SSMAProjects.

    Например, ознакомьтесь со статьей drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2020_11_12T02_47_55\.

    Снимок экрана, на котором изображен отчет об оценке.

Проверка типов данных

Проверьте сопоставления типов данных по умолчанию и измените их в зависимости от требований, если это необходимо. Для этого выполните следующие шаги:

  1. В SSMA для Oracle щелкните Средства и выберите Параметры проекта.

  2. Перейдите на вкладку Type mapping (Сопоставление типов).

    Снимок экрана: сопоставление типов.

  3. Сопоставление типов для каждой таблицы можно изменить, выбрав таблицу в обозревателе метаданных Oracle.

Преобразование схемы

Чтобы преобразовать схему, выполните следующие действия.

  1. (Необязательно) добавьте динамические или нерегламентированные запросы в инструкции. Щелкните узел правой кнопкой мыши и выберите Добавить инструкции.

  2. Выберите вкладку Подключение к Базе данных SQL Azure.

    1. В области база данных SQL введите сведения о подключении, чтобы подключить базу данных.
    2. Выберите целевой экземпляр базы данных в раскрывающемся списке или укажите новое имя. В этом случае база данных будет создана на целевом сервере.
    3. Введите сведения о проверке подлинности и нажмите кнопку Подключить.

    Снимок экрана, показывающий подключение к базе данных SQL Azure.

  3. В Обозревателе метаданных Oracle щелкните правой кнопкой мыши схему Oracle и выберите команду Преобразовать схему. Можно также выбрать схему, а затем перейти на вкладку Преобразование схемы.

    Снимок экрана: преобразование схемы.

  4. После завершения преобразования сравните преобразованные объекты с исходными, чтобы определить возможные проблемы и устранить их в соответствии с рекомендациями.

    Снимок экрана, на котором показана схема рекомендаций по проверке.

  5. Сравните преобразованный текст Transact-SQL с исходным кодом и просмотрите рекомендации.

    Снимок экрана, на котором показаны рекомендации по проверке.

  6. В области вывода выберите элемент Просмотр результатов и проверьте ошибки в области Список ошибок.

  7. Сохраните проект локально для исправления схемы в автономном режиме. В меню Файл выберите команду Сохранить проект. Так можно оценить исходную и целевую схемы в автономном режиме и исправить проблемы перед публикацией схемы в базе данных SQL.

Миграция

После завершения оценки баз данных и устранения всех несоответствий можно переходить к процессу миграции. Миграция состоит из двух этапов —публикации схемы и переноса данных.

Чтобы опубликовать схему и перенести данные, выполните следующие действия.

  1. Опубликуйте схему. Для этого щелкните правой кнопкой мыши базу данных узла Базы данных в области Обозреватель метаданных Azure SQL и выберите пункт Синхронизировать с базой данных.

    Снимок экрана: синхронизация с базой данных.

  2. Проверьте результаты сопоставления исходного и целевого проектов.

    Снимок экрана: обзор окна

  3. Перенесите данные. Для этого щелкните правой кнопкой мыши базу данных или объект, которые требуется перенести, в разделе Обозреватель метаданных Oracle и выберите пункт Перенести данные. Можно также выбрать вкладку Перенос данных. Чтобы перенести данные для всей базы данных, установите флажок рядом с именем базы данных. Чтобы перенести данные из отдельных таблиц, разверните базу данных, разверните узел Таблицы и установите флажок рядом с нужной таблицей. Чтобы не переносить данные из определенной таблицы, снимите флажок.

    Снимок экрана: перенос данных.

  4. Введите сведения о подключении для баз данных Oracle и SQL.

  5. После завершения переноса просмотрите Data Migration Report (Отчет о миграции данных).

    Снимок экрана: отчет о переносе данных.

  6. Подключитесь к экземпляру базы данных SQL с помощью SQL Server Management Studio и проверьте результаты миграции, просмотрев данные и схему.

    Снимок экрана: проверка в SQL Server Management Studio.

Для выполнения миграции можно также использовать SQL Server Integration Services. Дополнительные сведения см. на следующих ресурсах:

После миграции

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

Исправление приложений

После переноса данных в целевую среду все приложения, которые раньше использовали источник, должны приступить к приему целевого объекта. Для этого в некоторых случаях потребуется внести изменения в приложения.

Data Access Migration Toolkit — это расширение для Visual Studio Code, с помощью которого можно анализировать исходный код Java и отслеживать вызовы и запросы к API доступа к данным. Этот набор средств предоставляет пользователю представление с одной областью для задач, которые нужно решить для поддержки новой серверной части базы данных. Дополнительные сведения см. в записи блога Перенос приложения Java из Oracle.

Выполнение тестов

Подход теста к миграции базы данных состоит из следующих действий:

  1. Разработка проверочных тестов. Чтобы протестировать перенос базы данных, необходимо использовать SQL-запросы. Необходимо создать запросы проверки, которые будут выполняться как в исходной, так и в целевой базах данных. Проверочные запросы должны охватывать всю определенную ранее область.
  2. Настройка тестовой среды. Тестовая среда должна содержать копию исходной и целевой баз данных. Не забудьте изолировать тестовую среду.
  3. Выполнение проверочных тестов. Выполните проверочные тесты в исходной и целевой базах данных, а затем проанализируйте результаты.
  4. Выполнение тестов производительности. Запустите тесты производительности для исходной и целевой баз данных, а затем проанализируйте и сравните результаты.

Проверка перенесенных объектов

Помощник по миграции Microsoft SQL Server для тестировщика Oracle (тестировщика SSMA) позволяет тестировать перенесенные объекты базы данных. Тестировщик SSMA используется для проверки соответствия поведения преобразованных объектов.

Создание тестового случая

  1. Откройте SSMA для Oracle, выберите Тестировщик, а затем Создать тестовый случай. Снимок экрана: сведения о том, как создать тестовый случай.

  2. Укажите следующую информацию для нового тестового случая.

    Имя: укажите имя для идентификации тестового случая.

    Дата создания: текущая дата, определяется автоматически.

    Дата последнего изменения: заполняется автоматически, менять не следует.

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

    Снимок экрана: этап инициализации тестового случая.

  3. Выберите объекты, входящие в тестовый случай, из дерева объектов Oracle слева.

    Снимок экрана: этап выбора и настройки объекта.

    В этом примере выбраны хранимая процедура ADD_REGION и таблица REGION.

    Более подробные сведения см. в статье Выбор и настройка объектов для тестирования.

  4. Далее выберите таблицы, внешние ключи и другие зависимые объекты из дерева объектов Oracle в левом окне.

    Снимок экрана: этап выбора и настройки затронутого объекта.

    Более подробные сведения см. в статье Выбор и настройка обрабатываемых объектов.

  5. Проверьте ознакомительную последовательность объектов. Измените порядок, нажимая кнопки в сетке.

    Снимок экрана: этап установления последовательности тестовых объектов.

  6. Чтобы завершить тестовый случай, просмотрите сведения, представленные на предыдущих этапах. Настройте параметры выполнения теста на основе тестового сценария.

    Снимок экрана: этап завершения подготовки объекта.

    Дополнительные сведения о параметрах тестового случая см. в статье Завершение подготовки тестового случая.

  7. Нажмите кнопку "Готово", чтобы создать тестовый случай.

    Снимок экрана: этап тестирования репозитория.

Запуск тестового случая

Когда тестировщик SSMA запускает тестовый случай, подсистема тестирования выполняет объекты, выбранные для тестирования, и создает отчет о проверке.

  1. Выберите тестовый случай из тестового репозитория и нажмите кнопку "Запустить".

    Снимок экрана: проверка тестового репозитория.

  2. Проверьте тестовый случай, который необходимо запустить, и нажмите кнопку "Запустить".

    Снимок экрана: этап запуска тестового случая

  3. Затем укажите учетные данные источника Oracle. После ввода учетных данных нажмите кнопку "Подключить".

    Снимок экрана: этап подключения к источнику Oracle

  4. Укажите учетные данные SQL Server назначения и нажмите кнопку "Подключить".

    Снимок экрана: этап подключения к целевому объекту SQL.

    При успешном подключении тестовый случай переходит на этап инициализации.

  5. Индикатор выполнения в режиме реального времени показывает состояние выполнения тестового запуска.

    Снимок экрана: ход тестирования с помощью тестировщика.

  6. Просмотрите отчет после завершения теста. Отчет содержит статистику, все ошибки, возникшие во время тестового запуска, и подробный отчет.

    Снимок экрана: пример отчета о тесте с помощью тестировщика

  7. Щелкните ссылку "Сведения", чтобы получить дополнительную информацию.

    Пример положительной проверки данных Снимок экрана: пример отчета об успешной работе тестировщика.

    Пример непройденной проверки данных

    Снимок экрана: отчет о сбое тестировщика.

Оптимизация

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

Примечание.

Дополнительную информацию об этих проблемах и мерах по их устранению см. в руководстве по проверке и оптимизации после миграции.

Ресурсы, посвященные миграции

Дополнительную помощь по этому сценарию миграции можно получить в приведенных ниже ресурсах. Они разработаны как вспомогательные материалы по реализации реальных проектов миграции.

Название со ссылкой Description
Модель и средство оценки рабочей нагрузки данных Это средство предоставляет предлагаемые "оптимальные" целевые платформы, готовность к переходу в облако и уровень исправления приложения или базы данных для конкретной рабочей нагрузки. Оно обеспечивает простое и быстрое вычисление и создание отчетов, которое помогает ускорить оценку больших объемов, предоставляя, автоматизируя и унифицируя процесс принятия решения относительно целевой платформы.
Артефакты скрипта инвентаризации Oracle Этот ресурс включает в себя запрос PL/SQL, который обращается к системным таблицам Oracle и возвращает количество объектов по типам схем, типам объектов и состоянию. Он также дает приблизительную оценку объема "необработанных данных" и размера таблиц в каждой схеме. Результаты сохраняются в формате CSV.
Автоматизация сбора и объединения данных для оценки баз данных Oracle в SSMA Этот набор ресурсов использует CSV-файл (sources.csv в папках проектов) в качестве основы для создания XML-файлов, необходимых для проведения оценки SSMA в режиме консоли. Файл source.csv предоставляется клиентом на основе инвентаризации существующих экземпляров Oracle. Выходные файлы: AssessmentReportGeneration_source_1.xml, ServersConnectionFile.xml и VariableValueFile.xml.
Из Oracle в базу данных SQL — средство сравнения баз данных SSMA for Oracle Tester — это рекомендуемое средство для автоматической проверки преобразования объектов базы данных и переноса данных, которое является надмножеством функций средства сравнения баз данных.

Если вы ищете альтернативный вариант проверки данных, можно использовать средство сравнения баз данных для сравнения данных на уровне строк или столбцов во всех или выбранных таблицах, строках и столбцах.

Эти ресурсы разработали специалисты по разработке данных SQL. Основная задача этой команды — включить и ускорить комплексную модернизацию проектов миграции платформы данных на платформу данных Microsoft Azure.

Следующие шаги