快速得到mysql的历史数据状态
2009-01-02    刘世伟   
打印自: 安恒公司
地址: HTTP://tls2200.anheng.com.cn/news/article.php?articleid=1598
快速得到mysql的历史数据状态
有几种方式可以恢复这种历史数据的快,用存储级的快照技术是最快速的。
可以使用lvm的快照, 或者zfs的快照。
下面是zfs 的快照的操作方法。

linux下运行zfs的性能相对比较差,用它做生产环境不合适,但作备份还是不错的。

 列出卷以及快照
zfs list
tank/mysql           52.1G  1.36T  13.4G  /mysql

tank/mysql@20090901      0      -  13.1G  -
tank/mysql@20091001   235M      -  11.9G  -
tank/mysql@20091101   226M      -  12.1G  -


对20090901的 tank/mysql 做个clone tank/20090901
zfs  clone tank/mysql@20090901 tank/20090901

然后浏览/tank/20090901 就可以看到数据库的文件, 如果是MyISAM格式的数据库,可以直接复制里面的目录出来就行了。
 cp -a /tank/20090901/db1  /var/lib/mysql/db1_20090901

zfs clone tank/mysql@20091001 tank/20091001
cp -a /tank/20091001/db1 /var/lib/mysql/db1_20091001

zfs clone tank/mysql@20091101 tank/20091101
cp -a /tank/20091101/db1 /var/lib/mysql/db1_20091101


然后在数据库 /var/lib/mysql 就多了3个库 db1_20090901 db1_20091001 db1_20091101
责任编辑: admin