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


Включение избыточности зоны для базы данных SQL Azure

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

В этом руководстве описывается обновление базы данных SQL Azure для избыточности зоны с зонами доступности.

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

Prerequisites

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

Service tier Deployment model Доступность зональной избыточности
Premium Отдельная база данных или эластичные пулы Все регионы, поддерживающие зоны доступности
Business Critical Отдельная база данных или эластичные пулы Все регионы, поддерживающие зоны доступности
General Purpose Отдельная база данных или эластичные пулы Выбранные регионы, поддерживающие зоны доступности
Hyperscale Single database Все регионы, поддерживающие зоны доступности

Downtime requirements

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

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

Включение избыточности зоны (премиум, критически важный для бизнеса и общего назначения)

Для уровней служб "Премиум", "Критически важный для бизнеса" и "Общего назначения" возможна избыточность зоны.

Выполните следующие действия, чтобы включить избыточность зоны для одной базы данных или эластичного пула.

Включение избыточности зоны для одной базы данных

  1. Перейдите к портал Azure, чтобы найти базу данных. Найдите и выберите базы данных SQL.

  2. Выберите нужную базу данных.

  3. В разделе "Параметры" выберите "Вычисления и хранилище".

  4. Выберите "Да" , чтобы сделать эту зону базы данных избыточной?

  5. Select Apply.

  6. Дождитесь получения уведомления о завершении операции в уведомлениях в верхнем меню портал Azure.

  7. Чтобы убедиться, что включена зональная избыточность, выберите «Обзор» и затем выберите «Свойства».

  8. В разделе "Доступность" убедитесь, что зональная избыточность установлена в значение "Включено".

Включение избыточности зоны для эластичного пула

Important

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

  1. Перейдите на портал Azure , чтобы найти и выбрать нужный эластичные пулы.

  2. В разделе "Параметры" выберите "Вычисления и хранилище".

  3. Выберите "Да ", чтобы сделать эту зону эластичного пула избыточной?.

  4. Select Save.

  5. Дождитесь получения уведомления о завершении операции в уведомлениях в верхнем меню портал Azure.

  6. Чтобы убедиться, что избыточность зоны включена, выберите "Настроить " и выберите параметры пула.

  7. Параметр избыточности зоны должен иметь значение "Да".

Redeployment (Hyperscale)

Для уровня служб "Гипермасштабирование" поддержка избыточности зоны может быть указана только во время создания базы данных и не может быть изменена после ее развертывания. Если вы хотите получить поддержку избыточности зоны, необходимо выполнить передачу данных из существующей отдельной базы данных уровня служб гипермасштабирования. Чтобы выполнить передачу и включить параметр избыточности зоны, клон необходимо создать с помощью копирования базы данных, восстановления на определенный момент времени или геореплики.

Redeployment considerations

  • Существует два режима повторного развертывания (в сети и в автономном режиме):

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

    • Метод геореплики (онлайн-режим) — это повторное развертывание, в котором любые изменения данных из источника синхронизируются с целевым объектом.

  • Строка подключения для приложения должна быть обновлена, чтобы указывать на резервную базу данных в зонах.

Повторное развертывание одной базы данных

Database copy

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

Point-in-time restore

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

Geo-replica

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

  1. Следуйте инструкциям с помощью портала Azure, PowerShell или Azure CLI в настройке активной георепликации и отработки отказа (База данных SQL Azure) и включите избыточность зоны в разделе "Вычисления и хранилище".

  2. Реплика заполняется, и время, затраченное для заполнения данных, зависит от размера исходной базы данных. Вы можете отслеживать состояние заполнения в портале Azure или выполняя следующие запросы TSQL в реплике базы данных.

        SELECT * FROM sys.dm_geo_replication_link_status;
        SELECT * FROM sys.dm_operation_status;
    
  3. После завершения заполнения базы данных выполните плановое переключение без потери данных, чтобы сделать резервную базу данных зоны основной.

    • Используйте sys.dm_geo_replication_link_status для просмотра состояния георепликации. replication_state_descCATCH_UP, когда вторичная база данных находится в состоянии, согласованном с транзакцией.
    • В динамическом представлении управления sys.dm_operation_status убедитесь, что state_desc имеет значение COMPLETED, когда операция инициализации завершена.
  4. Обновите имя сервера в строках подключения приложения для отражения новой базы данных, зарезервированной между зонами.

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

Проверка избыточности зоны

Для проверки ZoneRedundant свойства базы данных можно использовать Azure PowerShell или Azure CLI или REST API.

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

Disable zone-redundancy

Чтобы отключить избыточность между зонами для одной базы данных или эластичного пула, можно использовать портал Azure, API ARM, PowerShell или CLI.

Отключите зональную избыточность для одной базы данных

  1. Перейдите на портал Azure, чтобы найти и выбрать базу данных, которую вы больше не хотите делать зонально резервированной.

  2. В разделе "Параметры" выберите "Вычисления и хранилище".

  3. Выберите Нет для Хотите ли вы сделать эту зону базы данных избыточной?

  4. Select Save.

Отключить зональную избыточность для эластичного пула

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

  2. В разделе "Параметры" выберите "Вычисления и хранилище".

  3. Выберите Нет для параметра Хотите ли вы сделать эту зону эластичного пула избыточной?.

  4. Select Save.

Чтобы отключить избыточность между зонами для уровня служб гипермасштабирования, можно отменить шаги, описанные в разделе "Повторное развертывание" (гипермасштабирование).