Руководство по переносу 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 в качестве цели миграции и нажмите кнопку ОК.

    Screenshot that shows Connect to Oracle.

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

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

    Screenshot that shows selecting Oracle schema.

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

    Screenshot that shows Create Report.

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

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

    Screenshot that shows an Assessment report.

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

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

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

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

    Screenshot that shows Type Mapping.

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

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

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

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

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

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

    Screenshot that shows Connect to Azure SQL Database.

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

    Screenshot that shows Convert Schema.

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

    Screenshot that shows the Review recommendations schema.

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

    Screenshot that shows the Review recommendations.

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

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

Перенос

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

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

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

    Screenshot that shows Synchronize with Database.

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

    Screenshot that shows Synchronize with the Database review.

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

    Screenshot that shows Migrate Data.

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

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

    Screenshot that shows the Data Migration Report.

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

    Screenshot that shows validation in 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, выберите Тестировщик, а затем Создать тестовый случай. Screenshot that shows to create new test case.

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

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

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

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

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

    Screenshot that shows steps to initialize a test case .

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

    Screenshot that shows step to select and configure object.

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

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

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

    Screenshot that shows step to select and configure affected object.

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

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

    Screenshot that shows step to sequence test object execution.

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

    Screenshot that shows step to finalize object.

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

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

    Screenshot that shows step to test repo.

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

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

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

    Screenshot that shows to review test repo.

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

    Screenshot that shows step to run test case

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

    Screenshot that shows step to connect to oracle source

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

    Screenshot that shows step to connect to sql target.

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

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

    Screenshot that shows tester test progress.

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

    Screenshot that shows a sample tester test report

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

    Пример положительной проверки данных Screenshot that shows a sample tester success report.

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

    Screenshot that shows tester failure report.

Оптимизация

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

Примечание.

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

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

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

Название со ссылкой 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.

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