mysql數據庫中,當咱們使用delete from table where 這樣的語句刪除數據庫記錄時,記錄是能刪除掉,用select也查不出記錄,可是表的存儲空間佔用並無減小,這是由於使用這樣的語句執行的是邏輯刪除,數據庫只是作了刪除標記,並無實際的從物理磁盤上將數據清除掉。 mysql
因此,要想完全的刪除,就須要使用truncate table或者delete 不加where條件,這樣就能夠把全部的數據物理的刪除掉。但實際每每不能執行這樣的語句的,把表全部的數據清空,那怎麼樣才能實現只將部分數據物理刪除呢? sql
1.執行delete from table where這樣的語句 數據庫
2.進行表空間碎片整理,OPTIMIZE TABLE,使用這個語句時,表會鎖定,因此使用以前一直要注意,建議每週或者每個月執行一次該語句。 spa