mysqldump 客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建表或装载表的 SQL 语句。mysqldump 目前是 MySQL 中最常用的备份工具。

有 3 种方式来调用 mysqldump:

      shell> mysqldump [options] db_name [tbl_name ...]    #备份单个数据库或者库中部分数据表
      shell> mysqldump [options] --databases db_name ...    #备份指定的一个或者多个数据库
      shell> mysqldump [options] --all-databases        #备份所有数据库

官方文档:https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#mysqldump-performance-options

连接选项:

  -u , --user=name      指定用户名

  -p , --password[=name]   指定密码

  -h , --host=name      指定服务器 IP 或者域名

  -P , --prot=#         指定连接端口

这 4 个选项经常一起配合使用,如果客户端位于服务器上,则通常不需要指定 host。如果不指定端口,那么默认连接到 3306 端口,以下是一个远程客户端连接到服务器的例子:

 mysqldump -h192.168.7.55 -P3306 -uroot -p test > test.txt

输出内容选项:

  --add-drop-database      每个数据库创建语句前加上 DROP DATABASE 语句

  --add-drop-table         在每个表创建语句前加上 DROP TABLE 语句

以上这两个选项可以在导入数据库时不用先手工删除旧的数据库,而是会自动删除,提高导入效率,但是导入前一定要做好备份并且确认旧数据库的确已经可以删除,否则误操作将会造成数据的丢失。在默认情况下,这两个参数都自动加上。

  -n ,  --no-create-db       不包含数据库的创建语句

  -t ,  --no-create-info      不包含数据表的创建语句

  -d ,  --no-data         不包含数据

这 3 个选项分别表示备份文件中不包含数据库的创建语句、不包含数据表的创建语句、不包含数据,在不同的场合下,用户可以根据实际需求来进行选择。

输出格式选项

  --compact 选项使得输出结果简洁,不包括默认选项中的各种注释。

  -c 或者 --complete-insert 选项使得输出文件中的 insert 语句也包括字段名称,默认是不包括字段名称的。

  -T 选项将指定数据表中的数据备份为单纯的数据文本和建表 SQL 两个文件,经常和下面几个选项一起配合使用,将数据导出为指定格式显示。

  -T ,  --tab=name          备份数据和建表语句

  --fields-terminated-by=name      域分隔符

  --fields-enclosed-by=name       域引用符

  --fields-optionally-enclosed-by=name   域可选引用符

  --fields-escaped-by=name        转义字符

导出为

字符集选项:

--default-character-set=name 选项可以设置导出的客户端字符集。

这个选项在导出数据库的时候非常重要,如果客户端字符集和数据库字符集不一致,数据在导出的时候就需要进行字符集转换,将数据库字符集转换为客户端字符集,经过转换后的数据很可能成为乱码或者 ? 等特殊字符,使得备份文件无法恢复。

其他常用选项:

  -F  --flush-logs   #备份前刷新日志

  加上此选项后,备份前将关闭旧日志,生成新日志。使得进行恢复的时候直接从新日志开始重新做,大大方便了恢复过程。

  -l  --lock-tables  #给所有表加读锁

  可以在备份期间使用,使得数据无法被更新,从而使备份的数据保持一致性,可以配合 -F 选项一起使用。

关联表,去除建表语句,锁表问题

 D:\Desktop>mysqldump -h10.70.12. -P3306 -uroot -p -t SAJT_DZFP_PT tbl_ec_document_
item --where="fpqqlsh in (select fpqqlsh from tbl_ec_document t where unix_time
stamp(t.create_date)>unix_timestamp('2016-06-20 15:37:34')") --skip-lock-tables
> shit.sql
Enter password: **********

-t 跳过表相关语句

