91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

刪除MySQL超大表的具體方法

發布時間:2020-05-29 14:47:00 來源:網絡 閱讀:277 作者:三月 欄目:MySQL數據庫

本文主要給大家簡單講講刪除MySQL超大表的具體方法,相關專業術語大家可以上網查查或者找一些相關書籍補充一下,這里就不涉獵了,我們就直奔主題吧,希望刪除MySQL超大表的具體方法這篇文章可以給大家帶來一些實際幫助。

先搞一個大表出來,如下圖:

刪除MySQL超大表的具體方法


可以看到t2表的ibd大小為2.7GB了

刪除MySQL超大表的具體方法

1、創建個硬鏈接:

cd/bdata/data/nowdb2/test

ln t2.ibdt2.ibd_hdlk

刪除MySQL超大表的具體方法


創建一個硬鏈接的好處就是:

    硬鏈接就是增加了對文件的引用,只有對磁盤上文件的引用完全沒有了的話,這個文件才能是刪除的。

我們對t2.ibd 建立硬鏈接后,當我們執行drop table t2; 的時候,實際上只是刪除了對t2.ibd的一個文件引用,我們t2.ibd_hdlk對物理文件的引用還是存在的,就不會執行OS級別的刪除操作,就不會大量的IO操作。這種對線上mysql的影響降到很低。

  

2、執行實際的刪除

droptable test.t2;

  

3、使用coreutils工具集執行OS級別的文件刪除

下載地址: ftp://alpha.gnu.org/gnu/coreutils/

tar xf coreutils-8.0.tar.xz

cdcoreutils-8.0

./configure

make  && make install

 

清理腳本如下:

#!/bin/bash

 

TRUNCATE=/usr/local/bin/truncate

 

#從2835MB(2.7GB差不多在2768MB)開始每次刪除100MB,最后如果腳本truncate后還剩下部分文件,可以使用rm刪除

fori in `seq 2768 -100 10 `; do

  $TRUNCATE -s ${i}M  /bdata/data/nowdb2/test/t2.ibd_hdlk

  sleep 1

done


執行完上面的腳本后,還剩下35MB的空間,如下圖。這個小文件我們直接使用rm刪除即可。

刪除MySQL超大表的具體方法

這樣就徹底刪除掉這個t2大表了。

刪除MySQL超大表的具體方法就先給大家講到這里,對于其它相關問題大家想要了解的可以持續關注我們的行業資訊。我們的板塊內容每天都會捕捉一些行業新聞及專業知識分享給大家的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

镇平县| 温泉县| 万源市| 南澳县| 岳西县| 普格县| 榆树市| 扬州市| 定陶县| 永修县| 闻喜县| 高雄市| 开平市| 汪清县| 调兵山市| 石泉县| 华阴市| 茶陵县| 宜黄县| 密云县| 修武县| 竹北市| 永年县| 长葛市| 秭归县| 灵武市| 长子县| 安溪县| 乳山市| 璧山县| 通许县| 平阴县| 衢州市| 鞍山市| 广平县| 娱乐| 江北区| 崇仁县| 乐亭县| 永福县| 漳平市|