Mysql

從小型 ibdata1 恢復 MySQL 數據庫

  • February 17, 2017

我有一個死樹莓派的數據庫,我想恢復它。由於 SD 卡損壞,它不再啟動,我只能恢復數據文件,但不能進行正常轉儲。之前在 Pi 上執行的伺服器現在應該在這裡執行在 Windows PC 上。因此我安裝了 XAMPP 並嘗試使用舊的數據文件,但是使用

   ...
   innodb_data_file_path = ibdata1:10M:autoextend
   ...

我只得到

   [ERROR] InnoDB: auto-extending data file D:\xampp\mysql\data\ibdata1
   is of a different size 512 pages (rounded down to MB) than specified
   in the .cnf file: initial 768 pages, max 0 (relevant if non-zero) pages!

ibdata1 文件的大小只有 8MB,所以我嘗試將大小設置為此,但 MySQL 抱怨說,表空間至少應為 10MB。

有沒有辦法恢復這些數據?例如手動擴展 ibdata1 文件?

問題不是文件太小,而是文件不完整。原文件有90MB,但由於SD卡故障,複製失敗。

引用自:https://dba.stackexchange.com/questions/164643