redis 数据导入导出

开启现有 Redis 实例的 AOF 功能(如果实例已经启用 AOF 功能则忽略此步骤

# redis-cli -h ip -p port config set appendonly yes `

通过AOF文件将数据导入到新的 Redis 实例 (假定生成的 AOF 文件名为 append.aof)

# redis-cli -h ip -p 6379 -a pass --pipe < appendonly.aof

append.aof 文件分析

假设 redis 内存有「name:Jhon」的键值对,那么进行 AOF 持久化后,AOF 文件有如下内容:

*2 # 2个参数 $6 # 第一个参数长度为 6 SELECT # 第一个参数 $1 # 第二参数长度为 1 8 # 第二参数 *3 # 3个参数 $3 # 第一个参数长度为 4 SET # 第一个参数 $4 # 第二参数长度为 4 name # 第二个参数 $4 # 第三个参数长度为 4 Jhon # 第二参数长度为 4
所以对上面的内容进行恢复,能得到熟悉的一条 redis 命令:SELECT 8;SET name Jhon.
可以想象的是,redis 遍历内存数据集中的每个 key-value 对,依次写入磁盘中;redis 启动的时候,从 AOF 文件中读取数据,恢复数据。

修改

*2 # 2个参数
$6 # 第一个参数长度为 6
SELECT # 第一个参数
$1 # 第二参数长度为 1
8 # 第二参数

*2 # 2个参数
$6 # 第一个参数长度为 6
SELECT # 第一个参数
$2 # 第二参数长度为 1
15 # 第二参数

可以将 数据导入到 15号 db

可能会有多个 select DB, 需要仔细查看

redis-cli -h 127.0.0.1 -p 6379 shutdown 停止 redis

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容