用户手册
# 核心引擎操作
# 连接
可使用AMDC-cli客户端进行连接
./AMDC-cli -h host -p port -a password
# 操作命令介绍
| 命令 | 说明 |
|---|---|
| ACL LOAD | 从配置的ACL文件中重新加载ACL |
| ACL SAVE | 在已配置的ACL文件中保存当前的ACL规则 |
| ACL LIST | 列出ACL配置文件格式的当前ACL规则 |
| ACL USERS | 列出所有已配置的ACL规则的用户名 |
| ACL GETUSER username | 获取特定ACL用户的规则 |
| ACL SETUSER username [rule [rule ...]] | 修改或创建特定ACL用户的规则 |
| ACL DELUSER username [username ...] | 删除指定的ACL用户和相关规则 |
| ACL CAT [categoryname] | 列出类别内的ACL类别或命令 |
| ACL GENPASS [bits] | 为ACL用户生成伪谐像安全密码 |
| ACL WHOAMI | 返回与当前连接关联的用户的名称 |
| ACL LOG [count or RESET] | 列出最新事件因ACL而拒绝 |
| APPEND key value | 将值附加到键 |
| ASKING | 在-ask重定向后由群集客户端发送 |
| AUTH [username] password | 对服务器进行身份验证 |
| BGSAVE [SCHEDULE] | 异步将数据集保存到磁盘 |
| BITCOUNT key [start end [BYTE|BIT]] | 计数字符串中的设置位 |
| BITFIELD key [GET encoding offset] [SET encoding offset value] [INCRBY encoding offset increment] [OVERFLOW WRAP|SAT|FAIL] | 在字符串上执行任意位字段整数操作 |
| BITFIELD_RO key GET encoding offset | 在字符串上执行任意位字段整数操作。禁区的只读变体 |
| BITOP operation destkey key [key ...] | 在字符串之间执行按位操作 |
| BITPOS key bit [start [end [BYTE|BIT]]] | 在字符串中找到第一个位设置或清除 |
| BLPOP key [key ...] timeout | 删除并获取列表中的第一个元素,或块直到可用 |
| BRPOP key [key ...] timeout | 删除并获取列表中的最后一个元素,或块直到可用 |
| BRPOPLPUSH source destination timeout | 弹出列表中的一个元素,将其推到另一个列表并返回;或阻止直到一个可用 |
| BLMOVE source destination LEFT|RIGHT LEFT|RIGHT timeout | 弹出列表中的一个元素,将其推到另一个列表并返回;或阻止直到一个可用 |
| LMPOP numkeys key [key ...] LEFT|RIGHT [COUNT count] | 从列表中弹出元素 |
| BLMPOP timeout numkeys key [key ...] LEFT|RIGHT [COUNT count] | 从列表中弹出元素,或块直到可用 |
| BZPOPMIN key [key ...] timeout | 删除并将成员从一个或多个排序集中返回最低分数,或块直到可用 |
| BZPOPMAX key [key ...] timeout | 从一个或多个排序集中删除并返回最高分数的成员,或块直到可用 |
| BZMPOP timeout numkeys key [key ...] MIN|MAX [COUNT count] | 删除并返回具有分类集或块中的分数的成员,直到可用 |
| CLIENT ID | 返回当前连接的客户端ID |
| CLIENT INFO | 返回有关当前客户端连接的信息。 |
| CLIENT KILL [ip:port] [ID client-id] [TYPE normal|master|slave|pubsub] [USER username] [ADDR ip:port] [LADDR ip:port] [SKIPME yes/no] | 杀死客户的连接 |
| CLIENT LIST [TYPE normal|master|replica|pubsub] [ID client-id [client-id ...]] | 获取客户端连接列表 |
| CLIENT GETNAME | 获取当前的连接名称 |
| CLIENT PAUSE timeout [WRITE|ALL] | 停止客户端的处理命令一段时间 |
| CLIENT REPLY ON|OFF|SKIP | 指示服务器是否回复命令 |
| CLIENT SETNAME connection-name | 设置当前连接名称 |
| CLIENT UNBLOCK client-id [TIMEOUT|ERROR] | 取消阻止从不同连接中阻止阻止命令的客户端 |
| CLIENT NO-EVICT ON|OFF | 为当前连接设置客户端驱逐模式 |
| COMMAND | 获取 AMDC 命令详细信息数组 |
| COMMAND COUNT | 获取AMDC命令的总数 |
| COMMAND GETKEYS | 给定完整的 AMDC 命令提取键 |
| COMMAND INFO command-name [command-name ...] | 获取特定AMDC命令详细信息的数组 |
| CONFIG GET parameter [parameter ...] | 获取配置参数的值 |
| CONFIG REWRITE | 用内存配置重写配置文件 |
| CONFIG SET parameter value [parameter value ...] | 将配置参数设置为给定的值 |
| CONFIG RESETSTAT | 重置 INFO 返回的统计信息 |
| COPY source destination [DB destination-db] [REPLACE] | 复制一个键 |
| DBSIZE | 返回所选数据库中的键数 |
| DECR key | 一个键的整数值减一 |
| DECRBY key decrement | 按给定的数字减少一个键的整数值 |
| DEL key [key ...] | 删除一个键 |
| DISCARD | 放弃在多次执行后发出的所有命令 |
| DUMP key | 返回存储在指定键中的值的序列化版本。 |
| ECHO message | 回显给定的字符串 |
| EVAL script numkeys [key [key ...]] [arg [arg ...]] | 执行一个Lua脚本服务器端 |
| EVAL_RO script numkeys key [key ...] arg [arg ...] | 执行只读的 Lua 脚本服务器端 |
| EVALSHA sha1 numkeys [key [key ...]] [arg [arg ...]] | 执行 Lua 脚本服务器端 |
| EVALSHA_RO sha1 numkeys key [key ...] arg [arg ...] | 执行一个只读的 Lua 脚本服务器端 |
| EXEC | 执行 MULTI |
| EXISTS key [key ...] | 判断key是否存在 |
| EXPIRE key seconds [NX|XX|GT|LT] | 以秒为单位设置键的生存时间 |
| EXPIREAT key timestamp [NX|XX|GT|LT] | 将键的到期时间设置为 UNIX 时间戳 |
| EXPIRETIME key | 获取键的到期 Unix 时间戳 |
| FAILOVER [TO host port [FORCE]] [ABORT] [TIMEOUT milliseconds] | 在此服务器与其副本之一之间启动协调故障转移。 |
| FLUSHALL [ASYNC|SYNC] | 从所有数据库中删除所有键 |
| FLUSHDB [ASYNC|SYNC] | 从当前数据库中删除所有键 |
| GEOADD key [NX|XX] [CH] longitude latitude member [longitude latitude member ...] | 在使用排序集表示的地理空间索引中添加一个或多个地理空间项目 |
| GEOHASH key member [member ...] | 将地理空间索引的成员作为标准 geohash 字符串返回 |
| GEOPOS key member [member ...] | 返回地理空间索引成员的经度和纬度 |
| GEODIST key member1 member2 [m|km|ft|mi] | 返回地理空间索引的两个成员之间的距离 |
| GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count [ANY]] [ASC|DESC] [STORE key] [STOAMDCT key] | 查询表示地理空间索引的排序集,以获取与点的给定最大距离匹配的成员 |
| GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count [ANY]] [ASC|DESC] [STORE key] [STOAMDCT key] | 查询表示地理空间索引的排序集以获取与成员的给定最大距离匹配的成员 |
| GEOSEARCH key [FROMMEMBER member] [FROMLONLAT longitude latitude] [BYRADIUS radius m|km|ft|mi] [BYBOX width height m|km|ft|mi] [ASC|DESC] [COUNT count [ANY]] [WITHCOORD] [WITHDIST] [WITHHASH] | 查询表示地理空间索引的排序集以获取框或圆区域内的成员。 |
| GEOSEARCHSTORE destination source [FROMMEMBER member] [FROMLONLAT longitude latitude] [BYRADIUS radius m|km|ft|mi] [BYBOX width height m|km|ft|mi] [ASC|DESC] [COUNT count [ANY]] [STOAMDCT] | 查询表示地理空间索引的排序集以获取框或圆区域内的成员,并将结果存储在另一个键中。 |
| GET key | 获取一个键的值 |
| GETBIT key offset | 返回存储在 key |
| GETDEL key | 的字符串值中偏移量处的位值。获取某个key的值并删除key |
| GETRANGE key start end | 获取存储在键中的字符串的子字符串 |
| GETSET key value | 设置一个键的字符串值并返回它的旧值 |
| HDEL key field [field ...] | 删除一个或多个哈希字段 |
| HELLO [protover [AUTH username password] [SETNAME clientname]] | 与 AMDC 握手 |
| HEXISTS key field | 判断一个hash字段是否存在 |
| HGET key field | 获取哈希字段的值 |
| HGETALL key | 获取哈希中的所有字段和值 |
| HINCRBY key field increment | 将散列字段的整数值增加给定的数字 |
| HINCRBYFLOAT key field increment | 将哈希字段的浮点值增加给定的数量 |
| HKEYS key | 获取散列中的所有字段 |
| HLEN key | 获取哈希中的字段数 |
| HMGET key field [field ...] | 获取所有给定哈希字段的值 |
| HMSET key field value [field value ...] | 将多个哈希字段设置为多个值 |
| HSET key field value [field value ...] | 设置一个哈希字段的字符串值 |
| HSETNX key field value | 设置一个哈希字段的值,仅当该字段不存在时 |
| HRANDFIELD key [count [WITHVALUES]] | 从散列中获取一个或多个随机字段 |
| HSTRLEN key field | 获取哈希字段值的长度 |
| HVALS key | 获取散列中的所有值 |
| INCR key | 键的整数值加一 |
| INCRBY key increment | 将键的整数值增加给定的数量 |
| INCRBYFLOAT key increment | 将键的浮点值增加给定的数量 |
| INFO [section] | 获取有关服务器的信息和统计信息 |
| LOLWUT [VERSION version] | 展示一些计算机艺术和 AMDC 版本 |
| KEYS pattern | 找到所有匹配给定模式的键 |
| LASTSAVE | 获取上次成功保存到磁盘的 UNIX 时间戳 |
| LINDEX key index | 通过索引从列表中获取元素 |
| LINSERT key BEFORE|AFTER pivot element | 在列表中的另一个元素之前或之后插入一个元素 |
| LLEN key | 获取列表的长度 |
| LPOP key [count] | 删除并获取列表中的第一个元素 |
| LPOS key element [RANK rank] [COUNT num-matches] [MAXLEN len] | 返回列表中匹配元素的索引 |
| LPUSH key element [element ...] | 将一个或多个元素添加到列表中 |
| LPUSHX key element [element ...] | 将元素添加到列表中,仅当列表存在时 |
| LRANGE key start stop | 从列表中获取一系列元素 |
| LREM key count element | 从列表中删除元素 |
| LSET key index element | 通过索引设置列表中元素的值 |
| LTRIM key start stop | 将列表修剪到指定范围 |
| MEMORY STATS | 显示内存使用详情 |
| MEMORY USAGE key [SAMPLES count] | 估计一个key的内存占用 |
| MGET key [key ...] | 获取所有给定键的值 |
| MIGRATE host port key| destination-db timeout [COPY] [REPLACE] [AUTH password] [AUTH2 username password] [KEYS key [key ...]] | 以原子方式将键从 AMDC 实例传输到另一个实例。 |
| MONITOR | 实时监听服务器收到的所有请求 |
| MOVE key db | 移动一个键到另一个数据库 |
| MSET key value [key value ...] | 将多个键设置为多个值 |
| MSETNX key value [key value ...] | 仅当不存在任何键时才将多个键设置为多个值 |
| MULTI | 标记一个事务块的开始 |
| OBJECT ENCODING key | 检查 AMDC 对象的内部编码 |
| OBJECT FREQ key | 获取AMDC对象的对数访问频率计数器 |
| OBJECT IDLETIME key | 获取自上次访问 AMDC 对象以来的时间 |
| OBJECT REFCOUNT key | 获取键值的引用次数 |
| PERSIST key | 从键中删除过期时间 |
| PEXPIRE key milliseconds [NX|XX|GT|LT] | 以毫秒为单位设置键的生存时间 |
| PEXPIREAT key milliseconds-timestamp [NX|XX|GT|LT] | 将键的到期时间设置为以毫秒为单位指定的 UNIX 时间戳 |
| PEXPIRETIME key | 以毫秒为单位获取键的到期 Unix 时间戳 |
| PFADD key [element [element ...]] | 将指定的元素添加到指定的 HyperLogLog. |
| PFCOUNT key [key ...] | 返回 HyperLogLog 在 key(s) 处观察到的集合的近似基数。 |
| PFMERGE destkey sourcekey [sourcekey ...] | 将 N 个不同的 HyperLogLog 合并为一个。 |
| PING [message] | Ping 服务器 |
| PSETEX key milliseconds value | 以毫秒为单位设置键值和过期时间 |
| PSUBSCRIBE pattern [pattern ...] | 侦听发布到与给定模式匹配的频道的消息 |
| PUBSUB CHANNELS [pattern] | 列出活动频道 |
| PUBSUB NUMPAT | 获取独特模式模式订阅的计数 |
| PUBSUB NUMSUB [channel [channel ...]] | 获取频道的订阅者数量 |
| PTTL key | 以毫秒为单位获取键的生存时间 |
| PUBLISH channel message | 向频道发布消息 |
| PUNSUBSCRIBE [pattern [pattern ...]] | 停止收听发布到与给定模式匹配的频道的消息 |
| QUIT | 关闭连接 |
| RANDOMKEY | 从键空间返回一个随机键 |
| READONLY | 启用对集群副本节点连接的读取查询 |
| READWRITE | 禁用对集群副本节点连接的读取查询 |
| RENAME key newkey | 重命名一个键 |
| RENAMENX key newkey | 重命名键,仅当新键不存在时 |
| RESET | 重置连接 |
| RESTORE key ttl serialized-value [REPLACE] [ABSTTL] [IDLETIME seconds] [FREQ frequency] | 使用提供的序列化值创建一个键,之前使用 DUMP 获得。 |
| ROLE | 返回实例在复制上下文中的角色 |
| RPOP key [count] | 删除并获取列表中的最后一个元素 |
| RPOPLPUSH source destination | 删除列表中的最后一个元素,将其添加到另一个列表中并返回它 |
| LMOVE source destination LEFT|RIGHT LEFT|RIGHT | 从列表中弹出一个元素,将其推送到另一个列表并返回它 |
| RPUSH key element [element ...] | 将一个或多个元素附加到列表中 |
| RPUSHX key element [element ...] | 仅当列表存在时才将元素附加到列表中 |
| SADD key member [member ...] | 将一个或多个成员添加到集合中 |
| SAVE | 将数据集同步保存到磁盘 |
| SCARD key | 获取集合中的成员数量 |
| SCRIPT DEBUG YES|SYNC|NO | 为执行的脚本设置调试模式。 |
| SCRIPT EXISTS sha1 [sha1 ...] | 检查脚本缓存中是否存在脚本。 |
| SCRIPT FLUSH [ASYNC|SYNC] | 从脚本缓存中删除所有脚本。 |
| SCRIPT KILL | 终止当前正在执行的脚本。 |
| SCRIPT LOAD script | 将指定的 Lua 脚本加载到脚本缓存中。 |
| SDIFF key [key ...] | 减去多组 |
| SDIFFSTORE destination key [key ...] | 减去多个集合并将结果集合存储在一个键中 |
| SELECT index | 更改当前连接选择的数据库 |
| SET key value [EX seconds|PX milliseconds|EXAT timestamp|PXAT milliseconds-timestamp|KEEPTTL] [NX|XX] [GET] | 设置一个键的字符串值 |
| SETBIT key offset value | 设置或清除存储在 key |
| SETEX key seconds value | 设置一个键的值和过期时间 |
| SETNX key value | 设置键的值,仅当键不存在时 |
| SETRANGE key offset value | 从指定的偏移量开始覆盖键处的部分字符串 |
| SHUTDOWN [NOSAVE|SAVE] | 将数据集同步保存到磁盘,然后关闭服务器 |
| SINTER key [key ...] | 多组相交 |
| SINTERCARD numkeys key [key ...] [LIMIT limit] | 将多个集合相交并返回结果的基数 |
| SINTERSTORE destination key [key ...] | 将多个集合相交并将结果集存储在一个键中 |
| SISMEMBER key member | 确定给定值是否是集合的成员 |
| REPLICAOF host port | 使服务器成为另一个实例的副本,或将其提升为主服务器。 |
| SLOWLOG GET [count] | 获取慢日志的条目 |
| SLOWLOG LEN | 获取慢日志的长度 |
| SLOWLOG RESET | 清除慢日志中的所有条目 |
| SMEMBERS key | 集齐所有成员 |
| SMOVE source destination member | 将成员从一组移动到另一组 |
| SORT key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC|DESC] [ALPHA] [STORE destination] | 对列表、集合或排序集合中的元素进行排序 |
| SORT_RO key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC|DESC] [ALPHA] | 对列表、集合或有序集合中的元素进行排序。 SORT 的只读变体。 |
| SPOP key [count] | 从集合中删除并返回一个或多个随机成员 |
| SRANDMEMBER key [count] | 从一组中获取一个或多个随机成员 |
| SREM key member [member ...] | 从集合中删除一个或多个成员 |
| LCS key1 key2 [LEN] [IDX] [MINMATCHLEN len] [WITHMATCHLEN] | 求最长公共子串 |
| STRLEN key | 获取存储在键中的值的长度 |
| SUBSCRIBE channel [channel ...] | 收听发布到给定频道的消息 |
| SUNION key [key ...] | 添加多组 |
| SUNIONSTORE destination key [key ...] | 添加多个集合并将结果集存储在一个键中 |
| SWAPDB index1 index2 | 交换两个AMDC数据库 |
| SYNC | 用于复制的内部命令 |
| PSYNC replicationid offset | 用于复制的内部命令 |
| TIME | 返回当前服务器时间 |
| TOUCH key [key ...] | 更改键的最后访问时间。返回指定的现有键的数量。 |
| TTL key | 在几秒钟内获得一把钥匙的生存时间 |
| TYPE key | 确定存储在 key 的类型 |
| UNSUBSCRIBE [channel [channel ...]] | 停止收听发布到给定频道的消息 |
| UNLINK key [key ...] | 在另一个线程中异步删除一个键。否则它就像 DEL 一样,但非阻塞。 |
| UNWATCH | 忘记所有观看过的钥匙吧 |
| WAIT numreplicas timeout | 等待同步复制当前连接上下文中发送的所有写命令 |
| WATCH key [key ...] | 观察给定的键以确定 MULTI/EXEC 块的执行 |
| ZADD key [NX|XX] [GT|LT] [CH] [INCR] score member [score member ...] | 将一个或多个成员添加到排序集中,或者如果它已经存在则更新其分数 |
| ZCARD key | 获取有序集合中的成员数量 |
| ZCOUNT key min max | 用给定值内的分数计算排序集中的成员 |
| ZDIFF numkeys key [key ...] [WITHSCORES] | 减去多个排序集 |
| ZDIFFSTORE destination numkeys key [key ...] | 减去多个排序集并将结果排序集存储在一个新键中 |
| ZINCRBY key increment member | 在排序集中增加成员的分数 |
| ZINTERCARD numkeys key [key ...] [LIMIT limit] | 将多个有序集合相交并返回结果的基数 |
| ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX] | 将多个排序集相交并将结果排序集存储在一个新键中 |
| ZLEXCOUNT key min max | 计算给定字典范围内排序集中的成员数量 |
| ZPOPMAX key [count] | 删除并返回排序集中得分最高的成员 |
| ZPOPMIN key [count] | 删除并返回排序集中得分最低的成员 |
| ZMPOP numkeys key [key ...] MIN|MAX [COUNT count] | 删除并返回具有排序集中分数的成员 |
| ZRANDMEMBER key [count [WITHSCORES]] | 从有序集合中获取一个或多个随机元素 |
| ZRANGESTORE dst src min max [BYSCORE|BYLEX] [REV] [LIMIT offset count] | 将有序集合中的一系列成员存储到另一个键中 |
| ZRANGE key min max [BYSCORE|BYLEX] [REV] [LIMIT offset count] [WITHSCORES] | 返回有序集合中的一系列成员 |
| ZRANGEBYLEX key min max [LIMIT offset count] | 返回成员范围rs 在一个有序的集合中,按字典序排列 |
| ZREVRANGEBYLEX key max min [LIMIT offset count] | 返回排序集中的成员范围,按字典序范围,从高到低的字符串排序。 |
| ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] | 按分数返回排序集中的一系列成员 |
| ZRANK key member | 确定有序集合中成员的索引 |
| ZREM key member [member ...] | 从排序集中删除一个或多个成员 |
| ZREMRANGEBYLEX key min max | 删除给定字典范围之间排序集中的所有成员 |
| ZREMRANGEBYRANK key start stop | 删除给定索引内排序集中的所有成员 |
| ZREMRANGEBYSCORE key min max | 删除给定分数内排序集中的所有成员 |
| ZREVRANGE key start stop [WITHSCORES] | 按索引返回排序集中的一系列成员,分数从高到低排序 |
| ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count] | 按分数返回排序集中的一系列成员,分数从高到低排序 |
| ZREVRANK key member | 确定一个有序集合中某个成员的索引,分数从高到低排序 |
| ZSCORE key member | 在排序集中获取与给定成员关联的分数 |
| ZMSCORE key member [member ...] | 获取与排序集中的给定成员相关联的分数 |
| ZUNIONSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX] | 添加多个排序集并将结果排序集存储在一个新键中 |
| SCAN cursor [MATCH pattern] [COUNT count] [TYPE type] | 增量迭代键空间 |
| SSCAN key cursor [MATCH pattern] [COUNT count] | 增量迭代 Set 元素 |
| HSCAN key cursor [MATCH pattern] [COUNT count] | 增量迭代哈希字段和关联值 |
| ZSCAN key cursor [MATCH pattern] [COUNT count] | 增量迭代已排序的集合元素和相关分数 |
| XINFO CONSUMERS key groupname | 列出消费者组中的消费者 |
| XINFO GROUPS key | 列出流的消费者组 |
| XINFO STREAM key [FULL [COUNT count]] | 获取有关流的信息 |
| XADD key [NOMKSTREAM] [MAXLEN|MINID [=|~] threshold [LIMIT count]] *|ID field value [field value ...] | 将新条目附加到流中 |
| XTRIM key MAXLEN|MINID [=|~] threshold [LIMIT count] | 将流修剪到(大约如果 '~' 被传递)特定大小 |
| XDEL key ID [ID ...] | 从流中删除指定的条目。返回实际删除的项目数,如果某些 ID 不存在,则可能与传递的 ID 数不同。 |
| XRANGE key start end [COUNT count] | 返回流中的一系列元素,其 ID 与指定的 ID 间隔相匹配 |
| XREVRANGE key end start [COUNT count] | 与 XRANGE 相比,以相反的顺序(从较大到较小的 ID)返回流中的一系列元素,其中 ID 与指定的 ID 间隔匹配 |
| XLEN key | 返回流中的条目数 |
| XREAD [COUNT count] [BLOCK milliseconds] STREAMS key [key ...] ID [ID ...] | 返回多个流中从未见过的元素,其 ID 大于调用者为每个流报告的 ID。可以屏蔽。 |
| XGROUP CREATE key groupname id|$ [MKSTREAM] | 创建一个消费者组。 |
| XGROUP CREATECONSUMER key groupname consumername | 在消费者组中创建消费者。 |
| XGROUP DELCONSUMER key groupname consumername | 从消费者组中删除消费者。 |
| XGROUP DESTROY key groupname | 销毁一个消费组。 |
| XGROUP SETID key groupname id|$ | 将消费者组设置为任意最后交付的 ID 值。 |
| XREADGROUP GROUP group consumer [COUNT count] [BLOCK milliseconds] [NOACK] STREAMS key [key ...] ID [ID ...] | 使用消费者组从流中返回新条目,或访问给定消费者的待处理条目的历史记录。可以屏蔽。 |
| XACK key group ID [ID ...] | 将待处理消息标记为正确处理,有效地将其从消费者组的待处理条目列表中删除。该命令的返回值是成功确认的消息数,即我们在 PEL 中实际能够解析的 ID。 |
| XCLAIM key group consumer min-idle-time ID [ID ...] [IDLE ms] [TIME ms-unix-time] [RETRYCOUNT count] [FORCE] [JUSTID] | 更改(或获取)消费者组中消息的所有权,就好像消息已交付给指定的消费者一样。 |
| XAUTOCLAIM key group consumer min-idle-time start [COUNT count] [JUSTID] | 更改(或获取)消费者组中消息的所有权,就像将消息传递给指定的消费者一样。 |
| XPENDING key group [[IDLE min-idle-time] start end count [consumer]] | 从流消费者组待处理条目列表中返回信息和条目,即获取但从未确认的消息。 |
| CLUSTER ADDSLOTS slot [slot ...] | 为接收节点分配新的哈希插槽 |
| CLUSTER ADDSLOTSRANGE start-slot end-slot [start-slot end-slot ...] | 为接收节点分配新的哈希插槽 |
| CLUSTER BUMPEPOCH | 命令从连接的节点触发群集配置年龄的增量。如果节点的配置年龄为零,或者小于群集的最大年龄,则该年龄将递增 |
| CLUSTER COUNT-FAILURE-REPORTS node-id | 返回为给定节点处于活动的故障报告的数量 |
| CLUSTER COUNTKEYSINSLOT slot | 返回指定哈希插槽中的本地键数 |
| CLUSTER DELSLOTS slot [slot ...] | 将哈希插槽设置为接收节点中的未绑定 |
| CLUSTER DELSLOTSRANGE start-slot end-slot [start-slot end-slot ...] | 将哈希插槽设置为接收节点中的未绑定 |
| CLUSTER FAILOVER [FORCE|TAKEOVER] | 强制副本执行其主站的手动故障转移。 |
| CLUSTER FLUSHSLOTS | 删除节点自己的插槽信息 |
| CLUSTER FORGET node-id | 从节点表中删除节点 |
| CLUSTER GETKEYSINSLOT slot count | 在指定的哈希插槽中返回本地键名称 |
| CLUSTER INFO | 提供有关AMDC Cluster节点状态的信息 |
| CLUSTER KEYSLOT key | 返回指定键的哈希槽 |
| CLUSTER MEET ip port | 强制一个节点集群与另一个节点握手 |
| CLUSTER MYID | 返回节点 id |
| CLUSTER NODES | 获取节点的集群配置 |
# AMDC控制台
# 1.首页
# 1.1登录
部署完成后,打开浏览器(推荐Chrome、firefox)输入地址进入到控制台登录页面:http://serverIP:serverPort/ (opens new window)。
例如:
将AMDC控制台部署在172.24.4.190服务器,端口默认为9001,则控制台登录地址则为:http://172.24.4.190:9001 (opens new window)
初始用户名密码参考《用户手册》第八章。

# 1.2首页-集群
控制台首页-集群,对集群状态进行了汇总展示,并为集群管理操作提供以下入口:浏览、监控、告警、设置、删除

# 1.3个人信息
点击首页右上角头像,进入个人信息页面,可以查看用户信息或修改当前用户的密码、邮箱、电话。头像暂时不支持更改。

# 1.4如何切换用户组
控制台根据用户所在的群组进行展示,因此当用户拥有多个群组时,查看不同的群组信息时需要切换到对应的群组下,其操作为:点击首页右上角导航栏用户组下拉列表切换到目标用户组下。
# 2.集群管理
集群首页提供了集群浏览、集群监控、集群告警、集群设置、集群编辑、删除集群的操作入口。
# 2.1导入AMDC集群或单机
对于不在控制台部署的AMDC缓存服务,可以导入控制台实现在控制台进行监控、修改、执行命令等操作。
进入集群首页点击【+】导入按钮,根据页面提示添加监控的集群/单机实例信息。
集群名称:自定义集群名称
- AMDC密码:AMDC缓存服务的密码
- AMDC Node:AMDC缓存服务的IP:端口
# 2.2集群命令行
点击首页集群,选择一个集群的【更多-命令行】按钮,进入集群命令行界面,可以模拟集群客户端进行交互。
# 2.3集群ACL管理
点击首页集群,选择一个集群的【ACL】按钮,进入集群命令行界面,可以模拟集群客户端进行交互。当前管控台版本是一个粗粒度的ACL控制,不能直接添加具体的命令权限,可以在【命令行】中实现完整的ACL控制。这个功能将会在下个版本中完善。

