mysql ibdata1檔案過大的解決方案

2021-09-27 13:03:32 字數 571 閱讀 9962

在mysql 5.6.6版本以前,mysql缺省會把所有的innodb的表都放在同乙個檔案中(ibdata1),當該檔案過大的時候,mysql容易出錯,維護效能差。

但那些在修改之前已經建立了innodb的表怎麼辦?

一種辦法是用mysqldump備份所有資料庫後重建所有資料庫,步驟如下

mysqldump -u -p --all-databases > backup.sql匯出所有資料

刪除所有資料庫 drop database database_n

停止mysql服務service mysql stop如果是mariadb就是service mariadb stop

刪除檔案ibdata1, ib_logfile0, ib_logfile1

修改mysql配置檔案/etc/my.cnf,增加或修改如下:

[mysqld]

innodb_file_per_table=1

重啟mysql服務service mysql start如果是mariadb就是service mariadb start

匯入備份資料mysql -u -p < backup.sql隨筆

mysql ibdata1檔案的縮小

mysql ibdata1檔案的縮小 2009 12 22 15 29 46 標籤 it mysql ibdata1存放資料,索引等,是mysql的最主要的資料。如果不把資料分開存放的話,這個檔案的大小很容易就上了g,甚至10 g。對於某些應用來說,並不是太合適。因此要把此檔案縮小。方法 資料檔案單...

釋放MySQL ibdata1檔案的空間

在mysql資料庫中,如果不指定innodb file per table引數,單獨存在每個表的資料,mysql的資料都會存放在ibdata1檔案。mysql ibdata1存放資料,索引等,是mysql的最主要的資料。步驟 1,備份資料庫 從命令列進入mysql server 5.1 bin 備份...

釋放MySQL ibdata1檔案的空間

在mysql資料庫中,如果不指定innodb file per table引數,單獨存在每個表的資料,mysql的資料都會存放在ibdata1檔案。mysql ibdata1存放資料,索引等,是mysql的最主要的資料。步驟 1,備份資料庫 從命令列進入mysql server 5.1 bin 備份...