文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL 5.5 mysqldump备份说明

2024-04-02 19:55

关注
mysqldump客户端工具可以执行逻辑备份,生成一系列可以执行的SQL语句。通过这个工具可以备份出一个或多个MySQL数据库。mysqldump命令也可以生成CSV格式、分隔符格式或XML格式的输出文件。

--常用参数

--help, -? 显示帮助

--user=user_name, -u user_name 当连接到MySQL服务器时,所使用的用户名

--password[=password], -p[password] 当连接到MySQL服务器时,所使用的密码;当使用短参数-p搭配明文密码时,在-p和密码之间不能有空格。

--socket=path, -S path 当连接到本地服务器时,Unix系统使用的套接字文件,或Windows系统使用的命名管道

--host=host_name, -h host_name MySQL服务器所在的主机。默认主机是本地服务器。

--port=port_num, -P port_num 连接所使用的TCP/IP端口号

--databases, -B 备份多个数据库

--all-databases, -A 备份所有数据库中的所有表

--tab=dir_name, -T dir_name 备份tab符分割的文本格式数据文件

--fields-terminated-by 导出文件的字段分隔符,搭配--tab参数使用

--fields-escaped-by 导出文件的字段包裹符,搭配--tab参数使用

--default-character-set=charset_name 指定默认的字符集

--tables 覆盖--databases or -B参数,备份出表的数据

--where='where_condition', -w 'where_condition' 只导出符合指定WHERE条件的行
例如:
--where="user='jimf'"
-w"userid>1"
-w"userid<1"

--lock-tables, -l 对于要备份的数据库,锁定所有要备份的表。对于MyISAM 表,所加的锁是READ LOCAL锁,以允许表的并发插入操作。对于事务性表InnoDB表,--single-transaction参数要比--lock-tables效果好,因为这个参数不会锁表。

--single-transaction 这个参数将事务的隔离模式设置为REPEATABLE READ,然后在备份前发送START TRANSACTION语句到服务器。这对于事务表InnoDB表来说很有用,因为备份的时候会备份一致状态的数据库(备份的时间点是发出START TRANSACTION语句的时候)而不会阻塞任何应用的进行

--no-data, -d 只导出表的结构

--no-create-info, -t 导出的时候,不导出CRATE TABLE语句

--force, -f 导出的时候,忽略所有错误,及时遇到SQL错误,也继续执行

--flush-logs, -F 导出前刷新日志文件

--extended-insert, -e 对于INSERT语句使用多行插入语法(一行INSERT语句带有多个VALUES列表),这个参数会缩小备份文件的大小并且会提高数据导入时的INSERT执行速度

--dump-slave[=value] 用于生成Slave备份集。

--include-master-host-port 通常和--dump-slave参数搭配使用,本参数将在CHANGE MASTER TO语句后附加MASTER_HOST和MASTER_PORT内容

--master-data[=value] 用于生成Slave备份集的专用参数

--lock-all-tables, -x 锁定数据库中所有的表。这个参数会在备份的过程中为数据库加上全局只读锁。这参数会关闭 --single-transaction 和 --lock-tables 这两个参数。

--disable-keys, -K 在导出的文件中输出; 和 ;语句。在插入数据前先禁用索引,等数据插入完成后再启用索引,目的是为了加快导入的速度。

--max_allowed_packet 服务端和客户端连接使用buffer的最大字节长度,默认值时24MB,最大值时1GB。

--net_buffer_length 服务端和客户端连接使用的初始化buffer大小

--no-autocommit 禁用自动提交功能

--no-create-db, -n 不生成CREATE DATABASE语句

--routines, -R 导出存储过程和函数

--flush-privileges 当导出mysql数据库后执行FLUSH PRIVILEGES语句

--ignore-table=db_name.tbl_name 不导出的表名

[root@localhost backup]# /software/bin/mysqldump -help
Usage: mysqldump [OPTIONS] database [tables]
OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR     mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help

--备份单个数据库
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock fire > /backup/firedb_fullbk.sql

--备份多个数据库
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --databases neo fire > /backup/fire_neo_db_fullbk.sql

--备份全库
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --all-databases  > /backup/all_db_fullbk.sql

--备份所有库

[root@localhost backup]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock -A -R --single-transaction -l --default-character-set=utf8 | gzip > /backup/dbfullbak_`date +%F`.sql.gz
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.

[root@localhost backup]# ls -trl
-rw-r--r--. 1 root  root   1208158 Apr 23 07:11 dbfullbak_2016-04-23.sql.gz

--备份单个库,生成tab符分割的文本格式数据文件
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --tab=/backup/ fire
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