首页 > 解决方案 > 从 Azure 导出时,本地主机 SQL Server 数据库非常慢并且站点超时

问题描述

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

当我从本地或在我的测试/生产环境中运行该数据库时,该数据库非常快。我的代码是“可靠的生产代码”(索引、分页),这意味着我不会做任何疯狂的事情,这适用于非常繁重的生产负载。

但是,当我在本地导入这个数据库时,它非常非常慢(页面需要 10-20 秒才能加载,或者只是失败)。这导致我基本上无法在本地运行我的应用程序。这是我收到的示例错误(DK 错误消息,但典型错误 - 请参阅等待操作超时。ASP):

在此处输入图像描述

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

知道问题是什么吗?为什么我的 localhost 这么慢,几乎不能运行正常的查询?

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

在此处输入图像描述

保存到本地桌面:

在此处输入图像描述

我导入(localdb)\MSSQLLocalDB

在此处输入图像描述

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

标签: sqlsql-serverasp.net-mvcazure-sql-database

解决方案


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

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


推荐阅读