mysql 根據ibd文件恢復數據


恢復 recover_user.ibd 文件

1.創建數據庫recover_ibd

2.創建相同結構表(若有其他庫中相同結構表,可根據show create table recover_user;獲取建表語句)

-- 執行該查詢結果中create table語句
CREATE TABLE `recover_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) DEFAULT NULL,
  `sex` int(11) DEFAULT NULL,
  `id_card` varchar(32) DEFAULT NULL,
  `address` varchar(128) DEFAULT NULL,
  `backup` varchar(128) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `index_id_card` (`id_card`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=130 DEFAULT CHARSET=utf8

3.解除表空間關聯關系
     ALTER TABLE recover_user DISCARD TABLESPACE;

4.查看數據庫對應表物理文件位置,此時新庫目錄下為空(若未解除表空間關系,創建表之后應有recover_user.ibd文件)

5.復制recover_user.ibd 文件至mysql Data目錄下對應數據庫中

6.建立新的表空間關聯關系
    ALTER TABLE recover_user IMPORT TABLESPACE;

7.查看恢復結果
    select * from recover_user;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM