Azure链接表需要防火墙规则吗?

时间:2020-08-19 01:59:47

标签: sql-server azure-sql-database linked-server

数据库A和数据库B都位于同一Azure服务器上:myhost.database.windows.net。我正在实现链接表以从DatabaseB内的DatabaseA访问表。

如下:

CREATE EXTERNAL TABLE ext.Customers
(   
  [CustomerID] int NOT NULL,
  [CustomerName] varchar(50) NOT NULL,
  [Company] varchar(50) NOT NULL
)
WITH
( 
  DATA_SOURCE = MyElasticDBQueryDataSrc,
  SCHEMA_NAME = N'dbo',  
  OBJECT_NAME = N'Customers'  
)

但是,当我第一次尝试访问链接表时,遇到了40.x.x.x地址的防火墙访问冲突。奇怪,但是可以,我会配合。我添加了规则。第二天晚上,我收到另一个针对40.x.x.x地址的防火墙访问冲突。嗯,这变得不可行了。我需要这些链接表可以24x7全天候可用,并且我无法继续手动添加这些防火墙规则。有几个问题-

  1. 为什么首先需要防火墙规则?跨数据库访问不应该使用内部10.x.x.x VNet吗?

  2. 我需要做一些特殊的事情来配置链接以使用内部VNet吗?

  3. 如果无法使用内部VNet,是否有一个已定义的40.xxx地址列表,该列表可以全面覆盖40.x IP地址的整个范围,我需要设置该IP地址以保持此链接的正常运行? / p>

1 个答案:

答案 0 :(得分:1)

似乎您尚未在数据库服务器上启用对Azure服务的访问。

您可以从“防火墙和虚拟网络”刀片启用此功能。

enter image description here

无法使用内部VNet IP地址配置访问权限。

如果您不愿意允许访问所有Azure服务,则可以将防火墙配置为针对配置数据库的区域选择性地允许AzureSQL的IP地址范围。

可以下载here

列出按地区列出的Azure IP范围和服务标签。

如果您遇到任何其他问题,请在此处发布。