Redis CLI 重命名 key - 错误未知命令使用参数重命名

标签 redis redis-cli

我有一个可以在本地运行的 redis-cli 脚本(从 Win10),但是当我使用 rename 命令在服务器 (Linux) 上运行它时,它会失败。

与redis-cli(来自Win10)连接后,我运行以下命令:

SET "someinstance.domain.us:mytenant:MyDailyData:2018.1.10" "Hello123"
GET "someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
RENAME "someinstance.domain.us:mytenant:MyDailyData:2018.1.10" "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
DEL "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
GET "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"

虽然本地一切正常,但当我对服务器运行它时,我得到以下输出:

my-redis-address:6379> SET "someinstance.domain.us:mytenant:MyDailyData:2018.1.10" "Hello123"
OK
my-redis-address:6379> GET "someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
"Hello123"
my-redis-address:6379> RENAME "someinstance.domain.us:mytenant:MyDailyData:2018.1.10" "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"

(error) ERR unknown command `RENAME`, with args beginning with: `someinstance.domain.us:mytenant:MyDailyData:2018.1.10`, `TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10`,

my-redis-address:6379> DEL "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
(integer) 0
my-redis-address:6379> GET "TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10"
(nil)
my-redis-address:6379>

(错误)错误未知命令重命名,参数开头为:someinstance.domain.us:mytenant:MyDailyData:2018.1.10、TEMP:someinstance.domain.us:mytenant:MyDailyData:2018.1.10,

redis服务器详细信息:

gcc_version 5.4.0
os  Linux 4.4.0-176-generic x86_64
redis_build_id  452d9690a8de23a2
redis_mode  standalone
redis_version   5.0.7

我在这里做错了什么?是我在 Linux Redis 服务器上运行 Win10 cli 导致的吗?

谢谢!

最佳答案

结论

RENAME 命令已被重命名为服务器上无意义的名称。

解决方案

检查服务器上的redis.conf文件是否有rename-command RENAME xxx一行。如果有,注释掉并重启Redis服务器。(如果服务器在线,请先联系管理员)

来自redis.conf:

# It is possible to change the name of dangerous commands in a shared
# environment. For instance the CONFIG command may be renamed into something
# hard to guess so that it will still be available for internal-use tools
# but not available for general clients.
#
# Example:
#
# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52

关于Redis CLI 重命名 key - 错误未知命令使用参数重命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60837832/

相关文章:

javascript - Websocket 连接关闭并出现错误 1006 (Webdis)

python - Redis管道-原子获取另一个键值的值

Django 和 Redis 包选项

redis - 使用最新版本启动 redis-server

ruby - 如何清除redis集群节点的重定向键

Azure Redis 慢日志重复错误 "EVALSHA"

redis - 如何使用 StackExchange.Redis 写入从服务器?

python - 从给定的 Redis 集群,我如何运行 Redis CLI 或 API 调用来获取整个集群上的每个键的列表,而不仅仅是一台机器?

redis cluster dbsize 仅显示该节点上的键

redis - 向上箭头键不在 redis-cli(linux 服务器)中切换命令