迁移介绍
Redis-cli是Redis自带的一个命令行工具,安装Redis后即可直接使用Redis-cli工具。
下载Redis,请使用以下命令获取:
wget http://download.redis.io/releases/redis-5.0.8.tar.gz
本章节主要介绍如何使用Redis-cli将自建Redis迁移到DCS缓存实例。
步骤1:生成AOF文件
说明
正式进行迁移操作前,建议先暂停业务,确保不会在迁移过程中丢失新产生的数据变动。
建议选择业务量较少的时间段进行迁移。
使用如下命令开启缓存持久化,得到AOF持久化文件。
redis-cli -h {source_redis_address} -p 6379 -a {password} config set appendonly yes
开启持久化之后,如果AOF文件大小不再变化,说明AOF文件为全量缓存数据。
说明
使用redis-cli登录redis实例,输入命令“config get dir”可以查找生成的AOF文件保存路径,文件名如果没有特殊指定,默认为:appendonly.aof。
生成AOF文件后如需关闭同步,可使用redis-cli登录redis实例,输入命令“config set appendonly no”进行关闭。
步骤2:上传AOF文件至ECS
- 为节省传输时间,请先压缩AOF文件再传输。
- 将压缩文件(如以SFTP方式)上传到ECS。
说明ECS需保证有足够的磁盘空间,供数据文件解压缩,同时要与缓存实例网络互通,通常要求相同VPC和相同子网,且安全组规则不限制访问端口。
步骤3:导入数据
redis-cli -h dcs_instance_address} -p 6379 -a {password} --pipe < appendonly.aof
步骤4:迁移后验证
数据导入成功后,请连接DCS缓存实例,通过info命令,确认数据是否已按要求成功导入。
如果导入不成功,需要分析原因,修正导入语句,然后使用flushall或者flushdb命令清理实例中的缓存数据,并重新导入。
导出和导入效率
AOF文件的生成较快,适用于可以进入Redis服务器并修改配置的场景,如用户自建的Redis服务。
VPC内进行导入,平均100w数据(每条数据20字节),大概4~10秒完成。