对应
acl setuser username >password on ~* &* +@all(+command)来解释用户名称(username):新增用户的名称 是否启用(on/off):启用或者不启用该用户 密码(>password):用户密码 可访问数据(~):正则表达式匹配可访问的数据 可使用命令集(+@all):acl cat列表中的命令集名称 可使用管道(&):正则表达式匹配可访问的发布订阅管道 可使用命令(+command):acl cat <命令集>列表中的具体命令
# 2.4集群监控
点击首页【集群】进入集群管理首页,点击集群栏目下的【监控】按钮,进入集群监控页面,这里将展示当前集群的详细信息以及重要指标项。

# 2.5集群告警
点击首页【集群】进入集群管理首页,点击集群栏目下的【告警】按钮,进入集群告警页面,这里展示当前集群的告警信息,包括当前集群的告警记录、当前集群告警规则、当前集群告警通道

# 2.5.1添加集群告警通道
添加集群告警通道操作步骤如下: 步骤一、在告警>告警通道中新增告警通道(参考4.1.1创建告警通道) 步骤二、进入集群>告警,切换到告警tab,点击【新增】按钮,选择相应的告警通道进行新增。
# 2.5.2添加集群告警规则
告警规则分为全局告警规则和局部告警规则,其中全局告警规则对所有集群生效无需添加,单个集群添加的告警规则只能添加局部告警规则,新增全局告警规则参考4.1.1新增告警规则,添加集群告警规则操作步骤如下: 步骤一、在告警>告警规则中新增告警规则,关闭全局开关(参考4.1.2新增告警规则) 步骤二、进入集群>告警,切换到告警规则tab,点击【新增】按钮,选择相应的告警规则进行新增。
# 2.6设置集群
集群设置,提供AMDC实例的配置修改、节点的增删改,集群清除内存、集群移除、集群节点的停止、启动、重启、删除、集群info、config、slowlog信息查看、关联机器、数据备份、集群扩容、导入的操作。

