Обзор подключения Managed Instance

Применимо к:Azure SQL Managed Instance

В этой статье представлен обзор ссылки Managed Instance, которая обеспечивает репликацию данных практически в режиме реального времени между SQL Server и Azure SQL Managed Instance. Эта ссылка обеспечивает гибридную гибкость и мобильность базы данных, так как она разблокирует несколько сценариев, таких как масштабирование рабочих нагрузок только для чтения, разгрузка аналитики и отчетов в Azure и миграция на Azure. Кроме того, начиная с SQL Server 2022, возможность связи позволяет выполнять восстановление после сбоя с возвратом контролируемости к SQL Server в режиме онлайн и настраивать связь от SQL Managed Instance к SQL Server.

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

Обзор

Ссылка Managed Instance использует распределённые группы доступности для расширения ваших данных безопасным и защищённым способом. Он реплицирует данные практически в режиме реального времени из SQL Server, размещенного в любом месте, в Azure SQL Managed Instance или из Azure SQL Managed Instance в SQL Server 2022 или более позднюю версию, размещенную в любом месте.

Ссылка поддерживает экземпляры SQL Server как с одним, так и с несколькими узлами, с группами доступности или без них. По ссылке вы можете использовать преимущества Azure без переноса SQL Server ресурсов данных в облако.

Хотя ссылка поддерживает репликацию одной базы данных на одну ссылку, можно реплицировать несколько баз данных из одного экземпляра SQL Server в один или несколько управляемых экземпляров SQL или реплицировать одну базу данных в несколько управляемых экземпляров SQL, настроив несколько ссылок — одну ссылку для каждой базы данных в пару управляемых экземпляров.

Функция ссылки в настоящее время предлагает следующие функции:

  • Односторонняя репликация из SQL Server версий 2016, 2017 и 2019: используйте функцию связки для репликации данных из SQL экземпляра в Azure SQL Managed Instance. Хотя вы можете вручную переключиться на резервный экземпляр в случае аварии, это разрывает связь, и возврат на исходный экземпляр не поддерживается.
  • Disaster recovery (SQL Server 2022 и SQL Server 2025): используйте функцию связей для репликации данных между SQL Server 2022 и SQL Server 2025 и SQL Managed Instance, вручную переключитесь на дополнительный экземпляр во время аварии, а затем вернитесь на основной узел после устранения аварийной ситуации. Либо SQL Server, либо SQL Managed Instance может быть изначально основным.

Вы можете продолжать использовать связь столько, сколько вам нужно — в течение нескольких месяцев или даже лет. И для вашего пути модернизации, если или когда вы готовы к миграции в Azure, ссылка позволяет значительно улучшить процесс миграции. Миграция по ссылке обеспечивает минимальное время простоя по сравнению со всеми другими доступными вариантами миграции, обеспечивая истинную миграцию через Интернет в SQL Managed Instance.

Вы можете использовать базы данных, реплицируемые через связь между SQL Server и Azure SQL Managed Instance для нескольких сценариев, например:

  • Аварийное восстановление
  • Использование служб Azure без миграции в облако
  • Разгрузка рабочих нагрузок только для чтения в Azure
  • Миграция на Azure
  • Копирование данных в локальной среде

Диаграмма, иллюстрирующая основной сценарий связи для Managed Instance.

Поддержка версий

Уровни служб "Общего назначения" и "Критически важный для бизнеса" Azure SQL Managed Instance поддерживают ссылку Managed Instance. Функция ссылки работает с выпусками Enterprise, Developer и Standard SQL Server.

Односторонняя репликация из SQL Server в Azure SQL Managed Instance общедоступна для каждой поддерживаемой версии SQL Server. Аварийное восстановление с двусторонней репликацией и откатом поддерживается, начиная с SQL Server 2022, и основано на политике обновления, с которой настроен ваш управляемый экземпляр SQL.

В следующей таблице перечислены функциональные возможности функции функции ссылки и минимальные поддерживаемые версии SQL Server:

Начальная первичная версия Операционная система (ОС) Варианты аварийного восстановления Минимальное требуемое обновление обслуживания
Управляемый экземпляр Azure SQL Windows Server и Linux для вторичной реплики экземпляра SQL Server Двунаправленный Настройка ссылки из Azure SQL Managed Instance, а также двунаправленная отработка отказа поддерживаются следующим образом:
— SQL Server 2025 и SQL MI с политикой обновления SQL Server 2025
— SQL Server 2022 и SQL MI с политикой обновления SQL Server 2022
SQL Server 2025 (17.x) Windows Server и Linux Двунаправленный SQL Server 2025 RTM (17.0.1000.7)
SQL Server 2022 (16.x) Windows Server и Linux Двунаправленный - SQL Server 2022 RTM (16.0.1000.6): создание ссылки из SQL Server 2022 на SQL MI
- SQL Server 2022 CU10 (16.0.4095.4): создание ссылки от SQL MI к SQL Server 20221
- SQL Server 2022 CU13 (16.0.4125.3): переключение связи с помощью Transact-SQL
SQL Server 2019 (15.x) Windows Server и Linux Только для целей перехода с SQL Server на SQL Managed Instance. SQL Server 2019 CU20 (15.0.4312.2)
SQL Server 2017 (14.x) Windows Server и Linux Только для целей перехода с SQL Server на SQL Managed Instance. SQL Server 2017 CU31 (14.0.3456.2) и соответствующий SQL Server 2017 Azure пакет подключения (14.0.3490.10)
SQL Server 2016 (13.x) Windows Server только Только для целей перехода с SQL Server на SQL Managed Instance. SQL Server 2016 SP3 (13.0.6300.2) и соответствующий SQL Server 2016 Azure Пакет подключения (13.0.7000.253)
SQL Server 2014 (12.x) и более ранних версий Неприменимо Неприменимо Версии до SQL Server 2016 не поддерживаются.

1 Создание ссылки с SQL Server 2022 в качестве начального основного поддерживается начиная с версии RTM SQL Server 2022, а создание ссылки с Azure SQL Managed Instance в роли начального основного поддерживается только, начиная с SQL Server 2022 CU10. Если вы создаете ссылку с первичного сервера SQL Managed Instance, понижение версии SQL Server ниже CU10 не поддерживается, пока ссылка активна, так как это может вызвать проблемы после переключения отказа в любом направлении.

Версии SQL Server, предшествующие SQL Server 2016 (SQL Server 2008–2014), не поддерживаются, так как эта функция зависит от технологии распределённых групп доступности, которая была представлена в SQL Server 2016 году.

Помимо поддерживаемой версии SQL Server вам потребуется:

  • Сетевое подключение между экземпляром SQL Server и управляемым экземпляром. Если SQL Server работает локально, используйте VPN-ссылку или Azure ExpressRoute. Если SQL Server работает на виртуальной машине Azure, разверните виртуальную машину в той же виртуальной сети, что и управляемый экземпляр, или используйте пиринг между виртуальными сетями для подключения двух отдельных подсетей.
  • Развертывание Azure SQL Managed Instance, подготовленное для любого уровня служб.

Вам также потребуется следующее:

Инструмент Примечания.
Последняя версия SSMS SQL Server Management Studio (SSMS) — самый простой способ использовать ссылку на Managed Instance, так как предоставляет мастеров, которые автоматизируют настройку ссылки.
Последняя версия Az.SQL или Azure CLI Для установки ссылок с помощью скриптов.

Примечание.

Функция связи Managed Instance доступна во всех глобальных регионах Azure и национальных и государственных облаках.

Функция связи для SQL Managed Instance работает путем создания распределенной группы доступности между SQL Server и Azure SQL Managed Instance. Решение поддерживает системы с одним узлом или без существующих групп доступности или нескольких систем узлов с существующими группами доступности.

Схема, показывающая, как работает функция ссылки для Управляемого экземпляра SQL с помощью технологии распределенной группы доступности.

Частное подключение, например VPN или Azure ExpressRoute, подключает локальную сеть и Azure. Если вы размещаете SQL Server на виртуальной машине Azure, внутренняя сеть Azure может подключить виртуальную машину и управляемый экземпляр SQL, например, с использованием пиринга виртуальной сети. Две системы устанавливают доверие с помощью проверки подлинности на основе сертификатов, где SQL Server и SQL Managed Instance обмениваются открытыми ключами их соответствующих сертификатов.

Azure SQL Managed Instance поддерживает несколько ссылок из одного или разных источников SQL Server на один Azure SQL Managed Instance. Количество ссылок зависит от количества баз данных, которые управляемый экземпляр может размещать одновременно — до 100 ссылок на уровни служб "Общего назначения" и "Критически важный для бизнеса", а также 500 ссылок на обновление уровня общего назначения следующего поколения. Один экземпляр SQL Server может создавать несколько параллельных связей синхронизации баз данных с несколькими управляемыми экземплярами SQL, даже в разных регионах Azure с связью "один к одному" между базой данных и управляемым экземпляром.

Сведения о настройке начальной среды см. в руководстве по подготовке среды SQL Server для использования функции ссылки с SQL Managed Instance:

