如何将拷贝过来的数据 *.ibd 文件生效
1.將拷貝的數(shù)據(jù)文件? ?"qqq.idb"放在自己的數(shù)據(jù)庫中. 一般存放在? mysql/?data/?databasename 下
2.?"qqq.idb" 改個名字-->"qqq--.idb", 主要是避免沖突!
3.執(zhí)行 create table qqq(...) 語句,此時除了會生成一個? qqq.frm, 文件,還會新生成一個qqq.idb文件
4.執(zhí)行?ALTER TABLE qqq DISCARD TABLESPACE; 會自動刪除 新生成的qqq.idb 文件
5. 改回 "qqq--.idb"文件名為?"qqq.idb"
6.ALTER TABLE qqq IMPORT TABLESPACE; SHOW WARNINGS;
--結(jié)束,OK。
如果import tablespace 的時候,報錯 ibd文件與表的 ROW_TYPE_COMPACT 不兼容,則需要在建表語句最后 加上 ROW_FORMAT=COMPACT保持一致!
?
?
mysql ibd 文件過大問題
公司的數(shù)據(jù)庫掛了查了下 ,每個表都有自己獨立的表空間,有一張表的ibd 文件有好幾G了。然后想要釋放它。
?
解決方案:
第一種,刪除表,然后重新建。drop table 操作自動回收表空間
第二種,alter table tablename engin=innodb 。搞定
---------------------
作者:wang603603
來源:CSDN
原文:https://blog.csdn.net/wang603603/article/details/80463285
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!
轉(zhuǎn)載于:https://www.cnblogs.com/zgq123456/p/9956820.html
總結(jié)
以上是生活随笔為你收集整理的如何将拷贝过来的数据 *.ibd 文件生效的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: git操作指令合集
- 下一篇: YUM更换源--yum找不到安装包(转)