# 2.6.1增加集群中AMDC节点
增加属于集群中的节点,可以通过控制台导入其他渠道创建的AMDC缓存服务实例
操作步骤:进入集群管理首页,点击集群【设置】按钮进入设置页面,点击【导入】按钮,进入集群节点导入页面,导入非控制台扩容的AMDC实例。
注意:被导入的实例本身就属于当前集群的节点才能被导入。

# 2.6.2AMDC节点配置
点击首页集群信息栏【设置】按钮,进入集群设置页面,点击列表左上角【配置】进入配置页面,选择左侧的配置项在右侧的单元格输入相应的值。并点击【确定】按钮提交,修改配置项:

# 2.6.3清除集群内存
点击首页集群模块【设置】按钮,进入设置页面点击【集群】下拉箭头,选择【清除内存】,清除当前节点的内存数据

# 2.6.4移除集群节点
点击首页集群信息栏【设置】按钮,进入集群设置页面,点击列表中【集群】下拉框按钮,选择【移除】,即移除当前节点(只能移除从节点)。

# 2.6.5启动、停止、重启节点
点击首页集群信息栏【设置】按钮,进入集群设置页面,点击列表中【节点】下拉框按钮,选择【停止】、【重启】、【启动】、【删除】按钮,即实现节点的停止、启动、重启、删除的操作。

# 2.6.6命令行
点击首页集群信息栏【设置】按钮,进入集群设置页面,选中对应节点,点击【命令行】按钮,打开该节点的命令行

# 2.6.7关联机器
点击首页集群信息栏【设置】按钮,进入集群设置页面,选中对应节点,点击【关联机器】按钮,将导入的节点与机器信息关联起来,这样能给节点提供完整管理功能。

# 2.6.8数据备份
点击首页集群信息栏【设置】按钮,进入集群设置页面,选中对应节点,点击【数据备份】按钮,点击后会提示下载信息。
# 2.6.9集群扩容
点击首页集群信息栏【设置】按钮,进入集群设置页面,选中对应节点,点击【扩容】按钮,跳转至集群扩容页面,实现扩充主从模式的从节点,或者扩展集群模式的节点。

# 3.自动部署
只能对机器集群进行自动部署,因此在执行自动部署前需将AMDC缓存服务的目标机器加入机器管理中。
# 3.1机器管理
进入部署>机器管理,机器管理页面提供新增、删除机器的功能入口。

# 3.1.1新增机器
点击首页【部署-机器管理】进入机器管理页面,需要先有机器组才能新增机器,同一个机器组只能添加相同架构的芯片的机器。点击左侧机器组旁的【+】按钮,新增一个机器组;

