mysql 5.7 innodb 预热_mysql5.7 InnoDB数据表空间文件平滑迁移
[ERROR] [FATAL] InnoDB: Tablespace id is 14 in the data dictionary but in file ./mysql/innodb_index_stats.ibd it is 696!
--先測試直接把.ibd文件拷貝過去 ? (這種方法失敗,因為tablespace_id不一致)
mysqld_safe --defaults-file=/usr/my-new.cnf & ? ?--啟庫
總結:
對于innodb每個表都有各自的表空間來說,如果只在.ibd文件(當然也要知道表的定義語句)。可以通過在新庫中 新建表,然后discard+import 舊的.ibd文件把數據恢復出來。
在5.6中可以不用管tablespace_id的不一致,原來的版本中,還需要手動的把tablespace_id改為一致(兩種方法, 1 手動建表或改表名 2 改 vi .ibd文件 http://www.linuxidc.com/Linux/2012-02/54122.htm )
InnoDB數據表空間文件平滑遷移
不過我覺得,這種情況最好是用 ibbackup搞定。在線db,是否共享表空間都可以搞定。
確實,ibbackup 是更容易搞定,但是要知道 ibbackup是屬于商業軟件,
需要收費的,真正愿意購買的用戶其實很少
用ZRM for mysql應該也可以吧,這個雖說也是商業軟件,不過有free的版本,也是很好用的
最后使用xtarbackup還原,成功了
總結
以上是生活随笔為你收集整理的mysql 5.7 innodb 预热_mysql5.7 InnoDB数据表空间文件平滑迁移的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kernel 中标准的 ir 模块的 时
- 下一篇: mysql1215_MySQL全面瓦解1