如何在SqlServer中快速有条件删除海量数据
在SQLSERVER删除几百万到几千万数据是显的很慢,分析了一下,提了一些以下意见,或许对很多人有用,再者也好长没写过BLOG了,一起探讨一下。
如果你的硬盘空间小,并且不想设置数据库的日志为最小(因为希望其他正常的日志希望仍然记录),而且对速度要求比较高,并清除所有的数据建议你用turncate table1,因为truncate 是DDL操作,不产生rollback,不写日志速度快一些,然后如果有自增的话,恢复到1开始,而delete会产生rollback,如果删除大数据量的表速度会很慢,同时会占用很多的rollback segments,同时还要记录下G级别的日志 ;当然如果有条件删除比如where time<2006-3-10 怎么办,能不能不记录日志用delete,回答是不行的,SQL Server 引擎在设计上就会对 Delete 操作进行日志记录。至今没有办法强制制定某一些语句不记录到日志中,如果在执行 Delete Table1 where Time < 2006-3-10 由于涉及的记录比较多,所以日志记录也相应很大(3-4G),如果可行,我建议用以下方式:
选出您所需要保留的记录到新的表。如果您使用 Full Recovery Mode
根据SELECT INTO的记录数,日志可能会比较大
Select * into Table2 From Table1 Where Time > = 2006-03-10
然后直接Truncate Table1。无论何种恢复模式都不会进行日志记录
Truncate table Table1
最后对Table2进行改名为Table1
EC sp_rename Table2, Table1
如何在SqlServer中快速有条件删除海量数据相关推荐
- 我是如何在SQLServer中处理每天四亿三千万记录的
原文地址:http://www.cnblogs.com/marvin/p/HowCanIHandleBigDataBySQLServer.html 首先声明,我只是个程序员,不是专业的DBA,以下这篇 ...
- 请看:我是如何在SQLServer中处理每天四亿三千万记录的
2019独角兽企业重金招聘Python工程师标准>>> 小中午,无意间读到这篇博客,觉得,文中作者在处理海量数据写入方面,所做的一些尝试,或许可以给同道朋友提供一些帮助,与君共勉. ...
- 如何在SQLServer中处理每天四亿三千万记录的
项目背景 这是给某数据中心做的一个项目,项目难度之大令人发指,这个项目真正的让我感觉到了,商场如战场,而我只是其中的一个小兵,太多的战术,太多的高层之间的较量,太多的内幕了.具体这个项目的情况,我有空 ...
- 如何在SQLServer中处理每天四亿三千万记录的(数据库大数据处理)
http://blog.csdn.net/wybshyy/article/details/52064289 首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是 ...
- 如何在 Linux 中快速地通过 HTTP 提供文件访问服务
如何在 Linux 中快速地通过 HTTP 提供文件访问服务 转自:https://linux.cn/article-10205-1.html 如今,我有很多方法来通过 Web 浏览器为局域网中的其他 ...
- 如何在Windows中的命令提示符下删除特定目录中的文件/子文件夹
本文翻译自:How to delete files/subfolders in a specific directory at the command prompt in Windows Say, t ...
- excel排名_表格技巧—如何在Excel中快速计算排名
在利用excel统计成绩的时候,往往会使用它的排名,如果一个一个排会造成工作效率非常低,那么如何快速排名呢?今天我们和大家分享的就是如何在excel中快速计算排名. 首先打开一张我们需要排名的exce ...
- 用python画奔驰的标志_如何在CATIA中快速画一个奔驰车标
原标题:如何在CATIA中快速画一个奔驰车标 咱们这个公众号呀,总是发一些二次开发啊,代码啊什么的,这观众看的啊,是云里雾里的!哎,内位说了:您能不能讲点儿我们听的懂的内容啊?那好,今儿咱们就来说说, ...
- 如何在AidLearning中快速开发人脸识别APP
如何在AidLearning中快速开发人脸识别APP 双击Examples进入案例中心,点击FaceID进入人脸识别代码编辑状态. - 提示:案例中的代码不要随意改动,因为AID默认运行前会保存代码文 ...
- 如何在sqlserver中写存储过程
original link http://www.codeproject.com/Articles/126898/Sql-Server-How-to-write-a-Stored-procedure- ...
最新文章
- Nucleus SE RTOS初始化和启动
- python【蓝桥杯vip练习题库】ALGO-236大小写转换
- 阿里重组AI实验室的背后主因,马云也无奈
- Apache Flink 零基础入门(一):基础概念解析
- 数据库面试题【五、索引的优缺点,什么时候使用索引,什么时候不能使用索引】
- java中输出时间12小时制转换为24小时制显示
- C# 对接微信支付时生成符合 RFC3339 标准的日期时间字符串
- 嵌入式linux中的锁机制,跟涛哥一起学嵌入式第11集:一个实现锁机制非常有意思的宏...
- Java JDK安装和配置
- 虚拟键码对照表与ASCII对照表的整理
- 判断字符串中是否含有并一个字符或字符串
- Hello, world!
- Himawari-8葵花8标准数据(HSD)文件命名规则
- 17229 Lry,你除了2还是2
- bzoj 4199: [Noi2015]品酒大会 (后缀自动机+DP)
- ServerSocket与Socket入门详解
- 如何使用PDFelement 6 Pro Mac中的OCR功能
- 用java解一元二次方程组
- 北京全市医保定点医疗机构直接社保
- vue安装postcss-pxtorem报错