Поделиться через


Руководство: Офлайн-перенос из Amazon Aurora PostgreSQL в базу данных Azure для PostgreSQL с помощью службы миграции

В этой статье описывается, как перенести базу данных PostgreSQL из Amazon Aurora в База данных Azure для PostgreSQL в автономном режиме.

Служба миграции в База данных Azure для PostgreSQL — это полностью управляемая служба, интегрированная в портал Azure и Azure CLI. Она предназначена для упрощения перехода к База данных Azure для PostgreSQL.

Изучив это руководство, вы:

  • Выполните предварительные требования
  • Запуск миграции
  • Отслеживайте ход миграции.
  • Проверка миграции

Предварительные условия

Перед началом миграции с помощью службы миграции в База данных Azure для PostgreSQL важно выполнить следующие предварительные требования. Эти предварительные требования специально предназначены для сценариев автономной миграции.

Проверка исходной версии

Исходная версия сервера PostgreSQL должна быть 9.5 или более поздней. Если исходная версия PostgreSQL выше 9.5, обновите версию до версии 9.5 или более поздней перед началом миграции.

Настройка целевой установки

Перед началом миграции необходимо создать экземпляр База данных Azure для PostgreSQL в Azure. Единица SKU, выделенная для гибкого сервера Azure Database for PostgreSQL, должна соответствовать источнику.

Дополнительные сведения см. в статье "Создание гибкого сервера Базы данных Azure для PostgreSQL".

Настройка настройки сети

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

Сведения о настройке сети смотрите в разделе Сценарии сети для службы миграции.

Включение расширений

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

В целевом экземпляре гибкого сервера Базы данных Azure для PostgreSQL включите поддерживаемые расширения, которые определены в исходном экземпляре PostgreSQL.

Дополнительные сведения см. в разделе "Расширения" в База данных Azure для PostgreSQL.

Примечание.

При внесении изменений в shared_preload_libraries параметр требуется перезапуск.

Проверка параметров сервера

Параметры сервера не переносятся автоматически в целевую среду и должны быть настроены вручную.

  • Сопоставлять значения параметров сервера из исходной базы данных PostgreSQL с экземпляром База данных Azure для PostgreSQL. В портал Azure перейдите к параметрам сервера и вручную обновите значения.

  • Сохраните изменения параметров и перезапустите экземпляр База данных Azure для PostgreSQL, чтобы применить новую конфигурацию при необходимости.

Проверка пользователей и ролей

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

  • Миграция пользователей и ролей вручную. Пользователи и связанные с ними роли должны быть перенесены вручную в экземпляр База данных Azure для PostgreSQL. Для упрощения этого процесса можно использовать служебную программу pg_dumpall с флагом --globals-only для экспорта глобальных объектов, таких как роли и учетные записи пользователей.

    Выполните следующую команду . Замените <username> фактическим именем пользователя и замените <filename> его именем, которое вы хотите использовать для выходного файла.

    pg_dumpall --globals-only -U <username> -f <filename>.sql
    
  • Ограничение на роли суперпользователя: База данных Azure для PostgreSQL не поддерживает роли суперпользователя. Перед миграцией необходимо удалить разрешения суперпользователя. Убедитесь, что разрешения и роли настроены соответствующим образом.

Выполнив эти действия, вы можете убедиться, что учетные записи пользователей и роли правильно перенесены в База данных Azure для PostgreSQL без проблем, связанных с ограничениями суперпользователя.

Отключение высокой доступности (надежность) и реплик чтения в целевом объекте

Важно отключить высокий уровень доступности (надежность) и реплики чтения в целевой среде перед началом миграции. Эти функции должны быть включены только после завершения миграции.

Запуск миграции

Вы можете мигрировать с помощью портала Azure или Azure CLI.

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

Чтобы выполнить миграцию с помощью портал Azure, сначала настройте задачу миграции. Затем подключитесь к источнику и целевому объекту и инициируйте миграцию.

Настройка задачи миграции

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

  1. Откройте веб-браузер и перейдите к портал Azure. Введите свои учетные данные для входа.

  2. Перейдите к гибкому серверу Базы данных Azure для PostgreSQL.

  3. В меню службы выберите "Миграция".

    Снимок экрана: выбор миграции в портал Azure.

  4. Выберите "Создать", чтобы перейти с Amazon Aurora на гибкий сервер.

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

  5. Чтобы настроить миграцию, выберите Создать и пройдите через ряд вкладок.

    Снимок экрана: панель

