1.  直接备份某个库或表 ,或多个库多个表
mysqldump -uroot -pPassword [database name] > [dump file]
mysqldump -uroot -pPassword  --databases mydatabase1 mydatabase2 mydatabase3 > [dump file]
mysqldump --all-databases> test.dump

2.  备份并压缩
mysqldump -uroot -pPassword --events -B [database name] | gzip > ${date}_${dbname}.sql.gz

3.  跨主机备份
mysqldump --host=host1 --opt sourceDb| mysql --host=host2 -C targetDb

4.  --opt

如果加上--opt参数则生成的dump文件中稍有不同:
建表语句包含drop table if exists tableName
insert之前包含一个锁表语句lock tables tableName write,insert之后包含unlock tables

5.  只备份表结构
mysqldump -uroot -pPassword --no-data --databases mydatabase1 mydatabase2 mydatabase3 > test.dump

6.  恢复表或者数据
mysql [database name] < [backup file name]

7.  mysql  二进制 增量备份
mysql  开启二进制  [mysqld]log-bin=mysql-bin

优化
1.  --all-databases 包含了 mysql 数据库,其中包含了权限的数据,所以我们应该加上 --flush-privileges,在恢复时,权限才能生效;
注意 --all-databases 包括了mysql数据库,但是不会包含 information_schema和performance_schema两个数据库。

2. --delete-master-logs(尽量不要用) 备份之后,会执行 purge logs to 语句。删除了备份之后的master上的binary log. 一般而言,我们不建议随便删除binary log.
我们应该将它们保存起来,而不是直接删除。以防万一,要留条退路。

3. 
因为 mysqldump 默认启用了 --lock-tables,所以会导致在备份期间对所有表持有读锁: lock table tb read
local,所以所有的update,delete语句会被阻塞。但是select语句和insert语句不会被阻塞。

4.  如果要得到一致性的备份的话,需要使用 --lock-all-tables 或者使用 --single-transaction选项。前者使用了全局读锁,不允许任何修改操作。后者使用了事务的特性来得到一致性备份。

5. 
--master-data         使用此选项dump a master
replicationserver到dump文件,可用于设立另一台服务器作为master的slave。它会使dump输出包含CHANGE
MASTER TO语句,标记dump源的二进制日志坐标(文件名和位置)

如果选项赋值为2,那么CHANGE MASTER TO 语句会被写成一个SQL comment(注释),从而只提供信息;
如果选项赋值为1,那么语句不会被写成注释并且在dump被载入时生效。如果没有指定,默认值为1。

mysqldump -uxxx -p --single-transaction --master-data=2 --routines --flush-logs --databases db1 db2 db3 > alldb.sql;
--flush-logs  在mysqldump之前 进行日志刷新一次
--routines 用来备份存储过程和函数,触发器默认会备份。