После выполнения начальных требований среды создайте ссылку с помощью автоматизированного мастера в SQL Server Management Studio (SSMS) или настройте ссылку вручную с помощью скриптов:

После создания ссылки выполните рекомендации по поддержанию ссылки:

Аварийное восстановление

Ссылка на экземпляр Managed Instance обеспечивает аварийное восстановление, при котором в случае аварии вы можете вручную переключить рабочую нагрузку с основного на вторичный. Чтобы приступить к работе, изучите возможности аварийного восстановления в контексте Managed Instance.

От SQL Server 2016 до SQL Server 2019 основной сервер всегда является SQL Server, а переключение при отказе на вторичный управляемый экземпляр SQL Server является однонаправленным процессом. Возврат операций к SQL Server после отказа не поддерживается. Однако данные можно восстановить в SQL Server с помощью таких параметров перемещения данных, как транзакционная репликация или экспортируя bacpac.

С помощью SQL Server 2022 и SQL Server 2025 можно назначить начальным первичным узлом либо SQL Server, либо SQL Managed Instance (с соответствующей политикой обновления update policy) и установить ссылку как из SQL Server, так и из SQL Managed Instance. Вы можете выполнить возврат рабочих нагрузок на основной сайт и вторичный сайт, достигая настоящего двустороннего аварийного восстановления.

При возврате к SQL Server можно выбрать выполнение этой операции:

Схема сценария аварийного восстановления.

Использование служб Azure

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

Разгрузка рабочих нагрузок в Azure

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

Ссылка ограничена областью базы данных (по одной ссылке на одну базу данных), позволяя выполнять консолидацию и деконсолидацию нагрузок в Azure. Например, можно реплицировать базы данных из нескольких экземпляров SQL Server в одном развертывании SQL Managed Instance в Azure (консолидация) или реплицировать базы данных из одного экземпляра SQL Server в несколько управляемых экземпляров в соотношении "один-к-одному" между базой данных и управляемым экземпляром для любого региона Azure по всему миру (деконсолидация). Последний вариант обеспечивает эффективный способ быстрого переноса ваших рабочих нагрузок ближе к клиентам в любом регионе мира, которые можно использовать в качестве реплик с доступом только для чтения.

Переход на Azure

Эта функция также упрощает переход с SQL Server на SQL Managed Instance, что позволяет:

  • Наиболее эффективная миграция с минимальным простоем по сравнению со всеми другими решениями, доступными сегодня.
  • Полноценная онлайн миграция на экземпляр SQL Managed Instance на любом уровне обслуживания.

Поскольку функция ссылки обеспечивает миграцию с минимальными простоями, вы можете выполнить миграцию на управляемый экземпляр, сохраняя основную рабочую нагрузку в сети. Хотя в настоящее время можно осуществить онлайн-миграции на уровень служб общего назначения с помощью других решений, данная функция является единственным решением, которое позволяет выполнять истинные онлайн-миграции на уровень служб Критически важный для бизнеса. Подробное сравнение миграции между миграцией со ссылкой и службой воспроизведения журналов см. в статье Compare Managed Instance ссылку на LRS.

Примечание.

Теперь вы можете перенести экземпляр SQL Server, подключенный к Azure Arc, в управляемый экземпляр Azure SQL непосредственно посредством портала Azure. Дополнительные сведения см. в разделе Migrate Azure SQL Managed Instance.

Копирование данных в локальной среде

С помощью SQL Server 2022 и более поздних версий вы можете установить ссылку из SQL Managed Instance на SQL Server, разблокировать дополнительные сценарии, такие как создание реплики базы данных почти в режиме реального времени за пределами Azure, тестирование планов непрерывности бизнес-процессов и соответствие требованиям соответствия требованиям.

Автоматическое резервное копирование

После конфигурации подключения с Azure SQL Managed Instance базы данных на SQL Managed Instance автоматически создаются резервные копии данных в хранилище Azure, независимо от того, является ли SQL Managed Instance основным. Автоматические резервные копии со ссылкой принимают полные резервные копии журналов транзакций, но не разностные резервные копии, что может привести к более длительному времени восстановления.

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

Безлицензионная пассивная реплика для восстановления после сбоев

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

Чтобы приступить к работе, ознакомьтесь с нелицензированной пассивной репликой.

Соотношение затрат и выгод

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

Преимущество проявляется по-разному для модели оплаты по мере использования и Azure Hybrid Benefit. Для модели выставления счетов по мере использования скидки на виртуальные ядра применяются к вашему счету. Если вы используете Azure Hybrid Benefit для пассивной реплики, количество виртуальных ядер, используемых вторичной репликой, возвращается в пул лицензий.

