loading ...
loading...

2008-10-04 | innodb在线备份的新方法

分享
标签: mysql  innodb  备份  zhaolinjnu 

google code的google-mysql-tools公布了一个innodb在线备份的新方法:在不关闭mysql服务器的情况下,可以禁止掉所有的innodb文件的写,但不阻塞读,这个时候可以利用操作系统的文件拷贝命令进行在线备份。要实现这个功能,需要打一个google的mysql开发团队弄出的一个patch.

下面是这个patch的详细介绍:

InnodbFreeze  
Freeze Innodb file system activity

Commands

  • set global innodb_disallow_writes=ON
  • set global innodb_disallow_writes=OFF

Purpose

These enable and disable all Innodb file system activity except for reads. If you want to take a database backup without stopping the server and you don't use LVM, ZFS or some other storage software that provides snapshots, then you can use this to halt all destructive file system activity from InnoDB and then backup the InnoDB data files. Note that it is not sufficient to run FLUSH TABLES WITH READ LOCK as there are background IO threads used by InnoDB that may still do IO.

5.0.37 Patch

从一个网友的回复中,可以看到基本上可以达到相同效果的另外一种方法:

Any chance that you can accomplish a similar mechanism by setting innodb_max_dirty_pages_pct to zero and then waiting for dirty buffers to equal zero... then performing the snapshot (of course with a READ LOCK) on all the tables.

I generally think this patch is a bit more elegant though.

Kevin Burton (spinn3r.com)

总的来说,mysql的备份与ORACLE的备份相比,还有许多需要去改进的地方。google自己的mysql开发团队一直都在努力改变着mysql的代码,可以根据自己的需求去定制mysql,什么时候我们也可以这样做呢?

分享 分享 |  评论 (0) |  阅读 (?)  |  固定链接 |  类别 (My SQL) |  发表于 09:51
搜狐博客温馨提示:警惕博客留言诈骗, 搜狐博客管理员的正确地址为http://admin.blog.sohu.com, 其他都是冒牌。搜狐博客官方不会要求参加活动的各位博友缴纳任何的手续费用。请勿轻信留言、评论中的中奖信息,更不要拨打陌生电话及向陌生帐户汇款,谨防受骗!识别更多网络骗术,请 点击查看详情
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
 
  与您共话财富健康,让您的财富增值更多!
表  情:
加载中...
回复通知: 同时用小纸条通知对方该回复