我通过在 Azure SQL 数据库服务器上的防火墙设置中将“拒绝公共网络访问”旋钮设置为“是”来启用专用链接。除了外部数据源(外部表)外,一切都按预期工作。外部表只是指向属于同一服务器的另一个 Azure SQL 数据库中的表的链接。在我启用私人链接之前,一切正常。如果我尝试查询外部表,则会收到以下错误消息:
“从 [mydbserver].database.windows.net.[mydbname] 检索数据时出错。收到的基本错误消息是:'原因:与 SQL Server 建立连接时发生特定于实例的错误。连接被拒绝,因为拒绝公共网络访问设置为是 ( https://docs.microsoft.com/azure/azure-sql/database/connectivity-settings#deny-public-network-access )。要连接到此服务器,请从您的内部使用专用终结点虚拟网络(https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database)。 "
我在文档中找不到任何关于外部数据源和外部表与私有链接设置相结合的任何限制。
使用标准方式创建的外部表:“CREATE EXTERNAL DATA SOURCE”和“CREATE EXTERNAL TABLE”。我也尝试在启用私有链接后重新创建数据源和表,但错误仍然存在......