源Redis迁移到集群实例中有哪些限制和注意事项?
- Proxy版集群实例
使用方式与单机、主备实例类似,但是默认只有1个DB,不支持select命令。数据文件批量导入时,遇到select命令会返回错误提示并忽略,同时继续将剩余数据导入。
举例:
源Redis在数据库编号0和2中有数据,生成的AOF或RDB文件包含了这两个库。
在导入到Proxy集群实例时会忽略“select 2”的命令,然后继续导入源数据库2中的数据到DB0中。
用户需要注意以下:
- 源Redis中不同数据库包含了相同的key,则导入时,编号靠前的数据库的key的value会被靠后的数据库中的key覆盖。
- 源Redis使用了多个数据库,数据迁移到DCS集群实例后,都存储在同一数据库中,不支持select命令。业务需要做适配。
- Cluster版集群实例
Cluster版集群除了只有1个DB外,导入方式与其他类型的Redis实例也有差异。Cluster集群的数据,必须由客户端分别连接各分片节点,将数据分别导入。各分片节点的IP地址查询命令:
redis-cli -h {Redis Cluster IP} -p 6379 -a {password} cluster nodes
返回的节点地址清单中,标记为master的节点IP地址即为Cluster集群的分片节点地址。