MySQL--mysqldump(数据导出工具)的更多相关文章

  1. MySQL mysqldump数据导出详解

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

  2. MySQL mysqldump数据导出详解 --dump-slave 注意事项

    http://www.cnblogs.com/chenmh/p/5300370.html 介绍 在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工 ...

  3. MySQL mysqldump数据导出基本操作

    mysqldump mysqldump命令是mysql数据库中备份工具,用于将MySQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中. 选项 --all-databases, -A:导 ...

  4. mysql 开发进阶篇系列 35 工具篇 mysqldump(数据导出工具)

    一.概述 mysqldump客户端工具是用来备份数据库或在不同数据库之间进行数据迁移.备份内容包含创建表或装载表的sql语句.mysqldump目前是mysql中最常用的备份工具. 三种方式来调用my ...

  5. DB数据导出工具分享

    一个根据数据库链接字符串,sql语句 即可将结果集导出到Excel的工具 分享,支持sqlserver,mysql. 前因 一个月前朋友找到我,让我帮忙做一个根据sql导出查询结果到Excel的工具( ...

  6. mysql的数据导出方法

    mysql的数据导出几种方法   从网上找到一些问题是关于如何从MySQL中导出数据,以便用在本地或其它的数据库系统之上:以及 将现有数据导入MySQL数据库中. 数据导出 数据导出主要有以下几种方法 ...

  7. oracle数据导出工具sqluldr2

    oracle数据导出工具sqluldr2可以将数据以csv.txt等格式导出,适用于大批量数据的导出,导出速度非常快.导出后可以使用oracle loader工具将数据导入.下载完sqluldr2,工 ...

  8. 把mysql的数据导出成txt

    把mysql的数据导出成txt select a from b into outfile '/sqlfile/a.txt'; my.ini里需要设置secure_file_priv = d:/sqlf ...

  9. python打造漏洞数据导出工具

    功能 [x] 支持导出的数据:IP地址.漏洞名称.风险等级.整改建议.漏洞描述.漏洞CVE编号.漏洞对应端口.漏洞对应协议.漏洞对应服务等. [x] 导出不同端口的同一个漏洞,也就是一个端口对应一个漏 ...

  10. MySQL mysqldump 数据备份

    1.mysqldump 命令工具说明 参数注解: mysqldump 是采用SQL 级别的备份机制,它将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备 ...

随机推荐

  1. 第二十篇ORM查询与SQL语句

    ORM查询与SQL语句 多表操作 创建模型 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情 ...

  2. P1036 跟奥巴马一起编程

    转跳点:

  3. Spring入门之一-------实现一个简单的IoC

    一.场景模拟 public interface Human { public void goHome(); } Human:人类,下班了该回家啦 public interface Car { void ...

  4. 创建maven项目时pom.xml报错的解决方法

    创建maven项目时pom.xml时: 出现如下报错信息: Failure to transfer commons-lang:commons-lang:jar:2.1 from https://rep ...

  5. struts2模型驱动传值问题

    控制台错误提示: 2020-01-08 18:34:40,292 [http-nio-8080-exec-3] [org.apache.struts2.dispatcher.Dispatcher]-[ ...

  6. gentoo 修改键盘映射

    gentoo 上面修改键盘映射分为两种,一种是终端环境,一种是X环境. 终端环境 https://www.emacswiki.org/emacs/MovingTheCtrlKey https://wi ...

  7. hdu 1799 循环多少次?(组合)

    题目是这样的:   我们知道,在编程中,我们时常需要考虑到时间复杂度,特别是对于循环的部分.例如, 如果代码中出现 for(i=1;i<=n;i++) OP ; 那么做了n次OP运算,如果代码中 ...

  8. Centos 7.4 DNS域名解析

    1.安装部署包 yum -y install bind bind-utils bind-chroot 2.启动服务并设置开机自启动 [root@localhost ~]# systemctl star ...

  9. HttpServletRequest 的常用属性说明

    HttpServletRequest 的常用属性总是被窝遗忘,人老了记性就不好.所以做个笔记,方便以后查看. 测试地址:http://127.0.0.1:8080/Test/test getConte ...

  10. 修改maven默认仓库(即repository)的路径

    原文链接:https://blog.csdn.net/ideality_hunter/article/details/53006188 简要说明:主要操作为新建仓库路径,在maven的conf目录下修 ...