跨平台的 Redis 桌面图形客户端,支持 Linux、Windows 和 macOS,可连接集群、哨兵和 SSH 隧道。
tair-opensource/RedisShake
基于 Go 的 Redis 与 Valkey 数据迁移及转换工具,支持云上兼容服务。
- Star
- 4,451
- Fork
- 784
- 未关闭 Issue
- 154
- 最近提交
- 9天前
这是什么?
RedisShake 用于在 Redis 或 Valkey 实例之间迁移与转换数据,覆盖单机、主从、哨兵和集群等部署形态。数据可通过实时复制(PSync)、RDB 文件或键扫描(Scan)获取,并写入目标实例。过滤规则可按键前缀等条件跳过部分数据,脚本函数则支持在迁移过程中自定义转换。
工具可用于阿里云 Tair、AWS ElastiCache 和 MemoryDB 等兼容 Redis 的云服务之间的迁移,也支持 TairString、TairZSet、TairHash 等模块。通过 TOML 配置文件启动,并提供 Docker 镜像。
项目不支持断点续传,中断后需从头全量同步;同时假设集群拓扑静态不变,扩缩容、故障切换或槽位迁移都会导致进程 panic。因此更适合一次性迁移,而非长期持续同步。
核心功能
- 01支持单机、主从、哨兵和集群形态的 Redis 与 Valkey 数据迁移。
- 02可通过 PSync 复制、RDB 文件或键扫描读取数据。
- 03支持按键前缀过滤,并可用脚本自定义转换数据。
- 04兼容 ElastiCache、MemoryDB、Tair 及 Tair 相关模块。
- 05通过 TOML 配置文件运行,也提供 Docker 镜像。
适用场景
- 将 Redis 数据集一次性迁移到新服务器或云服务。
- 在迁移到 Valkey 时跳过临时键或缓存键。
- 将自建 Redis 数据迁移到 AWS ElastiCache 或 MemoryDB。
快速上手
- 1
使用 Docker 运行 RedisShake
docker run --network host -e SYNC=true -e SHAKE_SRC_ADDRESS=127.0.0.1:6379 -e SHAKE_DST_ADDRESS=127.0.0.1:6380 ghcr.io/tair-opensource/redisshake:latest - 2
克隆代码仓库
git clone https://github.com/tair-opensource/RedisShake - 3
从源码构建(需先安装 Go)
sh build.sh - 4
使用 shake.toml 配置文件运行 RedisShake
./redis-shake shake.toml
使用前须知
- 不支持断点续传(checkpoint),重启后会从头进行全量同步。
- 集群拓扑变化(如扩缩容、故障转移或槽位迁移)会导致进程崩溃(panic)。
- 更适合一次性数据迁移,不适合长期持续同步。
标签
常见问题
- RedisShake 是什么?
- 基于 Go 的 Redis 与 Valkey 数据迁移及转换工具,支持云上兼容服务。 RedisShake 用于在 Redis 或 Valkey 实例之间迁移与转换数据,覆盖单机、主从、哨兵和集群等部署形态。数据可通过实时复制(PSync)、RDB 文件或键扫描(Scan)获取,并写入目标实例。过滤规则可按键前缀等条件跳过部分数据,脚本函数则支持在迁移过程中自定义转换。
- RedisShake 可以免费使用吗?用的什么许可证?
- RedisShake 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- RedisShake 还在维护吗?
- 活跃维护中。RedisShake 最近一次提交是在 2026年10月30日。
- RedisShake 适合用来做什么?
- 将 Redis 数据集一次性迁移到新服务器或云服务。 在迁移到 Valkey 时跳过临时键或缓存键。 将自建 Redis 数据迁移到 AWS ElastiCache 或 MemoryDB。
- RedisShake 怎么安装和运行?
- 使用 Docker 运行 RedisShake: docker run --network host -e SYNC=true -e SHAKE_SRC_ADDRESS=127.0.0.1:6379 -e SHAKE_DST_ADDRESS=127.0.0.1:6380 ghcr.io/tair-opensource/redisshake:latest 克隆代码仓库: git clone https://github.com/tair-opensource/RedisShake 从源码构建(需先安装 Go): sh build.sh 使用 shake.toml 配置文件运行 RedisShake: ./redis-shake shake.toml
- 在哪里获取 RedisShake?
- 源代码和安装说明在 GitHub 上:https://github.com/tair-opensource/RedisShake
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
3.5万+11 本周2713JavaScriptMIT更新于 3个月前
基于 RocksDB 存储、兼容 Redis 协议的分布式 NoSQL 键值数据库,旨在降低内存成本并提升容量。
4492+7 本周689C++Apache-2.0更新于 昨天
面向 .NET 的 Redis 客户端库,支持 Sentinel、Cluster,提供同步与异步接口。
2057423C#MIT更新于 23天前
从 Redis 分支而来的高性能键值数据结构服务器,适用于缓存与实时负载场景。
2.8万+76 本周1519CBSD-3-Clause更新于 7小时前
面向 .NET 的 Redis 客户端库,也可连接 Valkey、Garnet、AWS ElastiCache 等兼容 RESP 协议的服务器。
62061562C#MIT维护活跃更新于 13小时前