mysql备份
1、xtrabackup 的执行程序的系统用户需要对数据库目录(datadir)有读写权限。
2、xtrabackup 的备份程序需要对数据库有如下权限(详见mysql5.1中文手册的5.7.3章节,或者mysql5.6英文手册6.2.1章节):
READ权限: flush-hosts, flush-logs, flush-privileges, flush-status, flush-tables, flush-threads, refresh, reload
lock tables: 备份时需要加一个锁,除非使用--no-lock
REPLICATION CLIENT:为了获取二进制位置。
CREATE TABLESPACE: 是为还原时倒入表用的。为了能够创建、修改和删除表空间和日志文件组
PROCESS:为了看到备份时,服务器上面所有的线程,show processlist;
SUPER:为了能够启动、停止一个slave线程在复制环境中。
CREATE :创建以创建Percona的SCHEMA.xtrabackup历史数据库和表的权限
INSERT:以历史记录添加到PERCONA_SCHEMA.xtrabackup_history表,
SELECT:为了使用innobackupex--incremental-历史名称或SELECT权限innobackupex--incremental-历史UUID,以便于查找特征在Percona的SCHEMA.xtrabackup历史表innodb_to_lsn值。
授权:
mysql> grant reload,lock tables,replication client,create tablespace,process,super,create,insert,select on *.* to bak@localhost identified by 'bak';
安装:
yum install percona-xtrabackup percona-xtrabackup-test percona-xtrabackup-debuginfo perl-DBD-MySQL perl-DBI perl-Time-HiRes rsync ;
下面开始创建一个完全备份:
innobackupex是 xtrabackup中的其中一个工具:
由于innobackupex只是一个PERL脚本,所以需要参数。
mkdir /data1/backup_3306