选中机器组,点击左上方【添加】按钮,在输入框中输入相应的信息新增机器。
备注:只能新增链接正常的服务器,因此请确认目标机器链接状态。

用户名:登录远程机器的用户名,如:root 密码:登录远程机器的密码 ssh端口:登录远程机器的端口,如:22 Host:远程机器的地址,如:172.24.4.213 备注:可以为空
# 3.1.2编辑机器
点击首页【部署-机器管理】进入机器管理页面,勾选需要编辑的机器,点击机器列表右侧【编辑】按钮,即可编辑当前行机器信息。

# 3.1.3删除机器
点击首页【部署-机器管理】进入机器管理页面,勾选需要删除的机器,点击机器列表右侧【删除】按钮,即可删除当前行机器,支持批量删除。

# 3.2自动部署
控制台自动部署AMDC,即通过控制台图形界面化部署AMDC缓存服务,将AMDC安装包以及启动配置传送到目标机器的安装目录,并通过SSH命令启动AMDC缓存服务。部署主要流程包括:
注意:使用自动部署功能需要目标服务器具备tar命令、ss命令
# 3.2.1控制台自动部署单机模式
控制台自动部署前请确保目标服务器链接正常,目标服务器已添加至机器列表中(参考3.1.1机器管理),目标服务器具备tar命令、ss命令。
步骤:进入【部署】>【自动部署】,模式选择为【单机】,单机模式中主节点默认为1从节点默认为0,根据自动部署界面提示输入相应信息,点击【安装】按钮,进行一键部署。

