SQL Server 2016 + FILESTREAM + Windows Defender = 恒定的 CPU 和磁盘使用率

醉码猴

我的问题是几周前在 Windows 更新后开始的,我在互联网上找不到有关该问题的任何信息。我在最新的 Windows 10 计算机上安装了一个 SQL Server 2016 Express 实例,该实例具有一个包含 FILESTREAM 文件组的数据库和一个全文搜索目录。据我所知,数据库已附加并正常运行,Windows 事件日志中没有任何内容。但是,自从那次更新后,SQL Server 不断地在数据库上运行,不断地使用 CPU 和磁盘

我将数据库存储在机械硬盘上,CPU 使用率一直保持在 30% 左右,直到我关闭 SQL 实例。重新启动它只会暂时有帮助,因为搅拌很快就会再次开始。请记住,这是在离线机器上(除了互联网连接)。一开始我以为我感染了病毒什么的,所以我关闭了服务器,然后将它从轨道上炸掉。我得到了一个新的 SSD,安装了 Windows 10,安装了 SQL Server 2016,更新了所有内容,获取了 MDF 和 LDF(和文件流文件夹),将它们移到新机器上,附加了数据库。一开始没有问题。然后它再次启动,尽管现在 CPU 使用率要低得多,可能是因为存储速度要快得多。

这是资源监视器中的样子: 在此处输入图片说明

这似乎与 Windows Defender 以某种方式有关,因为我可以开始扫描并查看同一数据库的 sqlservr.exe 句柄数量。

SQL Server 日志看起来像无穷无尽的页面: 在此处输入图片说明

并且一直以来,SSMS 活动监视器都没有显示任何流程或任何可以解释该活动的数据库明智信息。请记住,这是新安装的机器上的一个独立数据库,除了我之外没有连接任何客户端。

我已经查看了可能导致这种情况的更新,但我看不到任何明显的东西,现在我不知道该怎么做。我看到的唯一解决方案是降级到 SQL Server 2008 SP3,我知道它以前运行良好。我将不胜感激对此的任何帮助。

丹·古兹曼

SQL Server 错误日志中频繁出现的“正在启动数据库 'Abacus'”消息表明该数据库已设置为AUTO_CLOSE并且该数据库被频繁访问。数据库的这种不断打开和关闭会导致大量开销,并且可能是您看到的资源利用率高的原因。

简单的解决方法是关闭自动关闭:

ALTER DATABASE Abacus
SET AUTO_CLOSE OFF;

通常最好AUTO_CLOSE关闭数据库设置以避免不必要的开销。一个例外是托管成百上千个数据库的 SQL 实例,其中大多数都没有被积极使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Windows Defender-100%磁盘使用率

来自分类Dev

Windows 10 Defender防火墙MpsSvc和Internet共享服务(ICS)消耗大量CPU使用率

来自分类Dev

恒定的CPU使用率,无原因

来自分类Dev

在Windows Server 2016中打开Windows Defender时出错

来自分类Dev

重新安装Windows 10后,Windows Defender Service始终以20%的CPU使用率运行

来自分类Dev

消费类硬件上的恒定CPU使用率

来自分类Dev

C#测量多个处理器Windows Server上的进程CPU使用率

来自分类Dev

VsCode Server,高CPU使用率

来自分类Dev

Ubuntu的CPU使用率高于Windows

来自分类Dev

Windows 8.1高CPU使用率

来自分类Dev

Windows 10的额外CPU使用率

来自分类Dev

Visual Studio Debug 导致 SQL Server (x64) 高 CPU 使用率

来自分类Dev

大量磁盘和 CPU 使用率 [Kubuntu 18.04.2]

来自分类Dev

导出有关磁盘,CPU和内存利用率的SQL Server信息

来自分类Dev

导出有关磁盘,CPU和内存利用率的SQL Server信息

来自分类Dev

要显示的Shell脚本-内存使用率,磁盘使用率和CPU负载?

来自分类Dev

安装Windows SQL Express Server 2016

来自分类Dev

Filestream 和 BLOB 之间的 SQL Server (Transact-SQL) 区别

来自分类Dev

在Windows Server 2012上安装Windows Defender

来自分类Dev

Windows 10-Windows Update和90%以上的CPU使用率问题

来自分类Dev

使用SQL Server FILESTREAM GUID作为主键

来自分类Dev

使用SQL Server FILESTREAM GUID作为主键

来自分类Dev

Windows 10中“系统和压缩内存”的CPU使用率高的原因是什么?

来自分类Dev

Windows 7运行缓慢,CPU使用率和内存较低

来自分类Dev

Explorer.exe和DWM.exe的Windows 7 CPU使用率过高

来自分类Dev

如何减少Windows 7的大小及其CPU和内存使用率?

来自分类Dev

Windows 10 上的 Ubuntu 具有 100% CPU 使用率和“init”进程

来自分类Dev

使用SQL Server Standard的Windows 2016 Server中的用户会话缓慢

来自分类Dev

解除阻止用于MS SQL Server 2014的Windows 10 Defender防火墙

Related 相关文章

  1. 1

    Windows Defender-100%磁盘使用率

  2. 2

    Windows 10 Defender防火墙MpsSvc和Internet共享服务(ICS)消耗大量CPU使用率

  3. 3

    恒定的CPU使用率,无原因

  4. 4

    在Windows Server 2016中打开Windows Defender时出错

  5. 5

    重新安装Windows 10后,Windows Defender Service始终以20%的CPU使用率运行

  6. 6

    消费类硬件上的恒定CPU使用率

  7. 7

    C#测量多个处理器Windows Server上的进程CPU使用率

  8. 8

    VsCode Server,高CPU使用率

  9. 9

    Ubuntu的CPU使用率高于Windows

  10. 10

    Windows 8.1高CPU使用率

  11. 11

    Windows 10的额外CPU使用率

  12. 12

    Visual Studio Debug 导致 SQL Server (x64) 高 CPU 使用率

  13. 13

    大量磁盘和 CPU 使用率 [Kubuntu 18.04.2]

  14. 14

    导出有关磁盘,CPU和内存利用率的SQL Server信息

  15. 15

    导出有关磁盘,CPU和内存利用率的SQL Server信息

  16. 16

    要显示的Shell脚本-内存使用率,磁盘使用率和CPU负载?

  17. 17

    安装Windows SQL Express Server 2016

  18. 18

    Filestream 和 BLOB 之间的 SQL Server (Transact-SQL) 区别

  19. 19

    在Windows Server 2012上安装Windows Defender

  20. 20

    Windows 10-Windows Update和90%以上的CPU使用率问题

  21. 21

    使用SQL Server FILESTREAM GUID作为主键

  22. 22

    使用SQL Server FILESTREAM GUID作为主键

  23. 23

    Windows 10中“系统和压缩内存”的CPU使用率高的原因是什么?

  24. 24

    Windows 7运行缓慢,CPU使用率和内存较低

  25. 25

    Explorer.exe和DWM.exe的Windows 7 CPU使用率过高

  26. 26

    如何减少Windows 7的大小及其CPU和内存使用率?

  27. 27

    Windows 10 上的 Ubuntu 具有 100% CPU 使用率和“init”进程

  28. 28

    使用SQL Server Standard的Windows 2016 Server中的用户会话缓慢

  29. 29

    解除阻止用于MS SQL Server 2014的Windows 10 Defender防火墙

热门标签

归档