首页 > 编程知识 正文

mysql数据库,oracle冷备份

时间:2023-05-03 09:12:03 阅读:165496 作者:2315

使用percona xtra备份

先安装从属软件包

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/xtra backup.my.cn f/home

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

- -应用日志操作

innobackupex-- user=your dbuser-- password=XXX-- apply-log/path/to/backup dir/$ timestamp /

此过程将ibdata1与ib_logfile0、ib_logfile1的log sequence number相对应。 否则,表空间和事务日志可能不匹配。

innodb : error : pagexxxlogsequencenumberxxinnodb 3360 isin the future! currentsystemlogsequencenumberxxx。

数据库具有重建innodb日志的功能,但最好避免.

可以直接使用此备份创建Mysql_multi的独立多实例。 此外,不需要关闭原始mysql。

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

mv/home/data/bak _ MySQL/XXX/home/data/MySQL 2

chown-r MySQL.MySQL/home/data/MySQL 2

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

附上几个代码:

#! /sxddr/bash

db _ config=/data2/data/xtra backup.my.cn f

DB_USER=xxx

db _ pass _ file='/etc/db/' $ db _ user

BACKUP_HOME=/data2/data

# getdatabasepasswordfunctiongetdbpass (

{

RET=`cat$DB_PASS_FILE`echo$RET

}

DB_PASS=$(getDbPass )

cd $BACKUP_HOME

# partialbackupfunctionpartial _ backup (

innobackupex-- defaults-file=$ db _ config--user=$ db _ user-- password=$ db _ pass _-- datababases=

$BACKUP_HOME

YEAR=`date '%Y ' `

获取timestamp=` ls|grep 2014|head-n1 ` #时间戳名称

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,orbasebackupfunctionfull _ backup ()

innobackupex-- defaults-file=$ db _ config--user=$ db _ user-- password=$ db _ pass _

$BACKUP_HOME

获取timestamp=` ls|grep 2014|head-n1 ` #时间戳名称

innobackupex-- defaults-file=$ db _ config-- user=$ db _ user-- password=$ db _ pass-apply-log $ backup

chown-r MySQL.MySQL $ backup _ home/$ timestamp/}

#incremental backup,can be used as a slave,orbasebackupfunctionincremental _ backup ()

获取timestamp=` ls|grep 2014|head-n1 ` #时间戳名称

incremental _ base _ dir=/data2/data/MySQL3/backup _ dir=/data2/data/backups/innobackupex-user=$ db

也可以使用LSN执行增量备份

# innobackupex---incremental $ backup _ dir---incremental-lsn=XXX

}

full_backup

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。