溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

MySQL什么情況下刪除數(shù)據(jù)會(huì)釋放空間

發(fā)布時(shí)間:2020-08-10 22:20:28 來(lái)源:ITPUB博客 閱讀:272 作者:chenfeng 欄目:MySQL數(shù)據(jù)庫(kù)
1、drop table table_name 立刻釋放磁盤(pán)空間 ,不管是 Innodb和MyISAM


2、truncate table table_name 立刻釋放磁盤(pán)空間 ,不管是 Innodb和MyISAM 。truncate table其實(shí)有點(diǎn)類似于drop table 然后create。只不過(guò)這個(gè)create table 的過(guò)程做了優(yōu)化,比如表結(jié)構(gòu)文件之前已經(jīng)有了等等,就不需要重新再搞一把。所以速度上應(yīng)該是接近drop table的速度。


3、對(duì)于delete from table_name :刪除表的全部數(shù)據(jù)
對(duì)于MyISAM 會(huì)立刻釋放磁盤(pán)空間 (應(yīng)該是做了特別處理,也比較合理)
InnoDB 不會(huì)釋放磁盤(pán)空間


4、對(duì)于delete from table_name where xxx帶條件的刪除,不管是innodb還是MyISAM都不會(huì)釋放磁盤(pán)空間。


5、delete操作以后 使用optimize table table_name 會(huì)立刻釋放磁盤(pán)空間。不管是innodb還是myisam。所以要想達(dá)到清理數(shù)據(jù)的目的,請(qǐng)delete以后執(zhí)行optimize table 操作。


6、delete from表以后雖然未釋放磁盤(pán)空間,但是下次插入數(shù)據(jù)的時(shí)候,仍然可以使用這部分空間。
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI