温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样备份键值数据库

发布时间:2026-09-21 20:38:22 来源:亿速云 阅读:93 作者:小樊 栏目:数据库

备份键值(Key-Value)数据库的方法取决于你使用的具体数据库类型(如 Redis、RocksDB、LevelDB、Etcd、Memcached 等)。下面按常见场景分类说明。


一、Redis(最常见的内存型键值库)

1. RDB 快照备份(推荐)

Redis 默认支持:

redis-cli SAVE        # 同步保存(会阻塞)
# 或
redis-cli BGSAVE      # 后台保存

生成的文件:

dump.rdb

备份方式:

cp /var/lib/redis/dump.rdb /backup/redis-$(date +%F).rdb

2. AOF 备份(追加日志)

适合对数据安全性要求高的场景:

appendonly yes

AOF 文件:

appendonly.aof

3. 主从 + 定时备份

  • 从节点做备份
  • 不影响主库性能

二、Etcd(分布式键值库)

官方推荐方式

ETCDCTL_API=3 etcdctl snapshot save snapshot.db

恢复:

etcdctl snapshot restore snapshot.db

三、RocksDB / LevelDB(嵌入式键值库)

这类通常是文件型存储:

备份方式

  • 直接复制数据库目录(需暂停写入)
  • 或使用内置备份 API(RocksDB):
db->CreateBackup(backup_engine);

示例目录:

/var/lib/app/db/

四、Memcached(纯内存,无持久化)

⚠️ Memcached 不支持原生备份

解决方案:

  • 应用层定时导出
  • 使用代理层(如 mcrouter)
  • 不作为唯一数据源

五、通用备份原则(重要)

  1. 一致性

    • 写时备份(如 BGSAVE)
    • 或停写再拷
  2. 异地备份

    • 本地 + 对象存储(OSS / S3)
  3. 定期演练恢复

    • 备份 ≠ 可用
  4. 版本管理

    • 保留 7 / 30 / 90 天

六、你可以告诉我:

  • 用的是哪种键值数据库?
  • 单机还是集群?
  • 是否能接受短暂停机?

我可以直接给你可执行的备份脚本。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手