- 最新动态
- 功能总览
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
- 最佳实践
- API参考
- SDK参考
-
常见问题
- 实例类型/版本
- 实例特性
- 安全性
-
客户端和网络连接
- DCS实例支持公网访问吗?
- Redis连接失败问题排查和解决
- DCS实例是否支持跨VPC访问?
- Redis公网访问所需弹性IP是否收费?
- Redis连接时报错:“(error) NOAUTH Authentication required”。
- 客户Http的Server端关闭导致Redis访问失败
- 客户端出现概率性超时错误
- 使用Jedis连接池报错如何处理?
- 如何使用Redis-desktop-manager访问Redis实例?
- 使用SpringCloud时出现ERR Unsupported CONFIG subcommand怎么办?
- 客户端无法使用域名连接DCS缓存实例时如何处理?
- 本地环境是否可以连接缓存实例?
- 使用Redis实例的发布订阅(pubsub)有哪些注意事项?
- Redis 3.0实例公网开关被关闭是什么原因?
- 使用短连接访问Redis出现“Cannot assign requested address”错误
- 连接池选择及Jedis连接池参数配置建议
- 如何解决Lettuce 6.x版本客户端使用DCS实例兼容性问题?
- 应该选择域名还是IP地址连接Redis实例?
- 主备实例的只读地址是连接到主节点还是备节点?
-
Redis使用
- 是否支持CPU架构的变更?
- 实例是否支持变更可用区
- Redis实例能否修改VPC和子网?
- 实例是否支持自定义或修改端口?
- 实例是否支持修改访问地址?
- 实例无法删除是什么原因?
- 集群实例启动时间过长是什么原因?
- 使用redis_exporter出错怎么办?
- 什么是预留内存,如何配置预留内存?
- 创建的缓存实例为什么可使用内存比实例规格少一些?
- Redis 3.0 Proxy集群不支持redisson分布式锁的原因
- DCS Redis有没有后台管理软件?
- DCS缓存实例的数据被删除后,能否找回?
- 为什么实例实际可用内存比申请规格小而且已使用内存不为0?
- 如何查看Redis内存占用量
- Cluster集群实例容量和性能未达到瓶颈,但某个分片容量或性能已过载是什么原因?
- 访问Redis报OOM错误提示
- 不同编程语言如何使用Cluster集群客户端
- 使用Cluster的Redis集群时建议配置合理的超时时间
- 读取redis数据报超时错误
- hashtag的原理、规则及用法示例
- Redis key丢失是什么原因
- 重启实例后缓存数据会保留吗?
- 如何确认实例是单DB还是多DB
- Proxy集群开启多DB的使用限制及操作方式
- 如何创建多DB的Proxy集群实例?
- 扩容缩容与实例升级
-
数据备份/导出/迁移
- DCS实例是否兼容低版本Redis迁移到高版本
- 不同类型的操作系统间进行数据传递和操作,需要注意什么?
- 源Redis使用了多DB,能否迁移数据到集群实例?
- 源Redis迁移到集群实例中有哪些限制和注意事项?
- 在线迁移需要注意哪些?
- 在线迁移能否做到完全不中断业务?
- 在线迁移实例源端报“Disconnecting timedout slave”和“overcoming of output buffer limits”
- 如何导出Redis实例数据?
- 使用Rump工具迁移数据,命令执行后无报错,但Redis容量无变化
- 是否支持控制台导出RDB格式的Redis备份文件?
- 缓存实例备份文件如何存放?备份文件的数量是否有限制?
- Redis在线数据迁移是迁移整个实例数据么?
- AOF文件在什么情况下会被重写
- Redis迁移失败有哪些常见原因?
- 一个数据迁移能迁移到多个目标实例么?
- 怎么放通SYNC和PSYNC命令?
- 迁移或导入备份数据时,相同的Key会被覆盖吗?
- Cluster集群实例使用内置key且跨slot的Lua脚本时迁移失败
- 迁移故障处理
- 数据迁移失败问题排查
- Memcached如何迁移?
- 是否支持Memcached和Redis之间实例数据的迁移?
- 大Key/热Key分析/过期Key扫描
- Redis命令
- 监控告警
- 主备倒换
- 创建实例和权限
- Memcached使用
- 故障排除
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
DCS备份恢复概述
介绍如何通过管理控制台对DCS缓存实例进行数据备份,以及备份数据恢复。
备份缓存数据的必要性
业务系统日常运行中可能出现一些小概率的异常事件,比如异常导致缓存实例出现大量脏数据,或者在实例出现故障后持久化文件不能重新加载。部分可靠性要求非常高的业务系统,除了要求缓存实例高可用,还要求缓存数据安全、可恢复,甚至永久保存。
DCS支持将当前时间点的实例缓存数据备份并存储到对象存储服务(OBS)中,以便在缓存实例发生异常后能够使用备份数据进行恢复,保障业务正常运行。
备份方式
DCS缓存实例支持自动和手动两种备份方式。
备份过程对实例的影响
备份操作是在备节点执行,备份期间不影响实例正常对外提供服务。
在主备节点全量数据同步或者实例高负载的场景下,数据同步需要一定的时间,在数据同步没有完成的情况下开始备份,备份数据与主节点最新数据相比,有一定延迟。
在实例备节点进行备份期间,如果主节点有新的数据写入,备份文件不会包含备份期间的数据变化。
备份的其他说明
- 支持备份的实例类型
- Redis的“主备”、“Proxy集群”、“Cluster集群”和“读写分离”实例支持数据备份与恢复功能,“单机”实例暂不支持。单机实例若需要备份,可参考Redis单机实例使用Redis-cli工具备份,使用redis-cli工具导出RDB文件。
- Memcached的“主备”实例支持数据备份与恢复功能,“单机”实例暂不支持。
- 备份原理
Redis 3.0实例采用的是AOF文件进行持久化,Redis 4.0及以上基础版实例,手动备份支持选择RDB格式和AOF格式进行持久化;自动备份仅支持RDB格式进行持久化。
如果需要导出Redis 3.0的RDB备份文件,可以通过redis-cli导出,使用命令:redis-cli -h {redis_address} -p 6379 -a {password} --rdb {output.rdb}。
说明:
- DCS Redis 3.0已下线,暂停售卖,建议使用Redis 4.0及以上版本。
- 放通了SYNC命令的Redis 3.0单机实例可以通过执行此命令将RDB文件导出;Redis 3.0 proxy实例由于架构的原因,不支持放通SYNC命令,因此不能导出RDB文件。
备份任务在备节点执行,DCS通过将备节点的数据持久化文件压缩并转移到OBS服务中存储,从而实现实例数据备份。
DCS以小时为单位,定期检查所有实例的备份策略,对于需要执行备份的实例,启动备份任务。
- 备份时间点的选择
- 备份文件的存储
- 自动备份异常的处理
自动备份任务触发后,如果实例当前正在进行重启、扩容等操作,则定时任务顺延到下一时间段处理。
实例备份失败或者因为其他任务正在进行而推迟备份,DCS会在下一时间段继续尝试备份,一天最多会尝试三次。
- 备份数据保存期限
自动备份产生的备份文件根据您设置的策略保留1-7天,超期由系统自动删除,但至少会保留最近一次的数据备份记录。
如果备份数量没有超出最大限制(24个),手动备份数据不会自动清除,您可根据需要手动删除备份数据。
说明:
- 自动和手动备份记录总数最多不超过24个,当备份记录超过24个时,自动删除最早的备份记录。
- 当删除实例时,备份数据会随实例删除,如果需要保存备份数据,请提前将备份数据下载保存。
- 删除所有备份文件,会影响备份文件相关能力,如故障时执行备份恢复,请谨慎操作。