mysql5.7 一個 10G 的庫 drop 后空間如何釋放?
時間:2023-11-12 02:12:01 | 來源:網(wǎng)站運營
時間:2023-11-12 02:12:01 來源:網(wǎng)站運營
mysql5.7 一個 10G 的庫 drop 后空間如何釋放?:當你在 MySQL 5.7 中刪除一個數(shù)據(jù)庫(使用 DROP DATABASE 語句)時,MySQL 會將該數(shù)據(jù)庫中的所有表和數(shù)據(jù)刪除,但是磁盤上的空間不會立即釋放。這是因為刪除操作只是將數(shù)據(jù)從文件系統(tǒng)中刪除,并不會真正釋放空間。
為了釋放這部分空間,可以使用以下幾種方法:
- 使用 OPTIMIZE TABLE 命令對所有表進行優(yōu)化。這將重建索引并重新分配空間。
- 使用 myisamchk 工具進行表修復。這將重建索引并重新分配空間。
- 在 my.cnf 中設(shè)置 innodb_file_per_table = 1,重啟 MySQL。這將使 InnoDB 在每個表上使用單獨的文件存儲數(shù)據(jù),并且刪除表時會刪除文件。
- 在命令行中使用 rm -rf /var/lib/mysql/{database_name} 刪除相應的文件
- 使用 purge 命令刪除binlog文件,如: purge binary logs to 'mysql-bin.000001';
注意,在刪除數(shù)據(jù)庫之前,請確保您已經(jīng)備份了需要保留的數(shù)據(jù)。