---注意,在生產(chǎn)環(huán)境中MySQL刪除表的時候 如果表過大,幾十G 甚至上百G ,刪除的時候要小心,要不然會導(dǎo)致MySQLhang住,從而影響業(yè)務(wù);
站在用戶的角度思考問題,與客戶深入溝通,找到大武口網(wǎng)站設(shè)計與大武口網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設(shè)計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、空間域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋大武口地區(qū)。
1、MySQL在刪除表的時候,一共分為2步:
①:buffer pool頁面清除的過程
在刪除表的時候,innodb會將文件在buffer pool中對應(yīng)的頁面清除,對于刪除表的頁面清除,只需要將頁面從flush隊列中刪除即可,而不需要去做flush操作,這樣就可以減少對系統(tǒng)的沖擊;
②:刪除ibd磁盤文件的過程(這個過程是很耗資源的也比較慢會影響數(shù)據(jù)庫的性能)
2、正確的刪除大表的姿勢:
①:對表的系統(tǒng)文件做個硬鏈接,加速刪除
如:ln /mysql/data/test/emp.ibd /mysql/data/test/emp.ibd.hdlk
[mysql@db2 test]$ ln /mysql/data/test/emp.ibd /mysql/data/test/emp.ibd.hdlk
[mysql@db2 test]$ ls -l
total 208
-rw-r--r-- 1 mysql mysql 65 Mar 3 10:35 db.opt
-rw-rw---- 1 mysql mysql 8556 May 12 04:40 emp.frm
-rw-rw---- 2 mysql mysql 98304 May 12 04:40 emp.ibd
-rw-rw---- 2 mysql mysql 98304 May 12 04:40 emp.ibd.hdlk
[mysql@db2 test]$
然后在數(shù)據(jù)庫中執(zhí)行:drop table emp; ---即可,
②:第二種方法就是分批刪除數(shù)據(jù),設(shè)定一個條件有序的刪除,如:可以按照每天的數(shù)據(jù)刪除或按照一個范圍進(jìn)行分批刪除,
---注意,在生產(chǎn)數(shù)據(jù)庫刪除表的時候,如果表數(shù)據(jù)量過大要么分批刪除 要么做硬鏈接的方式刪除;
標(biāo)題名稱:MySQL大表刪除導(dǎo)致服務(wù)器變慢的分析
瀏覽路徑:http://aaarwkj.com/article16/jeeegg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、企業(yè)網(wǎng)站制作、網(wǎng)站導(dǎo)航、云服務(wù)器、企業(yè)建站、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)