+ -
当前位置:首页 → 问答吧 → 拷贝文件复制数据库的问题

拷贝文件复制数据库的问题

时间:2008-09-18

来源:互联网

centos 5 的系统,mysql 5.0,实在安装系统的时候就一起安装好的,
现在我想复制mysql其中的一个数据库,
比如本地库有数据库A,B和C,我想把数据库B复制一份成D(还是放在在本地数据库)
mysqldump 太慢了,查了一下说可以通过直接复制数据文件的方式实现,
于是尝试了一下:
默认的数据文件路径是/var/lib/mysql
ls -ltr

可以看到和数据库名一样的目录,A,B和C,还有其他的目录或文件,
运行cp -r B D
目录B中包含的文件有所有表的.frm文件,还有一个db.opt文件。
进入mysql,
show databases可以看到有数据库D,
use D;
show tables;可以看到所有的表,
但是desc其中一个表,失败,提示表不存在,select出一样的错。
我想可能是只复制了其中的表结构文件,但是数据在哪里?是哪些文件?
在/var/lib/mysql下有一个二进制文件ibdate1,八成就是数据文件,但是这个文件没有分库阿,怎么把其中数据库B的数据复制出来呢?

到底要拷贝哪些文件才能复制一个数据库?

作者: hack119   发布时间: 2008-09-18

复制的时候如果库有写操作很可能出问题
用mysqlhotcopy试试
或者停掉服务cp

作者: 野火燒不盡   发布时间: 2008-09-18

应该是先创建 D数据库,然后 load data或者source 吧?
这样系统文件里面才会出现记录。

作者: ygmgc   发布时间: 2008-09-18

对了,cp完成的,最好用之前再flash刷一下

作者: I521   发布时间: 2008-09-18

看看·~~~~~我想学习。

作者: klyxb   发布时间: 2008-09-18

新人路过。。。

作者: jjp1   发布时间: 2008-09-18