在设置RDMS外部数据源和表时,如下所示:
undefined
如果执行如下所示的SELECT语句:
CREATE EXTERNAL DATA SOURCE preview
WITH
(
TYPE=RDBMS,
LOCATION= 'xxxxxxxx.database.windows.net',
DATABASE_NAME = 'preview',
CREDENTIAL= preview
)
GO
CREATE SCHEMA preview;
GO
GO
CREATE EXTERNAL TABLE preview.entity_types
(
entity_type_id int NOT NULL,
entity_type_name varchar(128) NOT NULL
)
WITH (DATA_SOURCE=preview);
GO
您收到这样的错误:
从xxxxxxxx.database.windows.net.preview检索数据时出错。的 收到的基本错误消息是:'无法打开服务器'xxxxxxxx' 登录要求。 IP地址为``xxx.xxx.xxx.xxx''的客户端为 不允许访问服务器。要启用访问,请使用Windows Azure管理门户或在主服务器上运行sp_set_firewall_rule 数据库以为此IP地址或地址创建防火墙规则 范围。此更改最多可能需要五分钟的时间 效果。”
我知道如何设置防火墙规则以启用对客户端IP地址“ xxx.xxx.xxx.xxx”的访问。但是我认为IP是动态的,它可能会改变,因此总有一天会停止工作。
那么,哪种方法才允许访问客户端SQL Azure数据库?
答案 0 :(得分:1)
如果要在Azure SQL数据库中配置弹性查询(跨数据库查询),并且在Azure SQL数据库防火墙规则上将“允许对Azure服务的访问”设置为“开”,则该方法应该起作用。这样,当Azure SQL数据库更改其IP地址时,弹性查询不会失败。
配置Azure SQL数据库防火墙以允许弹性查询的更受限制的方法当前不存在。您可以对该功能here进行投票,以便将来Azure SQL数据库团队可以考虑使用它。