🥚 吃面加不加蛋,思考许久

⚔ 闪光诀

🔥 轰天一击龙抬头

09.Redis MIGRATE - 迁移key到指定数据库中

Redis MIGRATE - 语法

MIGRATE host port key|"" destination-db timeout [COPY] [REPLACE] [AUTH password|AUTH2 username password] [KEYS key [key ...]]

Redis MIGRATE命令,用于将指定key迁移到指定数据库中。将指定key从source-db转移到destination-db是原子性操作,一旦确定成功转移到目标数据库实例上,当前数据库实例上的key将立即被删除。

多个key的迁移可以通过"" destination-db timeout KEYS key1 key2 key3 ... pipelined进一个单一调用中。

timeout,毫秒单位,指定当前实例和目标实例进行通信的最大空闲时间。 这意味着操作并不一定要在timeout内完成,但是两者之间的数据传送时间不能超过这个timeout。

  1. COPY -- 不要删除当前实例上的key。
  2. REPLACE -- 替换目标实例上已经存在的key。
  3. KEYS -- 如果key参数为空字符串,该命令将迁移KEYS选项后的key列表。

Redis MIGRATE - 时间复杂度

这个命令在源实例上执行DUMP命令和DEL命令,在目标实例上执行RESTORE命令,具体复杂度看这3个命令。不过,key在两个实例之间传输的复杂度为 O(N) 。

Redis MIGRATE - 返回值

成功则返回OK,否则返回NOKEY。

Redis MIGRATE - 实例演示

redis> set site "www.cregend.com"
OK
redis> set user "cregend"
OK
redis> migrate 127.0.0.1 6380 site 0 5000 
OK
redis> migrate 127.0.0.1 6380 "" 0 5000 keys user
OK

轻松一刻

👉👉👉 【武映三千道】教您最小成本化试错:大长腿、露香肩、会撒娇,女主美若天仙即可,其余皆可恐龙......