日期:2014-05-16  浏览次数:20465 次

使用mysql mysqldump进行数据库迁移

今天因为工程需要,要把我自己台式机的虚拟机中的mysql数据库中的数据转移到一台笔记本服务器上,鉴于之前使用sql server可以直接复制数据库文件,我开始就先把mysql在

/var/lib/mysql 目录下存储的数据库所有的文件直接拷贝过去了,但是那台电脑重启mysql,重启电脑,都没有显示出数据,数据库依旧是最初的空的数据库。


后来经高人指点,原来在ubuntu环境下mysql是不能直接复制数据库文件进行替换的。


应该使用如下的命令导出数据库中的表数据:


 mysqldump -uroot -p* database_name > /tmp/test.sql

上面命令中 -p*表示数据库的密码,如果密码为空则可以去掉这个参数,如果有密码,比如是123456,可以写成 -p123456


上面的命令可以在指定的目录中生成一个sql文件,然后可以根据这个文件将原来的数据导入到其他的数据库中。


导入数据库命令:


mysql -uroot -p*  database_name < /tmp/test.sql

然后就会发现新的数据库中已经存在了原来的数据库中的数据。