mysql增量备份

来源:互联网 发布:传奇永恒数据网络异常 编辑:程序博客网 时间:2024/06/07 04:45

增加备份的必要性:

公司的产品是在windows平台下的,使用windows下的mysql5,我从网上查了大量的资料,但都没有描述windows下如何进行mysql5的增量备份的。请问在mysql5下是否可实现?
我这里的数据库中MyISAMInnoDB都有用,数据量一般每天视业务情况全备约在10G30G之间。压缩后一般几百M12G,这类的数据库大约有几十个点,也就是说每天我的部门面临的是压缩后至少2040G的全备备份文件。

如果可以做增量备份,那么我将在每个业务点设定每周一次全备,然后每天增量,每天都把数据转存到异地的中心备份磁带机上,这样就可以收集到所有业务点的所有备份,而目前我们使用的是全备,数据量太大,使用以上的方案每天至少有2040G的数据要通过网络复制到异地,不现实。

 

如何实现mysql的增量备份安装一个高版本的mysql 5 以上.

1. 安装一个mysql5.5.27

2. 在默认情况下,mysql不会自动增量备份

 

什么是增量备份当数据库()发生变化时,他会自动记录变化的sql( dml , create ,drop altet) 但是他不会记录select 

 

3. 配置my.ini 文件 my.cof 启用增量备份

[mysqld]

log-bin=d:/binlog/shunping

 

4. 你mysql的操作会记录到日志中

5. 使用 mysqlbinlog 指令可以查看日志

 

mysqlbinlog.exe D:\binlog\shunping.000001

6. 这个文件中主要记录了三种信息

 

① 你执行了什么语句

② 你执行语句的时间

③ 系统给你执行该指令都分配了一个位置 position 

如图:

 

 

7. 讨论如何使用增量备份进行恢复工作

u 按照位置

1.如果希望从日志的最开始一直到某个点

mysqlbinlog --stop-position="位置" 文件 | mysql -u root -p 

2.如果希望从日志某个位置一直执行到最后

mysqlbinlog --start-position="位置" 文件 | mysql -u root -p 

3.如果希望从某位置到某个位置

mysqlbinlog --start-position="位置" --stop-position="位置" 文件 | mysql -u root -p

u 按照时间

1.如果希望从日志的最开始一直到某个点

mysqlbinlog --stop-datetime="2013-01-14 00:54:55" 文件 | mysql -u root -p 

2.如果希望从日志某个位置一直执行到最后

mysqlbinlog --start-datetime="2013-01-14 00:54:55" 文件 | mysql -u root -p 

3.如果希望从某位置到某个位置

mysqlbinlog --start-datetime="2013-01-14 00:54:55" --stop-datetime="2013-01-15 00:54:55" 文件 | mysql -u root -p

建议在启用增量备份后,对数据库的性能有一定影响,但是不太.

.我们使用备份的方案全备份和增量备份配合使用

每一周进行一次全备份.

 

0 0
原创粉丝点击