降低 Windows 备份 (Windows Server 2008 R2) 的 I/O 优先级

Hel*_*Sam 5 windows backup io

我有一个在 Windows Server 2008 R2 x64 机器上运行的 PostgreSQL。我已经安排了每天从 RAID 1 DB 磁盘到专用独立磁盘的备份。它们是 Dell PERC 6i 上的 SAS 15k。我正在使用内置的 Windows Server Backup。

问题是,无论何时启动备份过程,数据库性能都会受到影响。我会说性能降低了近 10 倍。

从资源监视器看,备份时磁盘队列在两位数范围内,白天小于1。备份期间磁盘活动约为 30-50MB/s,所以我猜硬件运行正常,尽管 wbengine.exe 占据了大部分部分。

我认为降低备份过程的 IO 优先级将是一个答案,但我找不到办法。调整进程 CPU 优先级似乎没有帮助。

Wes*_*ley 8

I/O 优先级受 Windows 中线程 CPU 优先级的影响。如需更深入的参考,请查看 Mark Russinovich 关于 Windows 内核的书籍。简短的回答是您必须更改调用进程的 CPU 优先级。您将希望您的进程优先级低于正常或空闲,以更改 I/O 以免对数据库使用产生负面影响。

在您的情况下,您可能希望调用一个低优先级的备份脚本,该脚本本身调用 wbadmin 或任何您的备份工具。

  • +1 用于 Windows Internals 参考。可能是我第二喜欢的话题。 (3认同)
  • @HelloSam 在脚本中使用 `start` 命令和 `/low` 开关以在空闲模式下启动应用程序。更多关于`start`的信息可以在这里找到(http://www.computerhope.com/starthlp.htm#03) (2认同)