前言:

并不是每家公司都高大上,并不是每家公司都会用一些很前沿的技术来做备份这一块,有些企业或者有些行业或者团队本身由于各方面的原因使用简单或者复杂的方式来做备份这块,这次这个文档算是对以前工作的总结,看一下各种备份方式中的优缺点

1 mysqldump

常用的备份参数

-R --events --triggers=true  --single-transaction --master-data=2

-R(--routines): 导出存储过程以及自定义函数

--events: 导出事件

--triggers=true:导出触发器.默认开启,用--skip-triggers禁用

--single-transaction:该选项在导出数据之前提交一个BEGIN SQL 语句,BEGIN不会阻塞任何应用程序且能保证到处时数据库的一致性状态,跟--lock-tables是互斥的.因为lock tables会使任何挂起的事务隐含提交

--master-data=2: 该选项将binlog的位置和文件名追加到输出文件中,如果是1 将会输出CHANGE MASTER命令,如果为2,输出的CHANGE MASTER 命令钱添加注释信息。该选项将打开--lock-all-tables选,除非--single-transaction也被指定(在这种情况下,全局读锁在开始导出时获得很短的时间),该选项自动关闭--lock-tables选项

# /opt/app/mysql/bin/mysqldump -uroot -p -R --events --triggers=true  --single-transaction --master-data=2 sakila > sakila.sql

2 数据目录拷贝----此略

3 基于xtarbackup的备份

rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm

yum -y install percona-xtrabackup

安装后的软件包有

[root@MASTER_03 bin]# rpm -ql percona-xtrabackup

/usr/bin/innobackupex

/usr/bin/xbcloud

/usr/bin/xbcloud_osenv

/usr/bin/xbcrypt

/usr/bin/xbstream

/usr/bin/xtrabackup

/usr/share/doc/percona-xtrabackup-2.3.3

/usr/share/doc/percona-xtrabackup-2.3.3/COPYING

/usr/share/man/man1/innobackupex.1.gz

/usr/share/man/man1/xbcrypt.1.gz

/usr/share/man/man1/xbstream.1.gz

/usr/share/man/man1/xtrabackup.1.gz

具体用法

1 创建备份用户

mysql> grant reload,lock tables,replication client on *.* to 'dbbak'@'localhost' identified by 'bk2016' ;
mysql> flush privileges;
进行数据库全备

mkdir -pv /data/dbbak

cd /data/dbbak

使用以下参数进行全库备份

[root@MASTER_03 dbbak]# innobackupex
--user=dbbak --password=bk2016 /data/dbbak/

会在dbbak目录下生成一个以时间戳为准的目录

2016-02-03_15-48-02

在这个目录下有一个文件

[root@MASTER_03 dbbak]# cat
2016-02-03_15-48-02/xtrabackup_checkpoints

backup_type = full-backuped

from_lsn = 0

to_lsn = 1095181486

last_lsn = 1095181486

compact = 0

recover_binlog_info = 0

增量备份
创建一个库中建立一个表(建表才会导致LSN号变化)

[root@MASTER_03 dbbak]# innobackupex
--user=dbbak --password=bk2016 --incremental /data/dbbak/ --incremental-basedir=/data/dbbak/2016-02-03_15-48-02/

生成一个新目录

2016-02-03_16-01-28

对比这个checkpoint

[root@MASTER_03 dbbak]# cat
2016-02-03_16-01-28/xtrabackup_checkpoints

backup_type = incremental

from_lsn = 1095181486

to_lsn = 1095181486

last_lsn = 1095181486

compact = 0

recover_binlog_info = 0

4  MySQL企业级的备份mysqlbakcup

mysqlbackup
--user=dba --password --port=3306  --with-timestamp --backup-dir=/export/backups   backup

5基于LVM的快照备份---略

