小编Dha*_*ari的帖子

清除数据的最快方法是什么?

设想:

我们有两个表Tbl1&Tbl2在订阅服务器上。在Tbl1正在从出版商复制的Server A,它有两个触发器-插入和更新。触发器将数据插入和更新到Tbl2.

现在,我们必须清除(大约 9 亿条记录),Tbl2其中总共有 1000+ 万条记录。下面是一个月到一分钟的数据分布。

  • 一个月 - 14986826 行
  • 一天 - 483446 行
  • 一小时 - 20143 行
  • 一分钟 - 335 行

我在找什么;

在没有任何生产问题、数据一致性和可能没有停机时间的情况下清除该数据的最快方法。所以,我想按照以下步骤操作,但卡住了:(

脚步:

  1. BCP 从现有表 Tbl2 中取出所需的数据(大约 1 亿条记录,可能需要大约 30 分钟)。
    • 假设我在 1Fab2018 晚上 10:00 开始做活动,它在 1Fab2018 晚上 10:30 结束。到活动完成时,表 Tbl2 将获得成为 delta 的新记录
  2. 在数据库中创建一个名为 Tbl3 的新表
  3. 导出数据中的 BCP 到新创建的表 Tbl3(大约 1 亿条记录,可能需要大约 30 分钟)
  4. 停止复制作业
  5. 一旦 BCP-in 完成,使用 tsql 脚本插入新的增量数据。

  6. 挑战是 -如何处理增量“更新”语句? …

trigger sql-server archive

18
推荐指数
1
解决办法
1万
查看次数

如何查找 SQL Server 安装介质属于哪个版本

如果不安装 SQL Server 媒体 2008 和 2012,我们如何知道媒体属于某个版本(如 Developer、Standard 或 Enterprise)?

sql-server-2008 sql-server sql-server-2012

7
推荐指数
1
解决办法
6819
查看次数