mysqldump

Posted on 2022-04-18 09:09  -=-  阅读(50)  评论(0编辑  收藏  举报

常用选项

--导出单个db
mysqldump -uroot -pmysql --master-data=2 --single-transaction   --triggers --routines --databases sakila >insert.sql

--------------------------------------------------------------------------------
--导出多个db

mysqldump -uroot -pmysql --default-character-set=utf8 --hex-blob --single-transaction --routines --triggers --databases employees sakila >dumpdb.sql  

--------------------------------------------------------------------------------
--导出单个table
mysqldump -uroot -pmysql --default-character-set=utf8  -t --databases mysql --tables user > user.sql

--导入时,先进入对应的db下

--------------------------------------------------------------------------------
--不导出某些表
--ignore-table=eve.uainfo 多张多次指定 ,  注意=前后的空格

mysqldump  -uroot -pmysql  --default-character-set=utf8 --single-transaction --databases eve --ignore-table=eve.uainfo --ignore-table=eve.dimensions_info >ignoret.sql

--------------------------------------------------------------------------------
--load data格式
mysqldump -uroot -pmysql1  --databases eve --default-character-set=utf8 --single-transaction --tables TRACKINGCLICK -t --tab /mnt/howe/ --fields-terminated-by=','

--------------------------------------------------------------------------------
replace  --大表修复 不重建表

mysqldump-uroot -pmysql   --default-character-set=utf8 --hex-blob --single-transaction --routines --triggers -t  --replace=TRUE --databases mysql --tables user >user.sql

--------------------------------------------------------------------------------
--修复行 where

mysqldump  -uroot -pmysql  --default-character-set=utf8 --single-transaction -t  --databases iruluplay --tables third_party_device -w 'id =77643' > 1.txt

--------------------------------------------------------------------------------
单行insert导出 --skip-extended-insert

mysqldump -uroot - pmysql   --default-character-set=utf8  --skip-extended-insert  --databases mysql --tables user >user.sql

 

格式    描述
--add-drop-database 在每个CREATE DATABASE语句前添加一个DROP DATABASE 语句
--add-drop-table 在每个CREATE TABLE语句前添加一个DROP TABLE 语句
--add-drop-trigger 在每个CREATE TRIGGER语句前添加一个DROP TRIGGER 语句
--add-locks 围绕每个表转储附加LOCK TABLES和 UNLOCK TABLES语句
--all-databases 转储在所有数据库的所有表
--allow-keywords 允许创建列名关键字
--apply-slave-statements 包含STOP SLAVE优先CHANGE MASTER语句并在输出结束后START SLAVE
--bind-address=ip_address  使用指定的网络接口拦截MySQL Server    
--comments 为转储文件添加注释
--compact 压缩产生的输出
--compatible=name[,name,...] 产生的输出与其他数据库系统或老版本MySQL 服务兼容
--complete-insert 使用完整的INSERT语句包含列名
--create-options 在CREATE TABLE 语句中包含所有MySQL-specific 表选项
--databases 转储几个数据库
--debug[=debug_options] 写调试日志
--debug-check 当程序退出打印调试信息
--debug-info 当程序退出答应调试信息,内存,CPU统计
--default-auth=plugin 身份验证插件使用
--default-character-set=charset_name 指定默认字符集
--defaults-extra-file=file_name 除了通用文件读取选项文件
--defaults-file=file_name 仅读取命名的选项文件
--defaults-group-suffix=str 选项组后缀值
--delayed-insert 写INSERT DELAYED语句而不是INSERT语句
--delete-master-logs 在master replication 服务器上,执行转储操作后删除二进制日志
--disable-keys 每个表,INSERT语句前后使用启用和禁用keys语句
--dump-date 如果给定--comments,包含转储日志为“完成转储”注释
--dump-slave[=value] CHANGE MASTER语句包含master到slave的二进制日志位置和坐标
--events 从被转储的数据库中转储事件
--extended-insert 使用多行INSERT语法包含几个值列表
--fields-enclosed-by=string 与LOAD DATA INFILE对应的选项意义相同
--fields-escaped-by 与LOAD DATA INFILE对应的选项意义相同
--fields-optionally-enclosed-by=string 与LOAD DATA INFILE对应的选项意义相同
--fields-terminated-by=string 与LOAD DATA INFILE对应的选项意义相同

--flush-logs 开始转储前,切换MySQL服务日志文件
--flush-privileges 转储mysql数据库后,发出一个FLUSH PRIVILEGES语句
--help 显示帮助信息并且推出
--hex-lob 使用十六进制表示法转储二进制列
--host 连接主机名(IP地址或主机名)
--ignore-table=db_name.table_name 不转储的表
--include-master-host-port 使用--dump-slave时,在CHANGE MASTER语句中包含MASTER_HOST/MASTER_PORT
--insert-ignore 写INSERT IGNORE语句而不是INSERT语句
--lines-terminated-by=string 这个选项作用与LOAD DATA INFILE语句中的作用相同
--lock-all-tables 锁住所有数据库的所有表
--lock-tables 转储前锁所有的表
--log-error=file_name 附件警告和错误到指定文件
--login-path=name 从.mylogin.cnf读取登录路径选项
--master-data[=value] 在输出文件中写二进制日志文件名和位置
--max_allowed_packet=value 服务接收或发送最大包的长度
--net_buffer_length=value socket通讯和TCP/IP的缓存大小
--no-autocommit 在每个转储的表的insert 语句附加SET autocommit = 0 和 COMMIT语句
--no-create-db 不添加CREATE DATABASE语句
--no-create-info 不写CREATE TABLE语句重新创建每个被转储的表
--no-data 不转储表内容
--no-defaults 不读取任何选项文件的默认选项
--no-set-names 和--skip-set-charset一样
--no-tablespaces 不写任何CREEATE LOG FILE GROUP 或 create tablespace语句在输出中
-opt --add-drop-table, --add-locks, --create-options, --quick, --extended-insert, --lock-tables, --set-charset,--disable-keys 选项的缩写形式
--order-by-primary 转储的每个表行通过主键排序,或太的第一个唯一索引
--password[=password] 用于连接到服务是的密码
--pipe 在windows上,连接服务器使用的管道名
--plugin-dir=path 安装插件的目录
--port=port_num 用于连接TCP/IP端口号
--print-defaults 打印该程序在配置文件中的参数列表
--protocol=type 连接使用的协议
--quick 从服务器中的表检索行一次一行
--quote-names 引用标识符在重音符中
--replace 写replace语句而不是insert语句
--result-file=file 输出结果指定文件
--routines 转储(过程和函数)从被转储的数据库
--secure-auth 不发送密码到服务器在老版本(pre-4.1.1)
--set-charset 添加设置SET NAMES default_character_set到输出
--set-gtid-purged=value 控制是否在备份文件中添加SET @@GLOBAL.GTID_PURGED语句。
--shared-memory-base-name=name 在windows平台上用内存共享方式连接到本地mysql server,默认值是MYSQL,名字区分大小写
--single-transaction 从服务器转储数据前,发出一个BEGIN SQL语句
--skip-add-drop-table 禁用--add-drop-table
--skip-add-locks 禁用--add-locks
--skip-comments 禁用--comments
--skip-compact 禁用--compact
--skip-disable-keys 禁用--disable-keys
--skip-extended-insert 禁用--extended-insert
--skip-opt 禁用-opt
--skip-quick 禁用--quick
--skip-quote-names 禁用--quote-names
--skip-set-charset 禁用--set-charset
--skip-triggers 不备份triggers
--socket=path 连接本机server所使用的socket
--ssl 加密连接
--ssl-ca=file_name 密钥存放路径
--ssl-capath=dir_name 包含PEM格式的受信任SSL CA证书的目录路径
--ssl-cert=file_name 包含PEM格式的X509证书的文件路径
--ssl-cipher=cipher_list 用于SSL加密的允许密码列表
--ssl-crl=file_name 包含证书吊销列表的文件的路径
--ssl-crlpath=dir_name 包含证书吊销列表文件的目录的路径
--ssl-key=file_name 包含PEM格式X509密钥的文件路径
--ssl-verify-server-cert 根据连接到服务器时使用的主机名验证其证书中的服务器公用名值
--tab=path 生成制表符分隔的数据文件
--tables 全表导出
--triggers 为每个备份的表备份triggers
--tz-utc 将 SET TIME_ZONE='+00:00' 添加到转储文件
--user=user_name 连接server所使用的用户名
--verbose 详细模式
--version 显示版本信息并退出
--where='where_condition' 仅备份与where条件在匹配的行