国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql單文件存儲刪除數據文件容量不會減少的bug與解決方法

2024-07-24 13:11:46
字體:
來源:轉載
供稿:網友

MySQL的Bug之一:InnoDB ibdata1 never shrinks after data is removed

問題描述

當innodb引擎使用單個文件進行存儲的時候,當對數據庫中數據進行刪除的時候,文件的大小并不會發生變化,意味著文件將會越來越大并且即使刪除也沒辦法 讓其釋放磁盤的空間。

驗證過程

創建一個測試使用的表,如下創建好t這樣的一個表。

mysql,數據庫存儲容量,存儲容量,存儲文件

創建簡單的存儲過程來批量的插入數據。

mysql,數據庫存儲容量,存儲容量,存儲文件

查看開始前的文件的大小

mysql,數據庫存儲容量,存儲容量,存儲文件

當批量插入接近十萬的數據后

mysql,數據庫存儲容量,存儲容量,存儲文件

然后進行刪除操作

mysql,數據庫存儲容量,存儲容量,存儲文件

占用磁盤空間并未減少

解決方案

兩種方式:

1. 先備份后刪除然后進行導入

mysql/92943.html">mysql/15856.html">mysqldump -uxxx -pxxx --all-databases > db.sql service mysql stop rm ibdata rm ×log文件 service mysql start mysql -uxxx -pxxx < db.sql 

2. 把表設置為單表存儲的形式,這樣每個表中的數據單獨存儲,在刪除數據的時候,會隨著數據的刪除而釋放存儲空間。

set global innodb_file_per_table = on 

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华容县| 贞丰县| 叙永县| 清原| 温宿县| 武城县| 乐东| 云梦县| 阿瓦提县| 张掖市| 鄯善县| 呈贡县| 都兰县| 宽甸| 铜川市| 太仆寺旗| 靖安县| 葫芦岛市| 常熟市| 同仁县| 阜阳市| 乡城县| 五河县| 雅江县| 宿迁市| 涡阳县| 泰和县| 陆丰市| 红原县| 贺州市| 九寨沟县| 平昌县| 延长县| 邻水| 开封县| 舒兰市| 平阳县| 达州市| 栾川县| 读书| 高雄市|