Mysql增量备份
Xtrabackup中包含两个工具:
• xtrabackup - 用于热备份innodb, xtradb表的工具,不能备份其他表(MYISAM表)。
• innobackupex - 对xtrabackup封装的perl脚本,提供了myisam表备份的能力。(能进行整库和数据表备份)。
*注:备份恢复之前请做好全库备份
安装Xtrabackup
官网网址http://www.percona.com/doc/percona-xtrabackup/index.html
安装
配置文件中需要添加 datadir = /usr/local/mysql/datadir //MYSQL数据文件目录
1、自动安装 YUM 源后,用YUM安装
yum install -y gnupg
rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm
yum install -y percona-xtrabackup
2、手动写入YUM源
新建文件 /etc/yum.repos.d/Percona.repo
[percona]
name = CentOS $releasever - Percona
baseurl=http://repo.percona.com/centos/
releasever/os/
basearch/
enabled = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-percona
gpgcheck = 1
之后YUM安装 ,安装后可执行xtrabackup -v 查看
之后可以用xtrabackup 备份
一、innobackupex 备份全库
备份主程序为 /usr/bin/innobackupex-1.5.1,其需要从 mysql 配置文件中读取相关信息,Mysql缺省配置文件 my.cnf 中未配置 datadir 选项,必须显性添加,否则备份程序会报错:
innobackupex:: Warning: Ignored unrecognized line 2 in options : ‘xtrabackup: Error: Please set parameter ‘datadir’
在论坛Mysql 配置文件 /etc/my.cnf 配置文件添加 datadir 内容:
在[mysqld]段加入
datadir = /usr/local/mysql/var
1、备份
/usr/bin/innobackupex-1.5.1 –user=root –password=password –defaults-file=/etc/my.cnf /usr/local/bbsBackup
2、恢复
/usr/bin/innobackupex-1.5.1 –apply-log /usr/local/bbsBackup/2011-09-26_02-00-01/
/usr/bin/innobackupex-1.5.1 –copy-back /usr/local/bbsBackup/2011-09-26_02-00-01/
chown -R mysql:mysql /usr/local/mysql/
/etc/init.d/mysqld start
二、全量备份及恢复
备份
注:使用xtrabackup,仅限InnoDB和xtradb表,且注意mysql配置文件my.cnf中需设置“default_table_type = InnoDB”否则不成功
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –backup –target-dir=/usr/local/bbsBackup/base/
恢复时执行两次:
1、
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –prepare –target-dir=/usr/local/bbsBackup/base
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –prepare –target-dir=/usr/local/bbsBackup/base
2、
//将数据库停掉
/etc/init.d/mysqld stop
//删除数据库目录下的ib*(ib开头的所有)文件。
rm /usr/local/mysql/var/ib*
//将/usr/local/bbsBackup/base目录下的ib*文件拷贝到数据库目录。
cd /usr/local/mysql/var/
cp /usr/local/bbsBackup/base/ib* ./
3、设置权限:
chown mysql:mysql ib*
重启数据库后测试,是否成功。
三、增量备份及恢复
注:做增量前当然要先进行全量备份,在全量的基础上来进行增量。
首先进行全量备份。
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –backup –target-dir=/usr/local/bbsBackup/base/
在全量备份的基础上进行增量。
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –backup –target-dir=/usr/local/bbsBackup/1 –incremental-basedir=/usr/local/bbsBackup/base/
注:/usr/local/bbsBackup/1是每次都需修改的。比如第二次增量就改成/usr/local/bbsBackup/2增量恢复。(步骤同全量恢复,只是在执行恢复命令的时候中间多一步)
1、
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –prepare –target-dir=/usr/local/bbsBackup/base
/usr/bin/xtrabackup –target-dir=/usr/local/bbsBackup/base –prepare –incremental-dir=/usr/local/bbsBackup/1
/usr/bin/xtrabackup –defaults-file=/etc/my.cnf –prepare –target-dir=/usr/local/bbsBackup/base
2、
//将数据库停掉
/etc/init.d/mysqld stop
//删除数据库目录下的ib*(ib开头的所有)文件。
rm /usr/local/mysql/var/ib*
//将/usr/local/bbsBackup/base目录下的ib*文件拷贝到数据库目录。
cd /usr/local/mysql/var/
cp /usr/local/bbsBackup/base/ib* ./
3、设置权限:
chown mysql:mysql ib*
重启数据库后测试,是否成功。
参考自:http://xikder.blog.51cto.com/blog/1423200/309339
apache的order allow deny
这个东西确实挺容易让我们迷糊。其实也不难,只要你掌握这样一条规律即可:
首先举个例子:
Order deny,allow
deny from all
allow from 127.0.0.1
我们判断的依据是这样的:
1. 看Order后面的,哪个在前,哪个在后
2. 如果deny在前,那么就需要看deny from 这句,然后看allow from 这一句
3. 规则是一条一条的匹配的,不管是deny在前还是allow在前,都是会生效的。比如例子中,先deny 了所有,然后又allow了127.0.0.1,所以127.0.0.1是通过的。
不妨再多举几个例子:
Order allow,deny
deny from all
allow from 127.0.0.1
这个就会deny所有了,127.0.0.1也会被deny。因为顺序是先allow然后deny,虽然一开始allow了127.0.0.1,但是后面又拒绝了它。
Order allow,deny
deny from all
全部都不能通行
Order deny,allow
deny from all
全部都不能通行
Order deny,allow
全部都可以通行(默认的),记住即可
Order allow,deny
全部都不能通行(默认的),记住即可