您的位置:首页 > 运维架构 > Linux

linux下mysql数据的导出和导入(实用于大数据库)

2017-10-16 21:24 597 查看
一般数据库不大时,我们用Navicate,MysqlWorkBrench等工具,将数据库导出为.sql,再导入,是没有问题的。但有时候一个数据库导出来有200多M,可能需要半小时。这时我们就可以用命令导出,导入了。A服务器上的数据库databaseA,导出到,B服务器上的数据库databaseB,登录A服务器,进入到某目录下:比如:/data/mysqlbak/命令行输入:
mysqldump-uuserName-pdabaseName>fileName.sql
ls-al
能看到,3秒就生成了sql文件。是不是很快呢?
导出数据库中的某个表的数据
mysqldump-uuserName-pdabaseNametableName>fileName.sql
这时,你也可以通过ftp,把该文件下载来,再上传到B服务器。比较慢。。。
也可以用scp传输。
2.登录B服务器,
进入到某目录下:比如:/data/mysqlbak/
命令行输入:scp-P****root@***.*****.**:/data/mysqlbak/fileName.sql
./
***是端口号,ip地址。注意P是大写。
如果端口号是22,可以不写-P****。
如果是局域网,命令写为:
scproot@192.168.1.22:/data/mysqlbak/fileName.sql
然后会提示,输入密码后。就可以下载了。
然后进入mysql:
mysql-uroot-p回车输入密码usedabaseName;[/code]source/
data/mysqlbak/fileName.sql
如果B服务器是mysql在导入过程中,出现卡死的情况,不容易看出来,可能是,sql_mode的限制,
这时可修改vi/etc/my.cnf,
添加sql_mode=ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
重启mysql,
命令为servicemysqldrestart;
再重新导入,即可。
建议参考:http://www.cnblogs.com/hurry-up/p/6829694.html
----------招募未来大神-----------------------如果您有利他之心,乐于帮助他人,乐于分享如果您遇到php问题,百度且问了其他群之后仍没得到解答欢迎加入,PHP技术问答群,QQ群:292626152教学相长!帮助他人,自己也会得到提升!为了珍惜每个人的宝贵时间,请大家不要闲聊!愿我们互相帮助,共同进步!加入时留言暗号,php,ajax,thinkphp,yii...

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql dump