无法从辅助角色连接到SQL Azure主服务器

时间:2011-09-02 10:03:57

标签: sql azure master

我们目前正在针对SQL Azure进行开发,并且(未成功)尝试将辅助角色指向SQL Azure中的master数据库,以便自动执行需要master的数据库操作。

不幸的是,这似乎不起作用。

启用了一些背景:“允许其他Windows Azure服务访问此服务器”,并且我们设置了防火墙规则来启用此功能。

我们怀疑它可能是一个缺少防火墙规则的关键。我们的工作者角色与其他SQL azure dbs相反,目前不是针对主人...

如果有人能指出我正确的方向,我将不胜感激!

干杯, 伊阿古

1 个答案:

答案 0 :(得分:2)

master数据库的问题原来是一个红色的鲱鱼。真正的问题是我使用System.Data.SqlClient和Microsoft.SqlServer.Management对象来对主服务器运行SQL批处理脚本(下面样式中的代码)。

var serverConnection = new ServerConnection(sqlConnection);
var server = new Server(serverConnection);
server.ConnectionContext.ExecuteNonQuery(sql);

经过多次撞墙后,问题发现是使用这些库所需的dll在Azure中无效(我们不断收到有关缺少依赖项的错误)。

最后,我们的解决方案是将批处理脚本分解为多个下标(实质上是在GO语句所在的地方分成部分)并使用标准ADO.NET对象运行。事实证明这是一个更好,更通用的解决方案,所以它毕竟对我们来说是好的!