gpt4 book ai didi

redis - 在redis中复制一个键

转载 作者:IT王子 更新时间:2023-10-29 06:12:43 28 4
gpt4 key购买 nike

我可以使用连接的 redis-cli 复制 key 吗,redis 中是否有预定义的命令?

将 FSS_SYSAGENT 复制到 FSS_SYSAGENTDuplicate。

10.44.112.213:6403> hgetall FSS_SYSAGENT

1) "SYSTEM_01"2) "{\"port\":\"4407\",\"ipAddress\":\"10.44.112.213\",\"symbolicName\":\"SYSTEM_01\",\"eventLogEnabled\":\"1110\",\"status\":1,\"wcPort\":\"6029\",\"activeSystem\":\"N\",\"createdBy\":\"\",\"createdDate\":\"2018-11-20 13:11:16\",\"modifiedBy\":\"\",\"modifiedDate\":\"\",\"机构\":\"FSS\",\"delFlag\":0,\"accessID\":0,\"rowCount\":0,\"endCount\":0}"

最佳答案

您可以使用 DUMPRESTORE复制 key 的命令:

  1. 使用 DUMP 命令序列化键的值。
  2. 使用 RESTORE 命令将序列化值恢复为另一个键。

您可以将这两个步骤包装到一个 Lua 脚本中:

-- duplicate.lua
local src = KEYS[1]
local dest = KEYS[2]

local val = redis.call('DUMP', src)
if val == false then
return 0
else
-- with RESTORE command, you can also set TTL for the new key, and use the [REPLACE] option to set the new key forcefully.
redis.call('RESTORE', dest, 0, val)
return 1
end

使用 redis-cli 运行 Lua 脚本:./redis-cli --eval duplicate.lua FSS_SYSAGENT FSS_SYSAGENTDuplicate ,

更新

从 Redis 6.2.0 开始,您可以使用 COPY命令来完成这项工作。

关于redis - 在redis中复制一个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53479543/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com