A.1全库备份.
命令:
mysqlbackup --defaults-file=/home/mysql-server/mysql3/my.cnf
--user=root --password=root --databases="mysql total2"
--with-timestamp --backup-dir=/home/mysql-server/backup backup
参数说明:
--defaults-file my.cnf文件的路径,主要用于一台服务器多个mysql服务.默认位置是/etc/my.cnf
--user 用户名,这个用户必须在mysql库里面有创建table和查询,插入的权限.在备份的过程中.mysqlbackup会在mysql库下建立backup_history, backup_progress表.用户保留备份的历史信息和备份的基础信息.
--password密码
--database 需要备份的数据库,要备份多个数据库需要用””包括起来,每个数据库中间用空格分开
--with-timestamp用户创建一个备份目录下面当前时间的文件夹,如果没有这个参数,多次备份时,制定同一个目录,会使上一次备份的文件覆盖掉.
--backup-dir备份的目录
Backup 表明,这是备份操作
A.2全库还原.
第一步:检测事务日志
Mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf --backup-dir=/home/mysql-server/backup/2012-03-21_14-01-34/ apply-log
参数说明:
apply-log:因为在备份的时候是在线的,如果有新插入的SQL语句,会记录新增加的LSN点,然后新修改的页面会放到这个文件里面(ibbackup_logfile),同时也会放到表空间里面.当还原使用这个参数的时候,mysqlbackup会检测ibbackup_logfile和表空间的LSN点,然后比较ibbackup_logfile文件表空间LSN的差值,把这个值放到事务日志LOG里面.(事务日志如果填满了,会进入表空间的)
第二步:copy物理文件
mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf --backup-dir=/home/mysql-server/backup/2012-03-21_14-01-34/ --innodb_log_files_in_group=2 copy-back
B.1 压缩全库备份
mysqlbackup --defaults-file=/home/mysql-server/mysql3/my.cnf
--user=root --password=root --compress-level=1 --databases="mysql
total2" --with-timestamp --backup-dir=/home/mysql-server/backup
backup
参数说明:
--compress-level=1
1为快速压缩.共有9个等级
B.2压缩还原
第一步:检测事务日志,并解压
mysqlbackup
--defaults-file=/home/mysql-server/mysql2/my.cnf --uncompress
--backup-dir=/home/mysql-server/backup/2012-03-21_14-08-33/ apply-log
uncompress解压压缩后的文件.
第二步:copy物理文件
mysqlbackup
--defaults-file=/home/mysql-server/mysql2/my.cnf
--innodb_log_files_in_group=2
--backup-dir=/home/mysql-server/backup/2012-03-21_14-08-33/ copy-back
增量备份不支持压缩. backup-and-apply-log参数不能跟--compress-level同用 |