Настройка

Введите или выберите следующие сведения.

  • Имя миграции: введите уникальный идентификатор для каждой миграции на этот гибкий целевой сервер. В имени миграции можно использовать только буквенно-цифровые символы и дефисы (-). Имя не может начинаться с дефиса, и оно должно быть уникальным для целевого сервера. Ни одна из миграций на один и тот же гибкий серверный целевой объект не может иметь одинаковое имя.

  • Тип исходного сервера: выберите тип источника, соответствующий источнику PostgreSQL, например облачной службе PostgreSQL, локальной установке или виртуальной машине.

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

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

    Рекомендуется выбрать параметр Проверка или Проверка и миграция для предварительной проверки миграции.

    Дополнительные сведения см. в разделе "Проверка предварительной миграции".

  • Режим миграции: выберите режим миграции. Параметр по умолчанию — "Вне сети".

Нажмите кнопку "Далее" — подключение к источнику.

Снимок экрана: вкладка

Выбор сервера среды выполнения

Сервер среды выполнения миграции — это специализированная функция службы миграции. Сервер среды выполнения выступает в качестве промежуточного сервера во время миграции. Это отдельный экземпляр гибкого сервера Базы данных Azure для PostgreSQL, который не является целевым сервером. Сервер среды выполнения упрощает миграцию баз данных из исходной среды, доступной только через частную сеть.

Для получения дополнительной информации см. сервер среды выполнения миграции.

Снимок экрана: вкладка

Подключение к источнику

На вкладке "Подключение к источнику " введите или выберите следующие сведения для источника базы данных:

  • Имя сервера: введите имя узла или IP-адрес исходного экземпляра PostgreSQL.
  • Порт: введите номер порта исходного сервера.
  • Имя входа администратора сервера: введите имя пользователя исходного сервера PostgreSQL.
  • Пароль: введите пароль исходного сервера PostgreSQL.
  • Режим SSL: поддерживаемые значения — предпочитать и требовать. Если SSL (уровень защищённых сокетов) на исходном сервере PostgreSQL отключен, выберите "Предпочитать". Если ssl на исходном сервере включен, выберите "Требовать". Значения SSL задаются в файле postgresql.conf .
  • Проверка подключения. Инициирует тест подключения между целевым объектом и источником. Когда подключение выполнено успешно, перейдите к следующему шагу, чтобы определить сетевые проблемы между целевым объектом и источником, а также проверить имя пользователя и пароль источника. Установка тестового подключения занимает несколько минут.

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

Снимок экрана: вкладка

Выберите целевой объект миграции

На вкладке "Выбор целевого объекта миграции" введите или выберите следующие сведения для гибкого целевого сервера в дополнение к подписке, группе ресурсов и имени сервера:

  • Имя администратора: имя администратора целевого сервера PostgreSQL.
  • Пароль: пароль целевого сервера PostgreSQL.
  • Настраиваемое полное доменное имя или IP-адрес (необязательно): настраиваемое полное доменное имя/IP-адрес является необязательным и может использоваться, если целевой объект находится за пользовательским DNS-сервером или имеет пользовательские пространства имен DNS, что делает его доступным только через определенные полные доменные имена или IP-адреса. Например, это может включать такие записи, как flexibleserver.example.com, 198.1.0.2 или полное доменное имя PostgreSQL, например flexibleserver.postgres.database.azure.com, если пользовательский DNS-сервер содержит DNS-зону postgres.database.azure.com или перенаправляет запросы для этой зоны на 168.63.129.16, где полное доменное имя разрешается в общедоступной или частной зоне DNS Azure.
  • Проверка подключения. Инициирует тест подключения между целевым объектом и источником. После успешного подключения перейдите к следующему шагу, чтобы определить проблемы с сетью между целевым объектом и источником, а также проверить имя пользователя и пароль для целевого сервера. Установка тестового подключения занимает несколько минут.

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

Снимок экрана: вкладка для целевой миграции в Connect.