MySQL中备份的几种方式的更多相关文章

  1. MySQL数据库备份的4种方式

    MySQL备份的4种方式 总结: 备份方法 备份速度 恢复速度 便捷性 功能 一般用于 cp 快 快 一般.灵活性低 很弱 少量数据备份 mysqldump 慢 慢 一般.可无视存储引擎的差异 一般 ...

  2. MySql数据库备份的几种方式

    mysqldump工具备份 备份整个数据库 $> mysqldump -u root -h host -p dbname > backdb.sql 备份数据库中的某个表 $> mys ...

  3. mysql表备份的一种方式

    前提: 最近测试环境shop表经常出现表损坏不能正常查询,通过mysql的修复方法,暂时有效.故做该表的迁移操作. 思路是: 停止数据库的操作 1.备份老表.  2.创建一个结构一样的表. 3.将老表 ...

  4. mysql备份的4种方式

    mysql备份的4种方式 转载自:https://www.cnblogs.com/SQL888/p/5751631.html 总结: 备份方法 备份速度 恢复速度 便捷性 功能 一般用于 cp 快 快 ...

  5. Mysql查看版本号的五种方式介绍

    Mysql查看版本号的五种方式介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-05-03   一.使用命令行模式进入mysql会看到最开始的提示符;二.命令行中使用status可以看到 ...

  6. mysql级联更新的两种方式:触发器更新和外键

    1.mysql级联更新有两种方式:触发器更新和外键更新. 2.触发器更新和外键更新的目的都是为了保证数据完整性. 我们通常有这样的需求:删除表Table 1中记录,需要同时删除其它表中与Table 1 ...

  7. [Mysql]查看版本号的五种方式

    [Mysql]查看版本号的五种方式   目录(?)[+]   查看版本信息 #1 使用命令行模式进入mysql会看到最开始的提示符 Your MySQL connection id is 3Serve ...

  8. svn备份一般采用三种方式

    http://www.cnblogs.com/itech/archive/2011/10/11/2206988.html 备份策略 ============== svn备份一般采用三种方式:1)svn ...

  9. Java中创建对象的几种方式

    Java中创建对象的五种方式: 作为java开发者,我们每天创建很多对象,但是我们通常使用依赖注入的方式管理系统,比如:Spring去创建对象,然而这里有很多创建对象的方法:使用New关键字.使用Cl ...

随机推荐

  1. Hibernate单向“一对多”关联

    1. 基于连接表的单向“一对多”关联,应该优先被采用其中指定many-to-many的unique="true",为单向“一对多”,不指定就是单向“多对多” <class n ...

  2. outline轮廓线在不同CSS样式下的表现

    outline轮廓线在不同CSS样式下的表现 CSS 去除浏览器默认 轮廓外框 在默认情况下,点击 a 标签,input,或者添加click事件的时候,浏览器留下一个轮廓外框(chrome之下为蓝色) ...

  3. 解决window10系统电脑插入耳机之后没有声音的问题

    其实办法也是从百度百科上查到的 ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄     可能是因为自己某个不小心的操作更改了设置 1. 首先要点开设置按钮,在搜索栏输入控制面板 (当然知道控制面板在哪里的小伙伴就不用 ...

  4. MQTT压力测试之Tsung的使用

    简介 Tsung 是一个压力测试工具,可以测试包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服务器.针对 HTTP 测试,Tsung ...

  5. Linux禁止非WHEEL用户使用SU命令

    通常情况下,一般用户通过运行"su -"命令.输入正确的rootpassword.能够登录为root用户来对系统进行管理员级别的配置. 可是.为了更进一步加强系统的安全性,有必要建 ...

  6. SDUTOJ 2712 5-2 派生类的构造函数

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUl9NaXNheWE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...

  7. Android BlueDroid(三):BlueDroid蓝牙开启过程enable

    关键词:bluedroid  enableNative BTIF_TASK  BTU_TASK bt_hc_work_thread set_power  preload GKI作者:xubin3417 ...

  8. [原创]FreeSWITCH命令:uuid_dual_transfer

    该篇文章主要介绍FreeSWITCH的API命令uuid_dual_transfer的用法. 命令介绍 该命令用于同时将两条腿进行转移,并且是可以转移到不同的方向. -USAGE: <A-des ...

  9. 贯通tomcat --- 电子书

    http://www.educity.cn/jiaocheng/j10865.html 第1章 认识Tomcat [本章导读] Tomcat服务器是一个免费的开放源代码的Web应用服务器.它是Apac ...

  10. java获取真实的ip地址

    直接上代码,获取请求主机的IP地址,如果通过代理进来,则透过防火墙获取真实IP地址 public class IPUtil { private static final Logger logger = ...