17站长网

17站长网 首页 数据库 Mysql 查看内容

mysqldump输出常用的一些操作

2023-3-16 14:20| 查看: 1056 |来源: 互联网

在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具;它自带的功能参数非常多,文章中会列举出一些常用的操 ...

在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具;它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有的参数详细说明列出来。

  

语法:

 

默认不带参数的导出,导出文本内容大概如下:创建数据库判断语句-删除表-创建表-锁表-禁用索引-插入数据-启用索引-解锁表。

 

Usage: mysqldump [OPTIONS] database [tables]

OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]

OR     mysqldump [OPTIONS] --all-databases [OPTIONS]

 

1.导出所有数据库

 

      该命令会导出包括系统数据库在内的所有数据库

 

      mysqldump -uroot -proot --all-databases >/tmp/all.sql

2.导出db1、db2两个数据库的所有数据

 

     mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql

 

3.导出db1中的a1、a2表

 

注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据

 

mysqldump -uroot -proot --databases db1 --tables a1 a2  >/tmp/db1.sql

 

4.条件导出,导出db1表a1中id=1的数据

 

如果多个表的条件相同可以一次性导出多个表

 

mysqldump -uroot -proot --no-create-info --databases db1 --tables a1 --where="id='a'"  >/tmp/a1.sql

5.生成新的binlog文件,-F

 

有时候会希望导出数据之后生成一个新的binlog文件,只需要加上-F参数即可

 

mysqldump -uroot -proot --databases db1 -F >/tmp/db1.sql

6.只导出表结构不导出数据,--no-data

 

mysqldump -uroot -proot --no-data --databases db1 >/tmp/db1.sql

7.跨服务器导出导入数据

 

mysqldump --host=h2 -uroot -proot --databases db1 |mysql --host=h3 -uroot -proot db2

将h2服务器中的db1数据库的所有数据导入到h3中的db2数据库中,db2的数据库必须存在否则会报错

  

8.将主库的binlog位置和文件名追加到导出数据的文件中,--dump-slave

 

注意:--dump-slave命令如果当前服务器是从服务器那么使用该命令会执行stop slave来获取master binlog的文件和位置,等备份完后会自动执行start slave启动从服务器。但是如果是大的数据量备份会给从和主的延时变的更大,使用--dump-slave获取到的只是当前的从服务器的数据执行到的主的binglog的位置是(relay_mater_log_file,exec_master_log_pos),而不是主服务器当前的binlog执行的位置,主要是取决于主从的数据延时。

 

该参数在在从服务器上执行,相当于执行show slave status。当设置为1时,将会以CHANGE MASTER命令输出到数据文件;设置为2时,会在change前加上注释。

 

该选项将会打开--lock-all-tables,除非--single-transaction被指定。

本文最后更新于 2023-3-16 14:20,某些文章具有时效性,若有错误或已失效,请在网站留言或联系站长:17tui@17tui.com
·END·
站长网微信号:w17tui,关注站长、创业、关注互联网人 - 互联网创业者营销服务中心

免责声明:本站部分文章和图片均来自用户投稿和网络收集,旨在传播知识,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系我们及时修正或删除。谢谢!

17站长网微信二维码

始终以前瞻性的眼光聚焦站长、创业、互联网等领域,为您提供最新最全的互联网资讯,帮助站长转型升级,为互联网创业者提供更加优质的创业信息和品牌营销服务,与站长一起进步!让互联网创业者不再孤独!

扫一扫,关注站长网微信

大家都在看

    热门排行

      最近更新

        返回顶部