MySql innodb 数据库备份和迁移

首先说明, 这个题目有点大,题目与实际内容不符。

        最近几天,在进行数据融合处理时,需要对innodb表(数据以多表形式进行存储,由共享表转为多表,网上资料比较多,不再赘述)的数据进行频繁备份和替换,涉及到innodb数据库表的备份处理。

通过查阅mysql的官方文档,给出两种备份方式:单表备份和使用商业软件进行备份。付费的就不扯了,这里说一下单表备份和恢复的流程:

        备份操作:

 1。 copy文件*.ibd 和*.frm ,放置到安全环境中进行备份。
 恢复时进行如下操作:

 2。 执行操作: ALTER TABLE tbl_name DISCARD TABLESPACE;
 3。 把之前安全备份的文件*.ibd, *.frm,copy到数据库的相应目录,然后执行:
 4。 执行操作: ALTER TABLE tbl_name IMPORT TABLESPACE;
        这种处理方式,有个局限就是,只能在相同的DB上进行操作,原来的数据库一旦删除,备份的文件便不能再以如上流程恢复。

        如果要对innodb数据库进行备份,流程如下:

1.  关停mysql service; service mysqld stop;

2. copy 所有的*.ibd, *.frm,以及共享表和log文件ibdata*, iblog*,进行安全备份;

3. 进行恢复时, 关停service,并用备份文件将当前数据库文件进行替换,然后重启service即可。

 

在网上还有一种人工干预方式,恢复单表数据的方式,详细内容见链接:http://www.chriscalender.com/?tag=got-error-1-from-storage-engine

 

如果您有好的方式,欢迎交流,f1_star@163.com;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值