【Azure Redis 缓存】Azure Cache for Redis有默认备份可以用于恢复么?
问题描述
Azure Cache for Redis有默认备份可以用于恢复么? 答: 只有高级版Redis有。
问题原因
Azure Cache for Redis有不同的版本定价层(基本 Basic,标准 Standard,高级 Premium),在使用中,基本功能一直,但是性能和高级功能则差别巨大, 如数据暂存(RDB, AOF)只有高级版有此功能。
| 基本 | 标准 | 高级 | |
|---|---|---|---|
| 基本缓存是单个缓存节点,适用于开发/测试和非关键型工作负荷。 | 基于主/从复制的生产级别缓存服务。 | 适合企业的级别,可用作缓存和暂留数据。专为最大规模和企业集成而设计。 | |
| 缓存 | 是 | 是 | 是 |
| 复制和故障转移 | - | 是 | 是 |
| SLA | 基本级别没有服务级别协议 | 99.9% | 99.9% |
| 配置 Redis(Keyspace 通知等) | - | 是 | 是 |
| Redis 数据暂留 | - | - | 是 |
| Redis 群集 | - | - | 是 |
| 扩大到多个缓存单位 | - | - | 是 |
| Azure 虚拟网络 | - | - | 是 |
| 内存大小 | 250 MB - 53 GB | 250 MB - 53 GB | 6 GB - 530 GB* |
| 网络性能 | 低 - 高 | 低 - 高 | 中等 - 最高 |
| 客户端连接的最大数量 | 20000 | 20000 | 40000 |
| *根据请求可缩放更多实例。 | |||
根据上表:对于高级版Redis是可以配置数据暂留的,并且也可以进行导入导出功能,是可以备份redis数据的,而标准版和基本版是无法进行数据暂留和导入导出操作的
解决办法
一:如果使用的Azure Redis为高级版,则非常简单,直接使用Redis的导入或者导出。详细文档可以参考: https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-import-export-data
二:如果使用的是标准版或者基础版,该版本未提供导入导出功能,如果想要导出较为麻烦,可参考以下操作方法:
- 将原Redis Server升级至高级版,之后导出数据,然后在将原Redis Server删除(注意,升级到高级版是无法降级的)
- 导出的数据文件,实际是RDB文件,您可以将此RDB文件还原至你本地的Redis Server (Version 3.2 +)
- 在本地Redis Server使用BGREWRITEAOF,将数据导出为AOF格式文件。
- 执行以下命令,将AOF文件内容导入到Azure Redis,建议在liuix下执行该命令,确保Azure redis 6379端口打开
redis-cli -h <your redis name>.redis.cache.chinacloudapi.cn –a youaccesskey -p 6379 --pipe < appendonly.aof
第二步操作方式示例
1)升级Redis并导出Redis的数据(RDB), 在配置的Storage Account(存储账号)中下载该文件,然后改名为dump.rdb。

2)直接Copy到Redis在本地目录中。 Windows中的Redis可以从Github中下载:https://github.com/microsoftarchive/redis/releases
3)在使用Redis-cli连接到本地,通过 info Keyspace命令查看当前reids中有多少Keys信息。

(Linux中的安装方式可以参考redis官网: https://redis.io/topics/quickstart)
4)使用Redis-cli BGREWRITEAOF命令,把当前的所有数据保存为AOF格式文件。默认输出的AOF文件为:appendonly.aof

5)使用redis-cli -h yourredisname.redis.cache.chinacloudapi.cn -a rediskeys= -p 6379 --pipe <appendonly.aof 完成传输,当输出errors:0, replies: 500016即表示pipe keys成功。同理也可以在azure redis的console中查看当前reids info信息。

6)在Azure 的Redis门户中,也可以查看到与上一步中同样的Keys信息

