您可以在查询期间增加Azure中SQL实例的功能吗?

时间:2017-10-27 09:48:39

标签: azure azure-sql-database

我的查询花费的时间比预期的要长很多。它已经运行了一个小时。如果我通过增加DTU来增加SQL服务器的功能,它是否会提高查询速度,还是会断开数据库连接/只对后续查询生效?

3 个答案:

答案 0 :(得分:4)

如果您使用的是服务器登录,那么扩展数据库层将断开您的连接并回滚打开的事务。包含的数据库用户不会发生这种情况,因此建议在SQL Azure中使用这些登录。

在地理复制故障转移期间,服务器登录用户也会发生同样的情况。

请考虑检查查询的查询计划。可能需要优化查询。索引可能是必需的。您可能会发现代价高昂的假脱机操作员,排序警告等。

希望这有帮助。

答案 1 :(得分:2)

原来答案是否。

我试过了几分钟后我在SQL Server Management Studio中遇到此错误,当我的查询因此错误而终止时:

  

Msg 40197,Level 20,State 1,Line 8该服务遇到了   处理您的请求时出错。请再试一次。错误代码40549. Msg   0,级别20,状态0,行7电流发生严重错误   命令。结果(如果有的话)应该被丢弃。

此时查询已运行了一个多小时。

答案 2 :(得分:0)

  

如果我通过增加DTU来增加SQL服务器的功能,它是否会提高查询速度,还是会断开数据库连接/仅对后续查询生效?

效果将显示only after upgrade process completes and further there is no downtime during this process with some caveats.

  

更改数据库的服务层和/或性能级别会在新的性能级别创建原始数据库的副本,然后将连接切换到副本。在此过程中没有数据丢失,但在我们切换到副本的短暂时刻,与数据库的连接被禁用,因此可以回滚一些正在进行的事务。此窗口有所不同,但平均不到4秒,超过99%的情况下不到30秒。如果在禁用连接时有大量的交易在飞行中,则此窗口可能会更长。