使用Percona XtraBackup

先安装依赖包

yum install -y perl-DBD-MySQL perl-DBI perl-Time-HiRes libaio*

最后面的参数是备份的目录;

#使用默认的 /etc/my.cnf 配置文件

innobackupex --user=xxx --password=xxx  /home/data/bak_mysql/

由于我们使用的是单机多实例,所以配置文件里面修改了[mysqld]项,xtrabackup无法正确识别datadir,所以复制了一份,使用原来单数据库的格式,将默认的数据库datadir改为我们的主数据库datadir

#自定义配置文件

innobackupex --user=xxx --password=xxx --defaults-file=/home/data/xtrabackup.my.cnf /home/data/bak_mysql/

innobackupex备份速度非常快,完成后会显示:innobackupex: completed OK!

--apply-log操作

innobackupex --user=yourDBuser --password=xxx--apply-log /path/to/backupdir/$TIMESTAMP/

这一步会将ibdata1与ib_logfile0,ib_logfile1的log sequence number对应起来,否则可能会出现表空间和事务日志不一致的情况,

InnoDB: Error: page xxx log sequence number xxx InnoDB: is in the future! Current system log sequence number xxx.

虽然数据库有重建innodb日志的功能,但是,还是避免的好...

下面可以直接用这个备份来做一个Mysql_multi的单机多实例,并且,不需要关闭原来的mysql;

将备份的目录$DATETIME目录改名为mysql2,

mv /home/data/bak_mysql/xxx /home/data/mysql2

chown -R mysql.mysql /home/data/mysql2

cp /etc/my.cnf /home/data/my.cnf

vim /home/data/my.cnf

#修改my.cnf,改为 多实例,参考mysqld_multi --example输出的例子;

启动新增的实例;

mysqld_multi --defaults-file=/home/data/my.cnf start 2

附上一些代码:

#!/bin/bash

DB_CONFIG=/data2/data/xtrabackup.my.cnf

DB_USER=xxx

DB_PASS_FILE='/etc/db/'$DB_USER

BACKUP_HOME=/data2/data

# get database passwordfunctiongetDbPass()

{

RET=`cat$DB_PASS_FILE`echo$RET

}

DB_PASS=$(getDbPass)

cd $BACKUP_HOME

# partial backupfunctionpartial_backup(){

innobackupex--defaults-file=$DB_CONFIG \--user=$DB_USER --password=$DB_PASS \--databases=/xxx/dump.tables \

$BACKUP_HOME

YEAR=`date +"%Y"`

timestamp=`ls |grep 2014 |head -n 1` #得到时间戳名字

innobackupex--user=$DB_USER -password=$DB_PASS --apply-log --export $BACKUP_HOME/$timestamp/

chown -R mysql.mysql $BACKUP_HOME/$timestamp/}

#full backup , can be used as a slave , or base backupfunctionfull_backup(){

innobackupex--defaults-file=$DB_CONFIG \--user=$DB_USER --password=$DB_PASS \

$BACKUP_HOME

timestamp=`ls |grep 2014 |head -n 1` #得到时间戳名字

innobackupex--defaults-file=$DB_CONFIG --user=$DB_USER --password=$DB_PASS --apply-log $BACKUP_HOME/$timestamp/

chown -R mysql.mysql $BACKUP_HOME/$timestamp/}

#incremental backup , can be used as a slave , or base backupfunctionincremental_backup(){

timestamp=`ls |grep 2014 |head -n 1` #得到时间戳名字

INCREMENTAL_BASE_DIR=/data2/data/mysql3/BACKUP_DIR=/data2/data/backups/innobackupex--user=$DB_USER --password=$DB_PASS \--incremental $BACKUP_DIR \--incremental-basedir=$INCREMENTAL_BASE_DIR

#同样可以使用LSN来进行增量备份

#innobackupex--incremental $BACKUP_DIR --incremental-lsn=XXX

}

full_backup

mysql单机热备份_mysql数据库热备份相关推荐

  1. mysql数据库热备份_mysql数据库热备份

    使用Percona XtraBackup 先安装依赖包 yum install -y perl-DBD-MySQL perl-DBI perl-Time-HiRes libaio* 最后面的参数是备份 ...

  2. mysql删除原则_MySQL数据库的增删选查

    数据库是专门存储数据对象的容器,这里的数据对象包括表.视图.触发器.存储过程等,其中表是最基本的数据对象. 创建数据库 在 MySQL 数据库中存储数据对象之前,先要创建好数据库. 语法: creat ...

  3. mysql select表达式_MySQL数据库SELECT查询表达式解析

    数据的管理在很大一部分是在进行查找工作,而SELECT占据了很大的一部分 SELECT select_expr [,select_expr...] [ FROM table_reference WHE ...

  4. mysql断网_mysql数据库断网链接

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  5. centos72安装mysql配置密码_MySQL数据库之170419、Centos7下完美安装并配置mysql5.6

    本文主要向大家介绍了MySQL数据库之170419.Centos7下完美安装并配置mysql5.6 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. linxu环境: centos ...

  6. mysql 关闭锁_mysql数据库取消锁

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  7. mysql权限表_MySQL 数据库赋予用户权限操作表

    MySQL清空数据库的操作:truncate table tablename; MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户 一.grant 普通数据 ...

  8. mysql客户端查询_MySQL数据库之利用mysql客户端查询UCSC数据库

    本文主要向大家介绍了MySQL数据库之利用mysql客户端查询UCSC数据库 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. UCSC Genome Browser是由Unive ...

  9. mysql 表上限_mysql 数据库表的上限

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

最新文章

  1. ASP.NET中WebForm组件CheckBoxList编程
  2. html 复选框 mysql_Html:实现带复选框的下拉框(一)
  3. 网站自动登录功能的设计[转]
  4. nginx 如何处理请求系列1-Nginx安装
  5. Python 计算机视觉(四)—— OpenCV进行图像算数与逻辑运算
  6. scholar communication
  7. css实现透明度(兼容IE6、火狐等)
  8. AI:**消灭程序员需要一百年吗?
  9. MQTT 连接 阿里云物联网十六进制数据分析笔记
  10. 【Elasticsearch】Elasticsearch bouncing result 问题
  11. python3安装包是说解压数据出错怎么办_无法修复“zipimport.zipimporter错误:无法解压缩数据;键入python3.6时zlib不可用获取pip.py...
  12. k8s学习:挂载 pvc
  13. 108次练习之模拟实现STL中的Vector(一)
  14. per_cpu机制的详解
  15. paip.vs2010 或.net 4.0安装出错解决大法.
  16. 阶乘的传统流程图 c语言,C语言算法与流程图.ppt
  17. 使用IE缓存提取微博相片
  18. 计算机总线相关知识,计算机包括哪几种总线?
  19. mysql sock golang_golang socket连接复用 - smux
  20. ERP管理系统如何与精益生产MES有效结合

热门文章

  1. Python中的for in if 用法
  2. java 线程 john_教你Java开发中多线程同步技巧
  3. jnativecpp.dll一定要放到系统目录下吗_「实用」室内甲醛到底该如何去除?关键要做到这两点...
  4. java settimezone_Java时间处理2----时区TimeZone类方法探究(Java8以前)
  5. filters获取data中的数据
  6. webstorm使用插件 statistic 统计代码
  7. 解决npm npm does not support Node.js
  8. 项目开发周期与数据库设计对比
  9. DBCC DBREINDEX重建索引提高SQL Server性能
  10. SpringMVC 单文件上传与多文件上传