Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Мы рекомендуем использовать новую службу миграции в базе данных Azure для PostgreSQL для более упрощённой и эффективной миграции. Эта служба упрощает процесс, поддерживая различные исходные среды, обеспечивая переход на База данных Azure для PostgreSQL без хэссов.
Azure Database Migration Service можно использовать для переноса баз данных из экземпляра PostgreSQL RDS в Базу данных Azure для PostgreSQL , пока исходная база данных остается в сети во время миграции. Другими словами, миграцию можно выполнить с минимальным временем простоя для приложения. В этом руководстве вы переносите DVD Rental
образец базы данных из экземпляра RDS PostgreSQL 9.6 в База данных Azure для PostgreSQL с помощью действия миграции в Сети в Azure Database Migration Service.
В этом руководстве описано следующее:
- перенос примера схемы с помощью служебной программы pg_dump;
- Создайте экземпляр Azure Database Migration Service.
- создание проекта миграции с использованием Azure Database Migration Service.
- выполнение миграции.
- Мониторинг миграции.
- выполнить переключение после миграции.
Чтобы выполнить подключенную миграцию с помощью Azure Database Migration Service, требуется создать экземпляр ценовой категории "Премиум". Дополнительные сведения см. на странице цен на Azure Database Migration Service. Мы шифруем диск для защиты данных от кражи при миграции.
Внимание
Чтобы оптимизировать процесс миграции, Майкрософт рекомендует создать экземпляр Azure Database Migration Service в том же регионе Azure, в котором размещена целевая база данных. Перемещение данных между регионами и географическими областями может замедлить процесс миграции и привести к ошибкам.
Совет
В Службе azure Database Migration Service можно перенести базы данных в автономном режиме или во время их работы в сети. При автономной миграции время простоя приложения начинается при запуске миграции. Чтобы ограничить время простоя, необходимое для перехода к новой среде после миграции, используйте миграцию через Интернет . Рекомендуется протестировать автономную миграцию, чтобы определить допустимо ли время простоя. Если ожидаемое время простоя недопустимо, выполните миграцию по сети.
В этой статье описывается сетевая миграция из экземпляра RDS PostgreSQL в Базу данных Azure для PostgreSQL.
Необходимые компоненты
Для работы с этим руководством вам потребуется следующее:
Скачайте и установите выпуск сообщества PostgreSQL 9.5, 9.6 или 10. На исходном сервере должна быть установлена PostgreSQL версии 9.5.11, 9.6.7, 10 или более поздней. Дополнительные сведения см. в статье Поддерживаемые версии базы данных PostgreSQL.
Целевая База данных Azure для PostgreSQL версия должна быть равной или более поздней версии RDS PostgreSQL. Например, RDS PostgreSQL 9.6 можно перенести только в Базу данных Azure для PostgreSQL 9.6, 10 или 11, но не в Базу данных Azure для PostgreSQL 9.5.
Создайте экземпляр гибкого сервера Базы данных Azure для PostgreSQL.
Создайте виртуальную сеть Microsoft Azure для Azure Database Migration Service с помощью модели развертывания Azure Resource Manager, которая обеспечивает подключение типа "сеть — сеть" к локальным исходным серверам с помощью ExpressRoute или VPN. Дополнительные сведения о создании виртуальной сети см. в документации по виртуальной сети, а также в статьях краткого руководства с пошаговыми сведениями.
Убедитесь в том, что правила группы безопасности сети для виртуальной сети не блокируют исходящий порт 443 ServiceTag для Служебной шины, службы хранилища и Azure Monitor. Дополнительные сведения о фильтрации трафика NSG виртуальной сети см. в статье "Фильтрация сетевого трафика с группами безопасности сети".
Настройте брандмауэр Windows для доступа к ядру СУБД.
Откройте брандмауэр Windows, чтобы разрешить Azure Database Migration Service получить доступ к исходному серверу PostgreSQL, который по умолчанию является TCP-портом 5432.
При использовании устройства брандмауэра перед исходными базами данных может потребоваться добавить правила брандмауэра, чтобы разрешить Azure Database Migration Service получить доступ к исходным базам данных для миграции.
Создайте правило брандмауэра уровня сервера для сервера Базы данных Azure для PostgreSQL, чтобы разрешить Azure Database Migration Service доступ к целевым базам данных. Задайте диапазон подсети в виртуальной сети, которая используется для Azure Database Migration Service.
Настройка репликации для AWS RDS PostgreSQL
Чтобы создать новую группу параметров, следуйте инструкциям, приведенным AWS в статье "Работа с группами параметров базы данных".
Используйте имя главного пользователя, чтобы подключиться к источнику из Azure Database Migration Service. Если вы используете учетную запись, отличную от учетной записи главного пользователя, она должна иметь роли rds_superuser и rds_replication. Роль rds_replication предоставляет разрешения на управление логическими слотами и потоковую передачу данных через логические слоты.
Создайте группу параметров со следующей конфигурацией:
rds.logical_replication
Задайте для параметра в группе параметров базы данных значение1
.max_wal_senders
= [число параллельных задач]. Параметрmax_wal_senders
задает количество параллельных задач, которые могут выполняться. Рекомендуемый параметр:10
.max_replication_slots
= [количество слотов]. Рекомендуемый параметр:5
.
Свяжите созданную группу параметров с экземпляром RDS PostgreSQL.
Перенос схемы
Чтобы перенести все объекты базы данных, такие как схемы таблицы, индексы и хранимые процедуры, извлеките схему из исходной базы данных и примените ее к нужной базе данных.
Чтобы перенести только схему, проще всего выполнить pg_dump с параметром -s. Дополнительные сведения см. в примерах в руководстве по postgres pg_dump.
pg_dump -O -h hostname -U db_username -d db_name -s > your_schema.sql
Например, чтобы создать дамп файла схемы для базы данных dvdrental, используйте следующую команду:
pg_dump -O -h localhost -U postgres -d dvdrental -s > dvdrentalSchema.sql
Создайте пустую базу данных в целевой службе, которая является База данных Azure для PostgreSQL гибким сервером.
Импортируйте схему в целевую службу, то есть в Базу данных Azure для PostgreSQL. Чтобы восстановить файл дампа схемы, выполните следующую команду:
psql -h hostname -U db_username -d db_name < your_schema.sql
Рассмотрим пример.
psql -h mypgserver-20170401.postgres.database.azure.com -U postgres -d dvdrental < dvdrentalSchema.sql
Примечание.
Служба миграции автоматически управляет включением и отключением внешних ключей и триггеров, что обеспечивает надежность переноса данных. В результате вам не нужно беспокоиться о внесении изменений в схему целевой базы данных.
Регистрация поставщика ресурсов
Прежде чем создать свой первый экземпляр Database Migration Service, зарегистрируйте поставщик ресурсов Microsoft.DataMigration.
Войдите на портал Azure. Найдите и выберите подписки.
Выберите подписку, в которой нужно создать экземпляр Azure Database Migration Service, а затем выберите поставщиков ресурсов.
Найдите миграцию и выберите "Зарегистрировать для Microsoft.DataMigration".
Создание экземпляра Azure Database Migration Service
На портале Azure выберите + Создать ресурс, найдите Службу Azure Database Migration Service и выберите Azure Database Migration Service в раскрывающемся списке.
На экране Azure Database Migration Service нажмите кнопку "Создать".
На экране Create Migration Service укажите имя службы, подписки и новой или существующей группы ресурсов.
Выберите расположение, в котором нужно создать экземпляр Azure Database Migration Service.
Выберите существующую виртуальную сеть или создайте новую.
Виртуальная сеть предоставляет Azure Database Migration Service доступ к исходному экземпляру PostgreSQL и целевому экземпляру Базы данных Azure для PostgreSQL.
Дополнительные сведения о создании виртуальной сети на портале Azure см. в статье "Создание виртуальной сети с помощью портала Azure".
Выберите ценовую категорию. Для этой миграции в Интернете выберите ценовую категорию "Премиум": 4vCores.
Нажмите кнопку "Создать", чтобы создать службу.
Создание проекта миграции
После создания службы найдите ее на портале Azure, откройте и создайте проект миграции.
На портале Azure выберите все службы, найдите Службу Azure Database Migration Service и выберите Azure Database Migration Services.
На экране Azure Database Migration Services найдите экземпляр Azure Database Migration Service, который вы создали, выберите экземпляр, а затем выберите Создать проект миграции.
На экране нового проекта миграции укажите имя проекта, в текстовом поле " Исходный сервер " выберите AWS RDS для PostgreSQL, а затем в текстовом поле типа целевого сервера выберите базу данных Azure для PostgreSQL.
В разделе "Выбор типа действия " выберите "Миграция данных через Интернет".
Внимание
Выберите миграцию данных через Интернет. Автономные миграции не поддерживаются для этого сценария.
Кроме того, можно выбрать только создание проекта, чтобы создать проект миграции сейчас, а выполнить миграцию позже.
Нажмите кнопку "Сохранить".
Выберите "Создать и запустить действие ", чтобы создать проект и запустить действие миграции.
Запишите необходимые условия для настройки онлайн-миграции в области создания проекта.
Укажите сведения об источнике.
На экране добавления сведений о источнике укажите сведения о подключении для исходного экземпляра PostgreSQL.
Укажите сведения о целевом объекте.
Выберите "Сохранить", а затем на экране " Сведения о целевом объекте" укажите сведения о подключении для целевого сервера Базы данных Azure для PostgreSQL, который предварительно подготовлен и имеет схему аренды DVD-дисков , развернутую с помощью pg_dump.
Выберите "Сохранить", а затем на экране "Карта с целевыми базами данных " сопоставляйте источник и целевую базу данных для миграции.
Если в целевой базе данных содержится база данных с тем же именем, что у исходной базы данных, Azure Database Migration Service по умолчанию выберет целевую базу данных.
Нажмите кнопку "Сохранить", на экране сводки по миграции в текстовом поле "Имя действия " укажите имя действия миграции, а затем просмотрите сводку, чтобы убедиться, что исходные и целевые сведения соответствуют указанным ранее данным.
Выполните миграцию.
Выберите "Выполнить миграцию".
Открывается окно активности миграции, и состояние активности инициализация.
Отслеживайте ход миграции.
На экране действия миграции нажмите кнопку "Обновить" , чтобы обновить отображение до тех пор, пока состояние миграции не отображается как запущенное.
В разделе DATABASE NAME выберите конкретную базу данных, чтобы получить состояние миграции для полной загрузки данных и операций синхронизации добавочных данных .
Полная загрузка данных показывает состояние начальной миграции нагрузки, а добавочная синхронизация данных показывает состояние отслеживания измененных данных (CDC).
Выполните прямую миграцию.
После завершения начальной полной загрузки базы данных помечаются готовы к переключению.
Когда вы будете готовы завершить миграцию базы данных, нажмите кнопку "Начать переключение".
Подождите, пока счетчик Ожидающих изменений не покажет
0
, чтобы убедиться, что все входящие транзакции в исходную базу данных остановлены, установите флажок Подтвердить, а затем нажмите Применить.Когда состояние миграции базы данных отображается завершено, подключите приложения к новой целевой базе данных Azure для PostgreSQL.
Теперь перенос локального экземпляра RDS PostgreSQL в Базу данных Azure для PostgreSQL по сети завершен.