3

我需要将大量数据(数百万个文件,TB 级数据)迁移到 SQL 集群。迁移过程被划分为每周迁移,每周有数百个新用户(即请求生成器)。

到目前为止,一切进展顺利,但最近我发现 SQL 集群开始表现得很奇怪。CPU 使用率稳定在 20% 左右,但 SQL 进程不断分配新内存,直到没有剩余内存(约 12GB)。发生这种情况时,该进程会“转储”所有内存并重新开始向 12GB 攀升。在此转储期间,通常会出现服务器无响应并最终超时的情况,而这在这周的迁移中是不可能发生的。

这种分配和转储行为是否常见于 SQL 集群?是否可以对其进行配置以使这种情况永远不会发生,或者至少不会使整个数据库拥塞?有人有大型移民工作的经验吗?

查看事件日志时,我发现在超时之前有一些 WMI 警告。我们正在使用 System Center Operations Manager 2007 来忽略系统,这可以解释这种行为吗?

感谢您的帮助!

4

1 回答 1

1

不,这不是正常行为。

SQL Server 将根据需要动态分配内存,并在面临压力时适当地释放内存。但是,它不应该转储全部内容。

您能否提供有关您的环境的更多详细信息并确定您的 SQL 内存配置是什么。

如果您需要详细的帮助,请随时给我发电子邮件,并请提供 DBCC 命令的结果。

DBCC memorystatus
于 2009-02-16T13:24:35.240 回答