参考资料
用于 Redis 的 Azure 缓存:https://www.azure.cn/pricing/details/cache/
在 Azure Redis 缓存中导入和导出数据: https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-import-export-data
如何为高级 Azure Redis 缓存配置数据暂留: https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-premium-persistence
如何迁移 Azure Redis: https://docs.azure.cn/zh-cn/articles/azure-operations-guide/redis-cache/aog-redis-cache-howto-migration
【Azure Redis 缓存】Azure Cache for Redis有默认备份可以用于恢复么?的更多相关文章
- 【Azure Redis 缓存 Azure Cache For Redis】如何设置让Azure Redis中的RDB文件暂留更久(如7天)
问题描述 Azure Redis和所有的Redis服务一样,可以让你保留存储在Redis中的数据.以防万一在Redis服务器出现故障的时候能尽可能小的减少数据的损失.在Azure Redis服务中,默 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Azure Redis由低级别(C)升级到高级别(P)的步骤和注意事项, 及对用户现有应用的潜在影响,是否需要停机时间窗口,以及这个时间窗口需要多少的预估问题
问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从 ...
- spring boot redis 缓存(cache)集成
Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis性能问题,发现Server Load非常的高,导致正常连接/操作不成功
问题描述 在正常使用Azure Redis的服务中,突然发现Redis 的CPU达到了100%, 正常的使用中发现性能问题严重.从Redis的门户图表中,观察到CPU, Connection,Lent ...
- 【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
当使用Azure Redis高级版时候,为了能更好的保护Redis的安全,启用了虚拟网路,把Redis集成在Azure中的虚拟网络,只能通过虚拟网络VENT中的资源进行访问,而公网是不可以访问的.但是 ...
- 【Azure Redis 缓存 Azure Cache For Redis】使用Redis自带redis-benchmark.exe命令测试Azure Redis的性能
问题描述 关于Azure Redis的性能问题,在官方文档中,可以查看到不同层级Redis的最大连接数,每秒处理请求的性能. 基本缓存和标准缓存 C0 (250 MB) 缓存 - 最多支持 256 个 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis连接池
问题描述 Redis根据定价层说明,不同级别支持的连接数最多可达4万(同时),但是当短时间又大量连接请求建立的时候,Redis服务的服务压力非常大,到达100%.严重影响了高响应的要求.最严重时,经常 ...
- 高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器
一.源码安装Redis缓存服务 目标: 本案例要求先快速搭建好一台Redis服务器,并测试该缓存服务器: 1> 设置变量test,值为123 2> 查看变量test的值 3> 设置计 ...
- 【Redis缓存机制】1.Redis介绍和使用场景
(1)持久化数据库的缺点平常我们使用的关系型数据库有Mysql.Oracle以及SqlServer等,在开发的过程中,数据通常都是通过Web提供的数据库驱动来链接数据库进行增删改查. 那么,我们日常使 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis出现 java.net.SocketTimeoutException: Read timed out 异常
问题描述 在使用Azure Redis时,遇见Read Timed out异常, Redis的客户端使用的时jedis.问题发生时,执行redis部分指令出错,大部分get指令,set指令能正常执行. ...
随机推荐
- git创建分支出现 fatal: Not a valid object name: 'master'.
今天使用git 创建新分支的时候 出现了一个错误 fatal: Not a valid object name: 'master'. 问题描述:一个非法的master,原因:本地还没有创建master ...
- linux如何配置ssh密钥登录
为什么要用ssh密钥登录 购买的服务器设置密码很容易被暴力破解,用密钥登录安全很多.root用户新建的用户也要用密钥登录更安全,如果一直su - 用户名登录 不方便 用xftp等服务上传文件到用户使用 ...
- nodejs的npm改为国内源和参数
npm源改为国内 此方法不需要安装cnpm也可以使用淘宝镜像,提高国内访问速度 由于 Node 的官方模块仓库网速太慢,模块仓库需要切换到阿里的源. npm config set registry h ...
- 设计模式学习-使用go实现责任链模式
责任链模式 定义 优点 缺点 适用范围 代码实现 责任链模式对比装饰模式 参考 责任链模式 定义 责任链模式(Chain Of Responsibility):使多个对象都有机会处理请求,从而避免请求 ...
- 获取Visual Studio所用MSVC编译器版本:_MSC_VER数值
本文介绍查看Visual Studio软件_MSC_VER值的方法. _MSC_VER是微软公司推出的C/C++编译器--MSVC编译器的一个内置宏,其值表示当前Visual Studio软件 ...
- SpringBoot接入阿里云oss
1.pom中添加阿里云oss坐标 <?xml version="1.0" encoding="utf-8"?> <dependencies&g ...
- Golang中make和new的区别
1. 相同点 都是内建函数,都是在堆上分配内存,都需要传递类型参数 2. 不同点 传递的参数不一样,new函数只接收一个参数,make函数可以接收一个以上的参数 package main import ...
- shell find 根据时间获取文件列表
根据时间得到文件,可以使用find进行查找,支持查找: find以时间为条件查找可用选项: -amin n:查找n分钟以前被访问过的所有文件. -atime n:查找n天以前被访问过的所有文件. -c ...
- 小知识:RHEL7上设置Keepalived日志重定向
1.配置 /etc/sysconfig/keepalived 文件 2.添加keepalived日志保存位置的配置 3.修改 /lib/systemd/system/keepalived.servic ...
- .NET Core开发实战(第5课:依赖注入:良好架构的起点)--学习笔记(下)
05 | 依赖注入:良好架构的起点 注册完毕之后,想替换某些组件的某些部分时,可以使用 Replace 和 RemoveAll services.AddSingleton<IOrderServi ...