Например, как клиент с оплатой по факту использования, если у вас есть 16 виртуальных ядер, назначенных вторичному экземпляру, скидка на 16 виртуальных ядер появится в счете, если вы назначите дополнительный экземпляр для гибридного режима отказоустойчивости.

В другом примере, если у вас есть 16 лицензий на Azure Hybrid Benefit и ваш дополнительный управляемый экземпляр SQL использует 8 виртуальных ядер, после назначения этого дополнительного экземпляра для гибридного резервирования, 8 виртуальных ядер возвращаются в ваш пул лицензий для использования с другими развертываниями Azure SQL.

Точные условия преимущества гибридных прав на отработку отказа можно найти в разделе SQL Server — права на отработку отказа на странице условий лицензирования SQL Server в интернете.

Ограничения

При использовании ссылки следует учитывать следующие ограничения.

К ограничениям доступности поддержки версий относятся:

  • Вы не можете использовать Windows 10 и 11 клиентов для размещения экземпляра SQL Server, так как невозможно включить функцию группы доступности AlwaysOn, необходимую для ссылки. Необходимо разместить экземпляры SQL Server на Windows Server 2012 или более поздней версии.
  • Функция ссылки не поддерживает SQL Server версии 2008–2014, так как подсистема SQL этих выпусков не поддерживает встроенную поддержку распределенных групп доступности, необходимых для ссылки. Выполните обновление до более новой версии SQL Server, чтобы использовать ссылку.
  • Репликация данных и переключение на резервный с SQL Managed Instance на SQL Server 2022 или SQL Server 2025 не поддерживается экземплярами, настроенными с помощью политики обновления Always-up-to-date. Экземпляр должен быть настроен с соответствующей политикой обновления SQL Server 2022 или SQL Server 2025 , чтобы выполнить следующие действия:
    • Установите ссылку from SQL Managed Instance to SQL Server.
    • Переключение при отказе с SQL Managed Instance на SQL Server.
  • Хотя вы можете установить ссылку из SQL Server 2022 или SQL Server 2025 на SQL managed instance, настроенную с помощью политики обновления Always-up-to-date update policy, после выполнения переключения на SQL Managed Instance вы не сможете реплицировать данные или выполнить возврат в SQL Server.

Ограничения репликации данных включают:

  • Вы можете реплицировать только пользовательские базы данных. Репликация системных баз данных не поддерживается.
  • Решение не реплицирует объекты уровня сервера, задания агента или имена входа пользователей из SQL Server в SQL Managed Instance.
  • Для версий SQL Server 2016, 2017 и 2019 репликация пользовательских баз данных с экземпляров SQL Server в развертывания SQL Managed Instance — это один из способов. Вы не можете реплицировать пользовательские базы данных из развертываний SQL Managed Instance обратно в экземпляры SQL Server через ссылку. Двусторонняя репликация с возвратом на экземпляр SQL Server доступна только для SQL Server 2022 или SQL Server 2025, если SQL Managed Instance настроен с соответствующей политикой обновления .
  • Настройка ссылки из SQL Managed Instance на SQL Server не поддерживается для SQL Managed Instance баз данных, которые уже связаны.

К ограничениям конфигурации относятся следующие:

  • Если на сервере несколько экземпляров SQL Server, можно настроить ссылку для каждого экземпляра, но необходимо настроить каждый экземпляр для использования отдельной конечной точки зеркального отображения базы данных с выделенным портом на экземпляр. Только экземпляр по умолчанию должен использовать порт 5022 для конечной точки зеркального отображения базы данных.

  • Для одной связи Managed Instance можно поместить только одну базу данных в одну группу доступности. Однако можно реплицировать несколько баз данных в одном экземпляре SQL Server, установив несколько ссылок.

    Примечание.

    Если вы заинтересованы в участии в ограниченной предварительной версии изменения этого поведения, заполните следующую форму.

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

  • Одна SQL Managed Instance общего назначения или критически важных для бизнеса поддерживает до 100 ссылок, а один SQL Managed Instance общего назначения следующего поколения поддерживает до 500 ссылок, из одного или нескольких источников SQL Server.

  • Ссылка Managed Instance может реплицировать базу данных любого размера, если она соответствует выбранному размеру хранилища целевого SQL Managed Instance развертывания.

  • Аутентификация связи между SQL Server и SQL Managed Instance основана на сертификатах и доступна только через обмен сертификатами. Невозможно использовать Windows authentication для установления связи между экземпляром SQL Server и управляемым экземпляром SQL.

  • Вы можете установить ссылку с SQL Managed Instance только через VNet-local endpoint.

  • Для установления связи с управляемым экземпляром нельзя использовать ни общедоступную конечную точку, ни частную конечную точку.

  • Невозможно реплицировать базы данных с несколькими файлами журналов, так как SQL Managed Instance не поддерживает несколько файлов журналов.