Выбор баз данных для миграции

На вкладке "Выбор базы данных для миграции" выберите из списка пользовательских баз данных для миграции с исходного сервера PostgreSQL.

После выбора баз данных нажмите кнопку "Далее: сводка".

Снимок экрана: вкладка

Итоги

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

Снимок экрана: панель

Отслеживайте ход миграции.

Через несколько секунд после нажатия кнопки "Начать проверку и миграцию" появится уведомление о том, что проверка или создание миграции успешно выполнено. Вы перенаправляетесь на панель экземпляра гибкого сервера Миграция. Запись состояния — InProgress, а подсостояние — PerformingPreRequisiteSteps. Рабочий процесс занимает от 2 до 3 минут, чтобы настроить инфраструктуру миграции и проверить сетевые подключения.

Снимок экрана: панель

Сетка, отображающая миграцию, содержит следующие столбцы:

  • Имя
  • Состояние
  • Режим миграции
  • Тип переноса
  • Исходный сервер
  • Тип исходного сервера
  • Базы данных
  • Длительность
  • Время начала

Записи отображаются в порядке убывания времени начала с последней записью в верхней части. Вы можете выбрать "Обновить" в строке меню, чтобы обновить состояние выполнения проверки или миграции.

Сведения о переносе

В списке миграций выберите имя миграции, чтобы просмотреть связанные сведения.

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

  • Если проверка имеет ошибки, миграция переходит в состояние сбоя .

  • Если проверка завершена без каких-либо ошибок, начинается миграция, а рабочий процесс переходит в подсостояние Миграция данных.

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

  • Проверка на уровне экземпляра:

    • Проверьте проверку, связанную с тестом подключения для версии источника (проверка параметров сервера PostgreSQL version >= 9.5), если в параметрах сервера экземпляра Azure Database для гибкого сервера PostgreSQL включены расширения.
  • Проверка на уровне базы данных:

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

Текущее состояние миграции и проверки можно просмотреть на панели сведений о миграции.

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

В следующих таблицах описаны некоторые возможные состояния миграции и подстатки.

Состояния миграции

Государство Описание
InProgress Выполняется настройка инфраструктуры миграции или выполняется фактическая миграция данных.
Отменено Миграция отменена или удалена.
Неудачно Сбой миграции.
Сбой проверки Сбой проверки.
Успешно Миграция выполнена успешно и завершена.
WaitingForUserAction Применимо только в сетевых миграциях. Ожидание того, чтобы пользователь выполнил переключение.

Подсостояния миграции

Подсостояние Описание
ВыполнениеПредварительныхШагов Настройка инфраструктуры выполняется для миграции данных.
Проверка в процессе выполнения Проверка выполняется.
MigratingData Выполняется миграция данных.
Завершение миграции Миграция находится на заключительных этапах завершения.
Завершено Миграция завершена.
Неудачно Сбой миграции.

Субсостояния проверки

Подсостояние Описание
Неудачно Валидация завершилась неудачно.
Успешно Проверка выполнена успешно.
Предупреждения Проверка показывает предупреждение.

Отмена миграции

Вы можете отменить все текущие проверки или миграции. Рабочий процесс должен находиться в состоянии В процессе, чтобы его можно было отменить. Невозможно отменить проверку или миграцию, которая находится в состоянии "Успешно " или "Сбой ".

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

Проверка миграции

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

После миграции можно выполнить следующие задачи:

  • Проверьте данные на гибком сервере и убедитесь, что они являются точной копией исходного экземпляра.
  • После проверки включите параметр высокой доступности на гибком сервере по мере необходимости.
  • Измените номер SKU (версия) гибкого сервера в соответствии с потребностями приложения. Для этого изменения требуется перезапуск сервера базы данных.
  • При изменении параметров сервера из значений по умолчанию в исходном экземпляре скопируйте эти значения параметров сервера на гибкий сервер.
  • Скопируйте другие параметры сервера, такие как теги, оповещения и правила брандмауэра (если применимо), из исходного экземпляра на гибкий сервер.
  • Внесите изменения в приложение, чтобы указать строки подключений на использование гибкого сервера.
  • Внимательно отслеживайте производительность базы данных, чтобы узнать, требуется ли настройка производительности.