2012-12-27

SSDB 已经支持在线备份功能!

Views: 37819 | 12 Comments

SSDB 1.1.0 已经发布! 这个版本支持了在线备份功能, 可以在不停止服务的情况下备份服务器数据. 这个功能让 SSDB 更加成为一个真正生产环境的存储服务器!

备份

./tools/ssdb-dump 127.0.0.1 8888 ./backup_dir

这条命令从监听在 127.0.0.1:8888 的 SSDB 服务器上备份全量的数据, 保存到本地新创建的目录 backup_dir, 这个目录其实是一个 LevelDB 的数据库(db).

恢复

恢复方案非常简单.

backup_dir 传输到服务器, 修改新ssdb服务器的配置文件, 将 SSDB 使用的数据库名改为 backup_dir, 然后重启 SSDB 即可.

下一步

SSDB 的下一个特性将是同步复制, 也即常说的"主从(Master-Slave)架构", 一旦同步复制功能加入进来, SSDB 将变得更加适合生产环境使用. 毕竟, 单份的数据总是让人不放心, 必须得复制多份保存下来才能让人安心. ssdb-dump 虽然可以达到此目的, 但还是一种被动的备份方式. 而同步复制功能将是分布式的基础. 主从架构还能用作简单的负载均衡.

SSDB 是一个 LevelDB 服务器, 项目主页: https://code.google.com/p/zdb/

Related posts:

  1. LevelDB 服务器 SSDB 支持主从(master-slave)同步了!
  2. SSDB 解决了 Snappy 导致 LevelDB 编译失败的问题
  3. SSDB – 支持 zset 的 LevelDB 服务器
  4. 在PHP代码中使用LevelDB
  5. SSDB 支持 Snappy 压缩了
Posted by ideawu at 2012-12-27 00:10:06 Tags: ,

12 Responses to "SSDB 已经支持在线备份功能!"

  • 我准备在我的项目里面采用SSDB,感谢分享~ Reply
    @新浪微博rss: 欢迎啊! 如果有什么问题, 欢迎随时反馈, 也欢迎你告知进展. Reply
  • 我使用./tools/ssdb-dump 127.0.0.1 8888 backup_dir 命令备份后打包到了另外一台服务器上
    修改ssdb.conf 为work_dir = ./dbdata
    然后启动服务器发现不对,因为backup_dir里都是sst文件的,我就把这些sst文件都移动到了dbdata/data/,内容是可以读取了,不知道我这样操作是否正确,meta文件夹不备份也可以的么? Reply
    @coo: (删除原评论, 请见后面的评论.) Reply
    @ideawu: 非常的感谢您的热心回复,希望能整理个内容详细的帮助文档,感谢 Reply
    @coo: Hi, 我更新了 ssdb-dump, 使其备份数据时创建和 ssdb-server 一致目录结构(把sst文件放在backup_dir/data目录下). 所以, 操作方法仍然按本篇博客所描述的. 请更新最新的 1.3.4 版本试试. Reply
    @ideawu: 不知道可以不可以加上验证功能? Reply
    @coo: 是的, 备份数据的验证很重要, ssdb本身数据的验证也很重要, 应该实现一个类似mysqlchk类似的ssdbchk. 不过, 这个功能近期应该不会实现.

    如果你遇到什么问题, 可以反馈, 先针对性的进行解决.
  • 期待进一步的交流. 你用什么IM吗? 抱歉我不怎么会twitter,weibo你玩吗? 你的博客没有回复email通知哦,我惦记着这个事情来看了些才看到你有回复. Reply
    @Zealot: 你好, 刚给博客加上了邮件通知插件. 我的微博账号是 @ideawu, 欢迎关注! Reply
  • 刚发现了您的网站,您是准备一个人还做这个SSDB吗?如果您需要帮手一起合作做这个开源项目的话可以找我..:) Reply
    @Zealot: 欢迎加入! 你可以到 google code 上加入这个项目. Reply

Leave a Comment