Восстановление удаленного База данных Azure для PostgreSQL — гибкий экземпляр сервера
ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для PostgreSQL — гибкий сервер
При удалении сервера База данных Azure для PostgreSQL гибкое резервное копирование сервера сохраняется в течение пяти дней в службе. Получить доступ к резервной копии базы и выполнить восстановление можно только из подписки Azure, в которой сервер был размещен изначально. Следующие рекомендуемые действия можно выполнить для восстановления удаленного База данных Azure для PostgreSQL гибкого ресурса сервера в течение пяти дней с момента удаления сервера. Рекомендуемые действия выполняются только в том случае, если резервная копия сервера по-прежнему доступна и не удалена из системы. При восстановлении удаленного сервера часто выполняется успешно, он не всегда гарантируется, так как восстановление удаленного сервера зависит от нескольких других факторов.
Необходимые компоненты
Чтобы восстановить удаленный экземпляр База данных Azure для PostgreSQL гибкого сервера, вам потребуется
- имя подписки Azure, в которой размещен исходный сервер;
- расположение, где был создан сервер.
- Использование версии API-версии 2024-08-01
Действия по восстановлению
Перейдите на портал Azure. Выберите службу "Монитор", а затем выберите журнал действий.
В журнале действий щелкните Добавить фильтр, как показано на рисунке, и установите указанные ниже фильтры.
Выберите событие Удаление сервера PostgreSQL, а затем откройте вкладку JSON. Скопируйте атрибуты
resourceId
иsubmissionTimestamp
из выходных данных JSON. Атрибут resourceId имеет следующий формат:/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/ResourceGroup-name/providers/Microsoft.DBforPostgreSQL/flexibleServers/deletedserver
.Перейдите на страницу База данных Azure для PostgreSQL гибкого сервера create Server REST API Page и выберите вкладку "Попробовать", выделенную зеленым цветом. Войдите в систему с использованием учетной записи Azure.
Внимание
Используйте этот API-версия 2024-08-01 , а не значение по умолчанию, прежде чем включить эту функцию API, как ожидалось, как описано на следующем шаге.
Укажите свойства resourceGroupName, serverName (целевое имя сервера), свойства subscriptionId на основе значения JSON атрибута resourceId, записанного на предыдущем шаге 3. Свойство версии API предварительно заполнено и может быть оставлено в одиночку.
Перейдите к разделу "Текст запроса" и вставьте следующий текст, заменив "Удаленное расположение сервера" (например, CentralUS, EastUS и т. д.), "submissionTimestamp" и "resourceId". В поле PointInTimeUTC укажите значение "submissionTimestamp" плюс 5 минут , чтобы убедиться, что команда не ошибается.
{ "location": "Dropped Server Location", "properties": { "pointInTimeUTC": "submissionTimestamp + 10 minutes", "createMode": "ReviveDropped", "sourceServerResourceId": "resourceId" } }
Например, если метка времени отправки составляет 2023-06-15T15:58:02Z, рекомендуется добавить не менее 10 минут для восстановления точки во времени 2023-06-15T16:05:02Z и убедитесь, что вы изменяете три параметра (location,pointInTimeUTC,sourceServerResourceId) в соответствии с требованиями восстановления.
{ "location": "WestUS", "properties": { "pointInTimeUTC": "2023-06-15T16:08:02Z", "createMode": "ReviveDropped", "sourceServerResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.DBforPostgreSQL/flexibleServers/SourceServer-Name" } }
Внимание
Установлено ограничение в пять дней с момента удаления сервера. Через пять дней эта операция вернет ошибку, так как файл резервной копии не удастся найти.
Если вы получаете код ответа 201 или 202, запрос на восстановление успешно отправлен.
Создание сервера может занять некоторое время в зависимости от размера базы данных и вычислительных ресурсов, подготовленных на исходном сервере. Состояние восстановления можно отслеживать в журнале действий путем фильтрации по следующим параметрам:
- Подписка = ваша подписка.
- Тип ресурса = База данных Azure для PostgreSQL гибкие серверы (Microsoft.DBforPostgreSQL/гибкие серверы)
- Операция = обновление создания сервера PostgreSQL Server.
Восстановление удаленного сервера с поддержкой виртуальной сети
Восстановление удаленного сервера виртуальной сети включает указание дополнительных сетевых свойств, таких как идентификатор ресурса делегированной подсети и идентификатор ресурса Azure Resource Manager частной зоны DNS. Выполните приведенные ниже действия, чтобы восстановить сервер с необходимыми конфигурациями сети.
{
"location": "EastUS",
"properties": {
"createMode": "ReviveDropped",
"sourceServerResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.DBforPostgreSQL/flexibleServers/SourceServer-Name",
"pointInTimeUTC": "2023-06-20T20:50:59.4078005+00:00",
"Network": {
"DelegatedSubnetResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.Network/virtualNetworks/VirtualNetwork-Name/subnets/Subnet-Name",
"PrivateDnsZoneArmResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/SourceResourceGroup-Name/providers/Microsoft.Network/privateDnsZones/privatednszonename"
}
}
}
Распространенные ошибки
- Если вы используете неправильную версию API, может возникнуть сбой восстановления или время ожидания. Используйте API 2024-08-01, чтобы избежать таких проблем.
- Чтобы избежать потенциальных ошибок DNS, рекомендуется использовать другое имя при инициировании процесса восстановления, так как некоторые операции восстановления могут завершиться ошибкой с тем же именем.