【发布时间】:2018-06-15 21:21:52
【问题描述】:
我有一个这样的备份查询:
BACKUP DATABASE @temp_baza TO DISK = @temp_bak
BACKUP LOG @temp_baza TO DISK = @temp_log
它是这样由sqlcmd运行的:
sqlcmd -l 120 -S %SQL_SERVER% -i %KOPIA_KATALOG%backupPELNY.sql
-o %KOPIA_KATALOG%output_PELNY.txt -v NAZWA_BAZY="%NAZWA_BAZY%"
-v KOPIA="%PELNY_KOPIA%\"
在output_PELNY.txt我有这样的结果:
BACKUP DATABASE successfully processed 645127 pages in 2819.651 seconds (**1.787 MB/sec**).
或
BACKUP DATABASE successfully processed 26338 pages in 227.348 seconds (**0.905 MB/sec**).
主数据库在一个磁盘上,备份在第二个磁盘上。
当我使用资源管理器在这两个磁盘之间复制文件时,我得到了大约 100 MB/s 的传输速度。
问题:
为什么备份速度这么慢 - 我的意思是不到 3MB/s?
备注:
- Windows 2012 Essential + SQL Server 2008 R2 EXPRESS
- 英特尔至强 E3-1270 v3 + 16GB 内存
【问题讨论】:
-
如果您使用 SSMS(gui)运行备份,它是否有同样的速度问题?是否有默认打开备份压缩或加密的设置?由于您有 100 MB/s 的磁盘,在备份期间是否会受到 CPU 的限制?备份期间实际可用的 RAM 多少,即退回服务并尝试备份。这些只是一些想法。
-
我只是忙,我会尝试使用 SSMS(gui 不是通过 SQLCMD 编写的脚本)
-
... 我试图检查它是否与 CPU 有关,所以我只是使用 7za v18.5.0.0 来检查这将如何压缩 1GB 文件。所以为了测试我使用开放硬件监视器,这就是我可以说的:这个 CPU 永远不会使用超过 50% 的单个 CORE 并且永远不会超过 1.8GHz,其中最大值为 3.7GHz CPU 温度约为 49 摄氏度风扇速度是大约 6000 RPM 是否过热?
-
没有压缩或加密。在这个系统上,总共有 16GB RAM,大约 50% 是免费的。
-
目前我已经使用 SQL 2017 Express 升级了系统如果我使用 SSMS (GUI),那么在 Windows 性能监视器中,每个备份文件的读取速度为 7MB/s + 7MB/s 写入速度......在同时处理器利用率约为 1%,处理器时钟仅为 0,7 Ghz。所以我测试我的CPU是否有问题。我怎么做测试?当备份使用 SSMS 完成工作时,处理器仅使用了 1%,我使用 LZM2 和 8 线程运行 7Zip,CPU 自动升至 90% 和 3.3GHz。
标签: sql-server database backup database-backups