mysql数据库文件如何转移_mysql数据库数据迁移方法

说明:这里不讨论命令行还有通过navicat等工具的做法,这里只讨论在mysql坏掉(不能启动)的情况下,怎么办。

方法:

a) 先来看mysql数据库文件的情况:

mysql坏掉了,不管是linux还是windows版本,mysql有个数据库文件目录data目录,如下图:

62e9dd22e05559a346af57c944e27391.png

(注意linux版上面的是my.cnf差不多)

然后data目录里面类似这样:

c2847a8a4a977276d269096ef436ce1d.png

通过观察可以知道里面一个个文件夹如world这些就是一个个database。进入这个文件就是类似下面两种情况:

情况一:

5d08ad2ec7c7b61c5ac8f1e0c4ec5a0d.png               

or                情况二:

3c64164d6473b8c5e3a0816a579374b8.png

可以猜想就是一个个表文件。

b) 再来看下如何迁移这些数据库。

对于上面的情况一,即数据库文件是.frm、.MYD、.MYI的情况,这种情况超级方便,直接将这个database文件夹拷贝到要迁移到的目标数据库目录即可。

对于上面的情况二,即数据库文件是.frm、.idb的情况,则要这样处理:

i)将database文件夹拷贝到一个可用的mysql数据库目录(以下简称中间数据库)。

ii)停止中间数据库,备份中间数据库的ibdata1文件,然后替换ibdata1文件。

iii) 中间数据库的my.ini末尾添加一行innodb_force_recovery=4。

iv)启动中间数据库,通过工具或命令行的方式,将中间数据库的目标database迁移到目标数据库。

v)中间数据库回退处理(即注释掉innodb_force_recovery=4,回退ibdata1文件那些,不影响中间数据库)。

版权声明:本文为博主原创文章,未经博主允许不得转载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值