没有合适的资源?快使用搜索试试~ 我知道了~
Redis数据导入导出以及数据迁移的4种方法详解
14 下载量 39 浏览量
2020-09-08
23:01:29
上传
评论
收藏 65KB PDF 举报
温馨提示


试读
2页
主要介绍了Redis数据导入导出以及数据迁移的4种方法详解,需要的朋友可以参考下
资源推荐
资源详情
资源评论














Redis数据导入导出以及数据迁移的数据导入导出以及数据迁移的4种方法详解种方法详解
主要介绍了Redis数据导入导出以及数据迁移的4种方法详解,需要的朋友可以参考下
1、、aof 导入方式。导入方式。
因为这种方式比较简单,所以我就先介绍它。
分两步来实现,第一步先让源 Redis 生成 AOF 数据文件。
# 清空上文目标实例全部数据
redis-cli -h 目标RedisIP -a password flushall
# 源实例开启 aof 功能,将在 dir 目录下生成 appendonly.aof 文件
redis-cli -h 源RedisIP -a password config set appendonly yes
dir 目录,可以通过 config get dir 目录获得。
config get dir
# 比如我的 Mac 上执行上面的命令后,返回如下内容
1) "dir"
2) "/usr/local/var/db/redis"
通过上面的命令,我们可以看到我本地的 dir 目录是:/usr/local/var/db/redis。
现在我们来做第二步操作,让目标 Redis 实例导入 aof 数据。
# 将 appendonly.aof 文件放在当前路径下
redis-cli -h 目标RedisIp -a password --pipe < appendonly.aof
# 源实例关闭 aof 功能
redis-cli -h 源RedisIp -a password config set appendonly no
上面的第一个命令,执行后,如果出现以下内容,则表示导入 aof 数据成功。
All data transferred. Waiting for the last reply...
Last reply received from server.
errors: 0, replies: 5
我这里是测试,数据比较少,所以提示有 5 个导入成功了。
AOF 的缺点也很明显,就是速度慢,并且如果内容多的话,文件也比较大。而且开启 AOF 后,QPS 会比 RDB 模式写的
QPS 低。还有就是 AOF 是一个定时任务,可能会出现数据丢失的情况。
2、通过我的、通过我的 xttblog_redis_mv.sh 脚本来实现。脚本来实现。
我的脚本内容如下:
#!/bin/bash
#redis 源ip
src_ip=192.168.1.4
#redis 源port
src_port=6379
#redis 目的ip
dest_ip=127.0.0.1
#redis 目的port
dest_port=6389
#要迁移的key前缀
key_prefix=
i=1
redis-cli -h $src_ip -p $src_port -a password keys "${key_prefix}*" | while read key
do
redis-cli -h $dest_ip -p $dest_port -a password del $key
redis-cli -h $src_ip -p $src_port -a password --raw dump $key | perl -pe 'chomp if eof' | redis-cli -h $dest_ip -p $dest_port -a password -x restore $key 0
echo "$i migrate key $key"
((i++))
done
大家在使用的时候,只需要替换 IP 即可。
这个脚本同样有一个问题就是使用了 keys *,然后一个一个遍历,如果是生产环境,不建议这样使用!当然我的脚本也是可以
资源评论


weixin_38623080
- 粉丝: 5
- 资源: 1003
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


安全验证
文档复制为VIP权益,开通VIP直接复制