集群名称:自定义集群名称 AMDC密码:AMDC缓存服务客户端链接密码,可以不加 模式:单机模式,主从模式,部署集群模式时需要选择单机 环境:默认Machine 安装包:选择已经添加的安装包(详见5.1安装包管理) License: 选择已经添加的License(详见5.2License管理) 机器列表:选择已经添加的机器(详见3.1机器管理) 启动端口:AMDC缓存服务启动的端口,多实例会按当前端口+1来布置 安装目录:AMDC缓存服务的安装路径,使用sudo进行安装时,需在home/目录下安装 sudo:是否使用sudo进行安装 自动拓扑:自动拓扑代表自动规划主从在机器上的分布,反之需要手动指定会按当前端口+1来布置 步骤4.验证自动部署结果 点击【集群】菜单,查看集群是否生成,并且状态为健康。可以使用【命令行】做进一步的验证。
# 3.2.2控制台自动部署主从模式
控制台自动部署主从模式前请确保目标服务器链接正常,目标服务器已添加至机器列表中(参考3.1.1机器管理)。
操作步骤:
1.进入部署>自动部署,根据页面内容选择AMDC核心安装包和license,根据目标服务器选择机器,在【模式】中选择主从,主节点默认为1,点击安装即可自动实现主从部署。(参考3.2)

# 3.2.3控制台自动部署集群模式
控制台自动部署主从模式前请确保目标服务器链接正常,目标服务器已添加至机器列表中(参考3.1.1机器管理)。
操作步骤:
1.进入部署>自动部署,根据页面内容选择AMDC核心安装包和license,根据目标服务器选择机器,在【模式】中选择集群,点击安装即可自动实现主从部署。(参考3.2)

# 4.告警
告警是缓存监控的附加功能,实现了缓存触发告警规则时自动发出告警,通知接收人。
# 4.1告警通道
告警通道指通知接收人的通知方式,amdc控制台提供Email形式的告警通道。

# 4.1.1新增告警通道
点击首页【告警-告警通道】进入告警通道首页,点击【新增】按钮,新增告警通道。