mysqldump 备份的更多相关文章

  1. 使用Mysqldump 备份数据库

    使用Mysqldump 备份数据库 1.备份一个数据库 mysqldump --user [user name] --password=[password] [database name] >  ...

  2. mysqldump备份7

    http://www.cnblogs.com/ivictor/p/5505307.html   对于MySQL的备份,可分为以下两种: 1. 冷备 2. 热备 其中,冷备,顾名思义,就是将数据库关掉, ...

  3. mysqldump备份原理6

    写在前面:我们在使用mysqldump备份数据时,请一定记住要加上 -q 参数,后果可能是很严重的,不要给自己挖坑哦.到底为什么呢,且听我慢慢道来! 先来看看 mysqldump –help 中,关于 ...

  4. mysqldump备份数据库时出现when using LOCK TABLES

    用mysqldump备份数据库时,如果出现when using LOCK TABLES,解决办法是加上 --skip-lock-tables 例如: 用mysqldump备份数据库时出现 29: Fi ...

  5. mysqldump备份原理

    现网中数据库运维时,要经常对数据库做热备.为保证恢复时数据的完整性与一致性, 一种方法是在备份之前锁表,但锁表会影响正在运行的业务. mysqldump是当前MySQL中最常用的备份工具,通过mysq ...

  6. mysqldump 备份数据说明+ 避免锁表

    1.mysqldump命令备份Mysql数据库的参数说明 在用mysqldump备份使用那些参数选项是最完美的组合呢?--skip-opt--create-option                 ...

  7. 如何使用mysqldump备份数据库

    一.背景 在开发项目中,数据库是核心资产.除了做主备冗余增加可靠性外,定期备份数据也是必须的. 使用mysqldump备份数据具有操作简单,备份和恢复时间短的优点(mysqldump备份数据生成的是批 ...

  8. crontab的mysqldump备份任务未能完全正确执行的故障处理

    crontab是每个运维一线人员必须掌握的技术,熟练运用crontab可以自动帮助我们执行重复性的工作,提高运维的工作效率.它就像一个闹钟,在特定的时间,准时响应并执行相应的任务.如果你的工作经常与L ...

  9. mysql8.0绿色版安装及mysqldump备份

    1.下载mysql绿色版压缩包https://dev.mysql.com/downloads/mysql/ 2.解压到安装目录后,在根目录创建data文件夹 3.把mysql下的bin目录添加到环境变 ...

  10. mysqldump备份表中有大字段失败的排错过程

    几天前收到某个业务项目,MySQL数据库逻辑备份mysqldump备份失败的邮件,本是在休假,但本着工作认真负责,7*24小时不间断运维的高尚职业情操,开始了DBA的排错之路(一开始数据库的备份都是成 ...

随机推荐

  1. clojure 环境搭建

    以下是clojure 基础环境搭建的几种方式 mac brew install clojure linux curl -O https://download.clojure.org/install/l ...

  2. IIS添加MIME类型.woff/.svg/.woff2/.eot/.otf.ttf

    IIS添加MIME类型: 文件扩展名 MIME类型 .svg     image/svg+xml.woff   application/x-font-woff.woff2 application/x- ...

  3. 搭建Hadoop+Python的大数据开发环境

    实验环境 CentOS镜像为CentOS-7-x86_64-Everything-1804.iso 虚机配置 节点名称 IP地址 子网掩码 CPU/内存 磁盘 安装方式 master 192.168. ...

  4. Elasticsearch详解

    Elasticsearch详解 Chandler_珏瑜 关注  5.8 2019.05.05 17:19* 字数 10971 阅读 1147评论 5喜欢 36 5.1 Lucene简介  Lucene ...

  5. Solr7.x学习(4)-导入数据

    导入配置可参考官网:http://lucene.apache.org/solr/guide,http://lucene.apache.org/solr/guide/7_7/ 1.数据准备(MySQL8 ...

  6. Java通过poi读取excel中文件

    maven依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</a ...

  7. Typescript 学习 - 类

    class class 并不是一种新的数据结构,只是在函数原型基础上的语法糖 class People { hand: number; constructor(hand: number) { this ...

  8. 关于JavaSE程序的小总结(不分先后顺序 后续继续补充)

    统计字符串中某个字符串出现的次数 package com.jiang.demo01; public class Demo01 { public static void main(String[] ar ...

  9. Vue ----------- 了解, 展示json 数据

    Vue.js  是一套构建用户界面的渐进式框架. 优点: 与大型框架不同的是采用自底向上的增量开发的设计, 只聚焦于视图层,不仅易于上手,还便于与第三方库或既有项目整合 当与现代化工具链以及各种类库结 ...

  10. python 基础 ---- 文件读写

    文件是一种存储在存储存储媒介上的信息或数据 常用的文件类型 文件 的打开关闭 close() 关闭文件 文件的打开路径 绝对路径 : 文件在操作系统中标准的存放路径 相对路径: 与目前引用文件的相对位 ...