使用xtrabackup备份和恢复MySQL数据库_内存数据删除

日期:2014-07-13 / 人气: / 来源:网络

对备份有影响的参数
InnoDB配置说明:
innodb_data_home_dir = ./
innodb_data_file_path = ibdata1:50M:autoextend
innodb_log_group_home_dir = ./
innodb_log_files_in_group = 4
innodb_log_file_size = 104857600
可以把这个my.ini参数文件放在非 mysql的安装目录下。
备份命令:
xtrabackup --defaults-file=/path/my.ini --backup --target-dir=/path
---target-dir 参数指定的是mysql的备份目的地
---xtrabackup只会备份跟innodb相关的数据文件,而不会备份.frm文件,所以对于.frm文件最好是进行了表结构变更后,就备份
---一次。
恢复命令:
xtrabackup --defaults-file=/path/my.int --prepare --target-dir=/path
---target-dir 是备份时指定的目录
xtrabackup --defaults-file=/path/my.int --prepare --target-dir=/path
这个prepare要执行两次,才会真正的恢复。
把恢复后的文件拷回mysql的数据目录就可以了。
增量备份:
xtrabackup --defaults-file=/path/my.ini --backup --target-dir=/path/incrbackup --incremental-basedir=/path/fullbackup
增量恢复:
需要对全量和增量各做一次prepare
xtrabackup --defaults-file=/path/my.int --prepare --target-dir=/path/fullbackup
xtrabackup --defaults-file=/path/my.int --prepare --target-dir=/path/incrbackup

 
windows下的perl备份脚本
#perl -w
sub gettime {
($sec,$min,$hour,$day,$mon,$year,$weekday,$yeardate,$savinglightday)
  = (localtime(time));
$sec  = ($sec < 10)? "0$sec":$sec;
$min  = ($min < 10)? "0$min":$min;
$hour = ($hour < 10)? "0$hour":$hour;
$day  = ($day < 10)? "0$day":$day;
$mon  = ($mon < 9)? "0".($mon 1):($mon 1);
$year  = 1900;
$today = "$year-$mon-$day";#:$hour:$min:$sec";
return $today;
}
$backup_exe_path="E:\mysqlbackup\tool";
$exe_name="xtrabackup.exe";
$config_file=" --defaults-file=E:\mysqlbackup\my.ini ";
$backup_dir="e:\backup";
$backup_target=gettime;
$backup_path=$backup_dir."\".$backup_target;
#system "mkdir",$backup_path;
$backup_cmd=$backup_exe_path."\".$exe_name." --backup".$config_file." --target-dir=".$backup_path;
system $backup_cmd;

MySQL数据库的逻辑备份和物理备份介绍

一. 前言逻辑备份和物理备份各有优劣,一般来说,物理备份恢复速度比较快,占用空间比较大,逻辑备份速度比较慢,占用空间比较小。逻辑备份的恢复成本高。二. 逻辑备份逻辑备份是备份sql语句,在恢复的时候执行备份的sql语句实现数据库数据的重现。1)mysqldu

MySQL,MySQL备份

作者:管理员




现在致电4006-2991-90 OR 查看更多联系方式 →

Go To Top 回顶部