通道名称:自定义 通道类型:Email SMTP 地址:邮件传送协议服务器 SMTP 端口:邮件服务器使用的端口 发件人邮箱:发送邮件的用户名 密码:发送人的邮箱密码 收件人:当前用户组下的用户,可多选,同时通知多人 备注:备注信息
# 4.1.2编辑告警通道
点击首页【告警-告警通道】进入告警通道首页,选择需要编辑的告警通道并点击告警通道列表右侧【编辑】按钮,编辑告警通道。
# 4.1.3删除告警通道
点击首页【告警-告警通道】进入告警通道首页,勾选需要删除的告警通道,点击告警通道列表右侧【删除】按钮,在确认框中点击【确认】删除告警通道。

# 4.2告警规则
在控制台设置告警规则,满足设置条件后将会在设置的时间内触发告警!根据设置的频率发送告警!

# 4.2.1创建告警规则
告警规则分为对所有集群有效的全局告警规则和针对单个集群生效的局部告警规则,其中单个集群的告警规则需要在集群中进行添加(参考2.4.2添加集群告警规则),打开全局开关则针对所有集群生效。
点击首页【告警-告警规则】进入告警规则首页,点击页面右上角【创建】按钮,创建告警规则。

节点状态告警:节点告警开关,开关开启节点告警则开启 规则名称:自定义告警规则名称 规则:设置告警出发的条件 比较符:比较运算选择 比较值:输入告警比较数值,满足该数值后将出发告警 周期:规则检查的周期(分钟):5、10、15、20、30、45、60、120(min) 是否生效:开关开启告警规则生效 是否全局:默认否,选择全局时该条规则将应用到当前用户组的所有集
# 4.2.2编辑告警规则
点击首页【告警-告警规则】进入告警规则首页,勾选相应的告警规则,点击列表右侧【编辑】按钮,编辑告警规则。

# 4.2.3删除告警规则
点击首页【告警-告警规则】进入告警规则首页,勾选需要删除的告警规则,点击列表右侧【删除】按钮,编辑告警规则。也可选择多条告警规则点击左上角【删除】按钮批量删除。

# 5.文件
文件管理用于存放AMDC的安装包以及License文件,上传的文件会经过管控的初步校验以确定其可用性,并在自动部署中选择使用。
# 5.1安装包管理
安装包管理用于上传自动部署使用的安装包。

# 5.1.1上传安装包
点击【上传】按钮,打开上传安装包的弹窗,点击【选择文件】来选择需要上传的安装包,再点击确定即可,可同时上传多个。

# 5.1.2删除安装包
选中需要删除的安装包,点击左上角【删除】按钮即可,支持同时删除多个。
# 5.2License管理
管理用于上传自动部署使用的License,上传后License会被解析,无效的License将无法保存在管控台。

# 5.2.1上传License
点击【上传】按钮,打开上传License的弹窗,点击【选择文件】来选择需要上传的安装包,再点击确定即可,可同时上传多个。

# 5.2.2删除License
选中需要删除的安装包,点击左上角【删除】按钮即可,支持同时删除多个。
# 6.三员管理
有三个特殊角色:系统管理员,安全保密员,安全审计员。特殊角色有且仅有一个账号,由系统启动时生成,密码不可更改(在配置文件中加密配置)。
- 系统管理员负责建立用户组、账号,有用户组管理、用户管理菜单;
- 安全保密员负责给账号分配用户组、角色(访问权限),有授权管理菜单;
- 安全审计员负责审核管控台操作日志,有操作日志菜单。
一般的用户拥有除用户管理、用户组管理、授权管理、操作历史外的所有菜单。一般用户分为两种角色:
- 管理员(拥有菜单的中所有的按钮权限)
- 普通用户(只有查看信息的权限)
用户在不同的用户组可以有不同的角色。
# 6.1用户组管理
用户组管理是用于创建,编辑,删除用户所属的用户组。主要用于区分用户能够管理的AMDC集群。

# 6.1.1创建群组
进入【用户】>【用户组管理】,在用户组管理页面点击右上角【新增】按钮,新增用户组。

# 6.1.2编辑用户组
进入【用户】>【用户组管理】,在用户组管理页面勾选需要编辑的用户组点击也“用户组名称”列,编辑用户组。

# 6.1.3删除用户组
进入【用户】>【用户组管理】,进入用户组管理页面,勾选需要删除的用户组点击【删除】按钮,删除用户组。

# 6.2用户管理
用户管理用于创建,编辑,删除用户,将本用户组授权给其他用户组用户。

# 6.2.1新增用户
进入【用户】>【用户管理】进入用户管理首页,点击右上角【新增】按钮,新增用户。

# 6.2.2编辑用户
进入【用户】>【用户管理】进入用户管理首页,勾选需要编辑的用户,点击右上角【编辑】按钮,编辑用户信息。

# 6.2.3删除用户
进入【用户】>【用户管理】进入用户管理首页,勾选需要删除的用户,点击右上角【删除】按钮,删除用户。

# 6.3授权管理
进入【用户】>【授权管理】进入授权管理页面。

用户组中未分配组中是没有被分配任何一个用户组的用户,这些用户需要先进行用户组授权,才有资格被授予角色;选择任何一个组的用户后点击【用户组授权】打开用户组授权弹窗既可以进行用户组的授权与取消授权。

完成用户组授权后,选中该用户进行角色授权,打开用户角色授权弹窗后,可以同时改变该用户在多个用户组中的角色。

新建账号没有初始密码,无法登陆,需要在授权管理中修改一次密码才可以进行登录。

“激活/冻结”,将用户账号进行激活或者冻结操作。

# 7.操作历史
# 7.1操作历史
操作历史记录所有用户在控制台上的操作历史。
