gpt4 book ai didi

sql-server - 如何在不可行的负载下模拟 SQL Server?

转载 作者:行者123 更新时间:2023-12-04 06:12:54 25 4
gpt4 key购买 nike

我们公司目前正在 Beta 测试一个应用程序,该应用程序使用我们的 SQL Server 2008 机器作为后端。

有一天,我们的服务器承受着严重的压力,以至于恢复它的唯一方法就是重新启动。

在这段繁重的负载期间,我们在应用程序中发现了一个有趣的错误,当后端数据库超时时就会表现出来。

现在为了能够向公司发送一些不错的堆栈跟踪数据和屏幕截图,我需要复制错误..

如何将 SQL 服务器置于无法工作的压力下/使所有查询超时?

最佳答案

我想模拟 Sql 服务器死锁和超时。死锁很难复现,但是sql客户端超时比较容易复现。

BEGIN TRANSACTION
SELECT TOP 1 * FROM MyTable WITH (TABLOCKX, HOLDLOCK)
ROLLBACK TRANSACTION

这将锁定表,任何选择查询都将超时。超时值取决于客户端的库设置。

如果想锁表一段时间,可以使用waitfor延迟( https://stackoverflow.com/a/798234/437961 )
BEGIN TRANSACTION
SELECT TOP 1 * FROM MyTable WITH (TABLOCKX, HOLDLOCK) WAITFOR DELAY '00:05'
ROLLBACK TRANSACTION

关于sql-server - 如何在不可行的负载下模拟 SQL Server?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7558531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com