Chinaunix首页 | 论坛 | 博客
  • 博客访问: 40311
  • 博文数量: 26
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 16
  • 用 户 组: 普通用户
  • 注册时间: 2016-12-15 11:11
文章分类

全部博文(26)

文章存档

2019年(1)

2010年(9)

2009年(1)

2008年(9)

2006年(6)

我的朋友

分类: Mysql/postgreSQL

2008-09-12 21:44:08

==========================================================
                     Mysql备份和恢复
==========================================================
 
Mysql的备份
 
 
一、是利用mysql提供mysqldump工具
命令格式:

mysqldump -p -p [--opt] [TableName] > FileName.sql

例如:

[root@fedora data]#mysqldump -uroot -p123456 mytestdb>/home/zhoulj/mytestdb.sql

 
需要恢复的时候使用

[root@fedora data]# mysql -uroot -p123456 mytestdb

 
 
 
 
二、实现象Oracle和DB2一样的增量备份,通过备份binlong来实现
我们选择周六进行全备份,其他时间进行备份,只备份数据库中改变的内容。
实现过程:
1、周日进行使用一次全备份,使用一下命令:

mysqldump -p -p [--opt] [TableName] > FileName.sql

 
2、周一~周五、周日进行增量备份,只备份mysql生成的binlog文件。在备份之前flash binlogs,然后备份上次备份之后生成的binlog文件。这样就实现了,象Oracle和DB2一样的的增量备份。

在flush binlogs之前,touch一个空文件,在第二天备份时候给这个文件比较,如果比这个文件新就备份。

 
 
恢复过程:
1、先恢复全备份的文件

# mysql -uroot -p123456 mytestdb

 
2、恢复binlong文件

/usr/local/mysql/bin/mysqlbinlog fc5-1-bin.000001 |/usr/local/mysql/bin/mysql -uroot -p123456

/usr/local/mysql/bin/mysqlbinlog fc5-1-bin.000002 |/usr/local/mysql/bin/mysql -uroot -p123456

.
.
.

/usr/local/mysql/bin/mysqlbinlog fc5-1-bin.00000n |/usr/local/mysql/bin/mysql -uroot -p123456

 
按照顺序,恢复到最后一个binlog文件。
 
 
 
 
阅读(891) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~