从Azure导出时,本地主机SQL Server数据库非常慢并且站点超时

时间:2019-07-12 17:10:53

标签: sql sql-server asp.net-mvc azure-sql-database

我在Azure上有一个大约500mb的数据库,大约50个表以及一些具有100k +记录的表。具有约1000k条记录的单个表。这不是一个大数据库(大约20-50 DTU)。我有一个在此数据库上运行的ASP.NET MVC应用程序。

当我从本地或在测试/生产环境中运行此数据库时,该数据库非常快。我的代码是“可靠的生产代码”(索引,分页),这意味着我没有做任何疯狂的事情,并且可以在相当大的生产负荷下工作。

但是,当我在本地导入此数据库时,它非常非常慢(页面加载需要10到20秒,否则就会失败)。这导致我基本上无法在本地运行我的应用程序。这是我得到的示例错误(DK错误消息,但典型错误-参见The wait operation timed out. ASP):

enter image description here

当我在主应用程序之外运行查询时,我遇到相同的问题。我99%的肯定这是数据库问题,而不是应用程序问题,因为当我运行脚本时,它也非常慢。

有什么问题吗?为什么我的本地主机如此慢,以至于无法勉强运行普通查询?

这是我创建本地数据库的方式:

enter image description here

保存到本地桌面:

enter image description here

我导入到(localdb)\MSSQLLocalDB中:

enter image description here

等待这种情况发生,一切都已确认。然后,我将连接字符串更改为此数据库。

1 个答案:

答案 0 :(得分:0)

我怀疑您没有足够的 RAM 来托管您自己的服务器。我遇到了这个问题,在 Windows 10 机器上本地托管具有 8GB RAM 的 MSSQL 服务器 2012,使用 Core i7 第 10 代。有时没有问题,但大多数情况下我的查询响应时间非常慢,甚至超时。这是我的开发机器,我注意到所有 RAM 都被消耗掉了,仅从开发开始,没有任何数据库连接。所以我怀疑也没有足够的内存来查询数据库。

我将 RAM 增加到 32GB(但 16GB 就足够了),问题解决了。