数据备份
1. RDB 快照备份:
- 执行 SAVE 命令或 BGSAVE 命令来创建 RDB 文件,保存当前数据库的快照。SAVE 命令会阻塞 Redis 服务器,而 BGSAVE 在后台进行。
- 配置文件中的默认快照文件路径为 dump.rdb。
2. AOF 文件备份:
- 如果启用了 AOF(Append-Only File)持久化,可以备份 AOF 文件,其中包含了写命令的追加记录。
- AOF 文件默认路径在配置文件中指定,通常为 appendonly.aof。
3. 复制备份:
- 使用 Redis 复制功能,在主服务器上执行 BGSAVE,然后将生成的 RDB 文件复制到备用服务器。备用服务器加载 RDB 文件,完成数据同步。
数据恢复
1. RDB 文件恢复:
- 将备份的 RDB 文件复制到 Redis 数据目录。
- 启动 Redis 服务器,它会加载 RDB 文件并还原数据库状态。
2. AOF 文件恢复:
- 复制备份的 AOF 文件到 Redis 数据目录。
- 启动 Redis 服务器,它会根据 AOF 文件的追加记录逐步还原数据库状态。
3. 复制恢复:
- 在备用服务器上执行 SLAVEOF 命令,将其设置为主服务器。
- 启动备用服务器,它会从主服务器进行全量同步。
注意事项
- 在进行数据备份和恢复时,确保 Redis 服务器处于安全状态,以避免数据损坏。
- 定期进行备份,以确保有可用的最新数据快照。
- 在生产环境中,最好使用 BGSAVE 而不是 SAVE,因为 SAVE 会阻塞服务器。
- 仔细选择备份策略,根据业务需求和数据敏感性选择 RDB、AOF 或复制备份。
示例
备份 RDB 文件:
# 在 Redis 命令行执行 BGSAVE
redis-cli BGSAVE
# 复制生成的 dump.rdb 文件
cp /path/to/dump.rdb /backup/directory
恢复 RDB 文件:
# 复制备份的 dump.rdb 文件到 Redis 数据目录
cp /backup/directory/dump.rdb /path/to/redis/data
# 启动 Redis 服务器
redis-server /path/to/redis.conf
备份 AOF 文件:
# 复制 AOF 文件
cp /path/to/appendonly.aof /backup/directory
恢复 AOF 文件:
# 复制备份的 appendonly.aof 文件到 Redis 数据目录
cp /backup/directory/appendonly.aof /path/to/redis/data
# 启动 Redis 服务器
redis-server /path/to/redis.conf
复制备份:
# 在主服务器上执行 BGSAVE,将生成 RDB 文件
redis-cli BGSAVE
# 复制生成的 dump.rdb 文件到备用服务器
cp /path/to/dump.rdb /backup/directory
# 在备用服务器上启动 Redis,设置为从属于主服务器
redis-server /path/to/redis.conf
redis-cli SLAVEOF <master-ip> <master-port>
请根据具体情况选择适合你的备份和恢复策略。备份和恢复是确保数据可用性和持久性的关键步骤。
转载请注明出处:http://www.zyzy.cn/article/detail/14273/Redis