К ограничениям функций относятся следующие:

  • Нельзя использовать группы отработки отказа с экземплярами, используюющими функцию ссылки. Вы не можете создать ссылку на управляемый экземпляр SQL, который является частью группы аварийного переключения, и наоборот, нельзя настроить группу аварийного переключения на экземпляре, на котором установлена ссылка.
  • Если вы используете отслеживание изменения данных (CDC), доставку журналов или диспетчер служб с базами данных, которые реплицируются на экземпляре SQL Server, то при миграции базы данных на развертывание SQL Managed Instance и во время отработки отказа на Azure клиенты должны подключаться, используя имя экземпляра текущей глобальной первичной реплики. Необходимо вручную перенастроить эти параметры.
  • Если вы используете репликацию транзакций в базе данных с установленной ссылкой, рассмотрите следующее:
    • Связанная база данных на вторичной реплике не может быть издателем в топологии транзакционной репликации.
    • Если вы переносите базу данных, настроенную как Publisher в топологии репликации транзакций с помощью ссылки, необходимо перенастроить базу данных как Publisher на целевом экземпляре после завершения миграции.
  • Если вы используете распределенные транзакции с базой данных, реплицируемой из экземпляра SQL Server, и в сценарии миграции в облако возможности координатора распределенных транзакций не будут переданы. Перенесенная база данных не может участвовать в распределенных транзакциях с экземпляром SQL Server, так как развертывание SQL Managed Instance в настоящее время не поддерживает распределенные транзакции с SQL Server. Для справки SQL Managed Instance сегодня поддерживает распределенные транзакции только между другими управляемыми экземплярами. Дополнительные сведения см. в статье Распределенные транзакции по облачным базам данных.
  • Если вы используете Transparent Data Encryption (TDE) для шифрования баз данных SQL Server, необходимо экспортировать ключ шифрования базы данных из SQL Server и отправить его в Azure Key Vault, а также настроить параметр BYOK TDE в SQL Managed Instance перед созданием ссылки.
  • Если акселерированное восстановление базы данных отключен в исходном SQL Server 2019 и более поздних экземплярах, его нельзя включить после миграции на Azure SQL Managed Instance. Кроме того, если для хранилища постоянных версий (PVS) не задано PRIMARYзначение, можно столкнуться с проблемами с операциями восстановления в целевом управляемом экземпляре SQL.
  • Если Service Broker отключен в экземпляре исходного SQL Server, то после миграции не удается использовать компонент Service Broker в целевом управляемом экземпляре SQL.
  • Невозможно связать SQL Managed Instance базы данных, зашифрованные с помощью ключей TDE, управляемых службой, с SQL Server. Можно связать зашифрованную базу данных с SQL Server только в том случае, если вы зашифровали его с помощью ключа, управляемого клиентом, и целевой сервер имеет доступ к тому же ключу, который используется для шифрования базы данных. Дополнительные сведения см. в разделе Set up SQL Server TDE with Azure Key Vault.
  • Невозможно установить связь между SQL Server и SQL Managed Instance, если функциональность, используемая в экземпляре SQL Server, не поддерживается в SQL managed instance. Например:
    • Невозможно реплицировать базы данных с таблицами файлов и файловыми потоками, так как SQL Managed Instance не поддерживает таблицы файлов или потоки файлов.
    • Базы данных, использующие In-Memory OLTP, можно реплицировать только для SQL Managed Instance в уровне служб Business Critical, так как уровень служб General Purpose не поддерживает In-Memory OLTP. SQL Managed Instance не поддерживает базы данных с несколькими In-Memory OLTP-файлами, и их невозможно реплицировать.

Попытка добавить неподдерживаемые функции в реплицированную базу данных в:

  • SQL Server 2017, 2019 и 2022 вызывает ошибку.
  • SQL Server 2016 приводит к нарушению ссылки, которую затем необходимо удалить и повторно создать.

Полный список различий между SQL Server и SQL Managed Instance смотрите в разделе: T-SQL различия между SQL Server и Azure SQL Managed Instance.

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

Дополнительные сведения о ссылке:

Для других сценариев репликации и миграции рассмотрите: