sql-server - 将海量数据迁移到 SQL

标签 sql-server timeout migration wmi cluster-computing

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

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

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

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

感谢您的帮助!

最佳答案

不,这不是正常行为。

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

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

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

DBCC memorystatus

关于sql-server - 将海量数据迁移到 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/553249/

相关文章:

sql - 改进 sql 中的文本搜索

GDB连接超时

ruby-on-rails - 在 Rails 迁移中使用向上/向下与更改/可逆方法有什么区别吗?

ruby-on-rails - 通过迁移或psql设置默认hstore列键值对

laravel - SQLSTATE[42S01] : Base table or view already exists: 1050 Why I can not drop the table

sql-server - 删除 SQL Server 2016 中表列的始终生成的标识

sql-server - sql回滚时如何重置自增Id

php - IOS 应用程序、搜索框和 SQL 数据库

vb.net - 在 Windows 窗体应用程序中设置 'Timeout' 功能

javascript - 是否可以在不使用 setTimeout() 函数的情况下获取粘贴的文本?