大表分批刪除指令碼

2022-02-14 15:59:25 字數 470 閱讀 6577

昨天幹了件傻事,在公司新搭了個測試庫,把正式庫還原到測試庫後,

把恢復模式改為簡單,然後無腦寫了個指令碼把所有業務表今年以前的資料刪除。之後就回家了。

今天跑過來上去一看,呃的神,測試庫日誌達到了200多gb。這才意識到單個業務表的資料量比較大,

而我用單個delete語句來刪除的,單個事務忒大了導致日誌瘋漲到200多gb。

下面分享下大菠蘿兄提供的分批刪除指令碼:

while1=

1begin

delete

top (5000) from

tb

where sysdate <=

'2013-12-31'if

@@rowcount

<

5000

break

;

waitfor delay '

00:00:01

'end

python 刪除大表資料

usr bin env python encoding utf 8 author 東哥加油 file del tb bigtable statistic.py time 2018 11 21 15 39 import pymysql import datetime import math impor...

shell指令碼同時刪除多張表

同時刪除表名類似的多張表 引數1是資料庫名 引數2傳表名 bin sh if ne 2 then echo input argument dbname universaltablename exit 1 fimysqlconnect mysql droptable mysqlconnect e se...

快速刪除Hive表資料指令碼

在使用hive做測試時往往有很多測試的表,到最後想清空下表 直接上指令碼 首先 用show tables 把表名存到乙個txt檔案中。bin bash cat 1.txt while read line 讀取檔案每一行 doecho drop table line tt.txt 把刪除命令嵌入每個表...