日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 释放空间_07_MySQL delete后释放存储空间

發布時間:2025/3/21 数据库 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 释放空间_07_MySQL delete后释放存储空间 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CREATE TABLE `wkj_Score` (

`Id` int(10) NOT NULL AUTO_INCREMENT COMMENT '編號',

`Stu_id` int(10) NOT NULL COMMENT '學號',

`C_id` int(10) NOT NULL COMMENT '課程id',

`Grade` int(10) DEFAULT NULL COMMENT '分數',

PRIMARY KEY (`Id`),

UNIQUE KEY `XXSSXX` (`C_id`,`Id`)

) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

// ENGINE=InnoDB 創建表格的時候指定

1、drop table table_name 立刻釋放磁盤空間 ,不管是 InnoDB和MyISAM

2、truncate table table_name 立刻釋放磁盤空間 ,不管是 Innodb和MyISAM 。

truncate table其實有點類似于drop table 然后create。只不過這個create table 的過程做了優化,比如表結構文件之前已經有了等等,就不需要重新再搞一把。所以速度上應該是接近drop table的速度。

3、對于delete from table_name 刪除表的全部數據

對于MyISAM 會立刻釋放磁盤空間 (應該是做了特別處理,也比較合理); InnoDB 不會釋放磁盤空間

4、對于delete from table_name where xxx帶條件的刪除不管是innodb還是MyISAM都不會釋放磁盤空間。

5、delete操作以后 使用optimize table table_name 會立刻釋放磁盤空間。不管是InnoDB還是MyISAM 。

所以要想達到清理數據的目的,請delete以后執行optimize table 操作。

6、delete from表 以后雖然未釋放磁盤空間,但是下次插入數據的時候,仍然可以使用這部分空間

注:每個表一般都有唯一的主鍵且自增,delete后不能繼續使用刪除前的數字,這個時候可以用alter table table_name auto_increment=刪除前的數字,含義:從XX開始自增

總結

以上是生活随笔為你收集整理的mysql 释放空间_07_MySQL delete后释放存储空间的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。