У меня есть виртуальная сеть в Azure с частным подключением к конечной точке, настроенным для сервера MSSQL. Существует частная зона DNS, настроенная с записью A для подключения к частной конечной точке. Службы приложений, подключенные к виртуальной сети, могут подключаться к частному IP-адресу частной конечной точки MSSQL. Виртуальные машины, подключенные к виртуальной сети, разрешают и подключаются к частному IP-адресу для подключения к частной конечной точке MSSQL.
Можно ли заставить сервер SQL разрешать полное доменное имя для внешнего источника данных через виртуальную сеть, используя частную зону DNS, чтобы его подключение работало так же, как службы приложений или виртуальные машины?
Я пытаюсь создать внешний источник данных и внешнюю таблицу в DATABASE_A для запроса DATABASE_B.TABLE1 между двумя базами данных на одном сервере MSSQL.
-- используя DATABASE_A
СОЗДАТЬ ВНЕШНИЙ ИСТОЧНИК ДАННЫХ AppADataSrc
С
(
ТИП = РСУБД,
РАСПОЛОЖЕНИЕ = 'my-sqlserver.database.windows.net',
DATABASE_NAME = 'DATABASE_B',
УДОСТОВЕРЕНИЕ = MyDBScopedCredential,
);
СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ [dbo].[Table1]
( [EntityId] [int] НЕ NULL,
[GrpId] [char](36) NOT NULL)
С
(DATA_SOURCE = AppADataSrc);
Вместо того, чтобы подключаться к другой базе данных (DATABASE_B) на том же сервере с использованием общедоступного IP-адреса, я хочу, чтобы он подключался к базе данных через частное соединение. Использование частного IP-адреса в МЕСТО РАСПОЛОЖЕНИЯ
имущество СОЗДАТЬ ВНЕШНИЙ ИСТОЧНИК ДАННЫХ
приводит к тайм-ауту при запросе внешней таблицы. Если я включу «Разрешить службам и ресурсам Azure доступ к этому серверу», запрос на общедоступный IP-адрес будет работать. Однако я бы не хотел открывать SQL-сервер для всех других служб Azure.
Я нашел много документации о подключении к частной конечной точке для сервера MSSQL через виртуальную сеть с другими службами. Я не нашел ничего для подключения с сервера Azure MSSQL к частной конечной точке.