怎么使用mysql dump
发布时间:2021-12-21 11:03:07 所属栏目:MySql教程 来源:互联网
导读:本篇内容主要讲解怎么使用mysql dump,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习怎么使用mysql dump吧! 一、在客户端配置mysql mysqldump是一个客户端工具,可以直接将数据备份到到本地。在客户端配置mysql非
本篇内容主要讲解“怎么使用mysql dump”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用mysql dump”吧! 一、在客户端配置mysql mysqldump是一个客户端工具,可以直接将数据备份到到本地。在客户端配置mysql非常简单,两步走: 1、去服务端的bin目录下直接将mysql.exe和mysqldump.exe复制到本地,比如我复制到C:mysql下; 2、配置环境变量,将C:mysql直接加入Path中就可以了。 二、mysqldump 1、导出某用户下所有数据库,在这里我导出root下所有的数据库 mysqldump -uroot -p - -all-databases>C:UsersQuJianDesktopa.dmp 然后会提示你输入root的密码,就会进入备份过程。 解释:mysqldump是在操作系统界面下执行的,这一点需要牢记。mysqldump是备份命令,告诉mysql我要导出数据,-u表明连接哪一个导出用户,-p用户密码,- -all-databases意思是导出此用户下所有数据库,>指出备份导出的位置,在这里我把他导出到C:UsersQuJianDesktop(桌面)了,备份文件名为a.dmp,这个后缀名不止可以是dmp,还可以是.text,.sql等等,后缀名没啥要求,其实都是sql脚本文件。用Notepad++打开这个备份文件,会发现对于库的备份文件,大概可以分为创建数据库判断语句---删除表---创建表---锁表---禁用索引---插入数据--启用索引---解锁表这几部分。 2、导出用户下某些数据库 mysqldump -uroot -p - -databases oa tsshop>C:UsersQuJianDesktopa.dmp 解释:- -database指明导出哪个库,这里导出了oa和tsshop两个库 3、导出某些表 mysqldump -uroot -p - -database tsshop - -tables himall_active>C:UsersQuJianDesktopa.dmp 解释:- -table参数表名导出哪些表,用Notepad++打开备份文件,可以发现,备份文件由:删除表--创建表--导入数据组成 4、带条件的表导出 mysqldump -uroot -p - -database tsshop - -tables himall_active - -where='id=1'>C:UsersQuJianDesktopa.dmp mysqldump -uroot -p - -database tsshop - -tables himall_active - -where="name='张三'">C:UsersQuJianDesktopa.dmp 解释:- -where参数表明导出表的条件 5、只导出表结构不导出具体数据 mysqldump -uroot -p - -databases tsshop - -no-data>C:UsersQuJianDesktopa.dmp 解释:- -no-data参数指定只导出表结构,不导出表数据 6、注意,我们是在客户端操作的,那么,对于前面的每一个导出操作,不论是库还是表,我们都要指出源服务器地址,使用参数- -host mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop - -no-data>C:UsersQuJianDesktopa.dmp 7、导出存储过程和自定义函数 mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop - -routines>C:UsersQuJianDesktopa.dmp 解释:- -routines参数指出需要导出存储过程和自定义函数,除了- -all-databases会默认备份存储过程和自定义函数,单独备份数据库,表是不会带存储过程和自定义函数的。 8、导出事件 mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events>C:UsersQuJianDesktopa.dmp 解释:- -events参数表示将事件也导出来,除了- -all-databases会默认备份事件,单独备份数据库,表是不会带事件的 9、- -add-drop-database mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -add-drop-database>C:UsersQuJianDesktopa.dmp 解释:- -add-drop-database的意思是在生成的sql语句中添加drop database语句,这个用于此用户下本来就有这个数据库,在导入之前先删除同名数据库,再新建立数据库。不过我感觉没啥用,因为如果不声明这个参数,sql语句中就不会创建同名数据库,只用删除表重建表就可以了,照样可以导入数据。 10、- -add-drop-table mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -add-drop-table>C:UsersQuJianDesktopa.dmp 解释: - -add-drop-table意思是在导入表之前先删除同名表,这个参数是一个默认参数,如果想取消这个默认参数可以使用- -skip-add-drop-table 11、- -add-locks mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -add-locks>C:UsersQuJianDesktopa.dmp 解释:- -add-locks意思是在导出每个表之前加锁,导出之后再释放锁,这个也是默认打开的,取消这个参数使用- -skip-add-locks 12、- -comments mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -comments>C:UsersQuJianDesktopa.dmp 解释:- -comments意思是导出注释信息,取消可以使用- -skip-comments 13、- -force mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -force>C:UsersQuJianDesktopa.dmp 解释:- -force意思是忽略导出中的sql错误 14、- -triggers mysqldump -uroot -p - -host=10.0.0.47 - -databases tsshop- -routines - -events - -triggers>C:UsersQuJianDesktopa.dmp 解释:- -triggers意思是导出触发器,此选项默认开启,不像- -routines - -events 不会默认开启,取消使用- -skip-triggers 三、导入数据 导入方式有两种: 1、直接在操作系统级别上进行导入操作 导入整个库:mysql -h 10.0.0.44 -uroot -p<C:UsersQuJianDesktopa.dmp 解释:-h是目标数据库的地址,意思是将a.dmp导入到10.0.0.44这个库 在这里,我需要特别说一下字符集,因为10.0.44这个数据库是我新建立的,default-character-set和character-set-server都是utf8,但是导出数据由于存在emoji字符,所以数据库的字符集是utf8mb4,这样在导入的时候就会报字符集的错误,因此需要这样解决,首先,修改目标库的字符集,将其修改为utf8的超集utf8mb4,然后再导入数据,导入数据的时候需要加参数- -default-character-set=utf8mb4,整个导入命令就变成了: mysql -h 10.0.0.44 -uroot -p - -default-character-set=utf8mb4<C:UsersQuJianDesktopa.dmp 导入某张表:mysql -h 10.0.0.44 -uroot -p - -default-character-set=utf8mb4 tsshop<C:UsersQuJianDesktopa.dmp 2、登录数据库执行导入 首先登录数据库: mysql -h 10.0.0.44 -uroot -p - -default-character-set=utf8mb4 然后进行导入操作。 导入整个库: mysql>source C:UsersQuJianDesktopa.dmp; 将某张表导入tsshop这个库: mysql>use tsshop; mysql>source C:UsersQuJianDesktopa.dmp; 到此,相信大家对“怎么使用mysql dump”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习! (编辑:91站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读