@[TOC](redis-cli 命令行下常用的操作命令)
命令行下连接redis
要在Shell下执行Redis命令,您可以使用redis-cli命令来连接到Redis服务器并执行相应的命令。以下是一个示例:
redis-cli -h <hostname> -p <port> <command>
将<hostname>
和<port>
替换为实际的Redis服务器主机名和端口号,<command>
替换为要执行的Redis命令。
例如,连接到本地默认端口的Redis服务器并执行GET mykey
命令的示例命令行如下:
redis-cli -h 127.0.0.1 -p 6379 GET mykey
执行该命令后,Redis-cli将连接到本地默认端口的Redis服务器,并执行GET mykey
命令,然后返回相应的结果。
请注意,在Shell中执行redis-cli命令时,您需要确保redis-cli可执行文件在系统的可执行路径中,或者您需要提供完整的路径来指定redis-cli的位置。
您可以根据需要修改命令行中的选项和参数来适应特定的Redis服务器和命令。
redis-cli 获取redis服务器运行状态和内存等信息
要获取Redis服务器的运行状态和内存等信息,可以使用redis-cli的INFO
命令。INFO
命令用于检索有关Redis服务器的各种统计和状态信息。以下是示例命令:
redis-cli INFO
执行上述命令后,Redis服务器将返回一个包含详细信息的文本响应。该响应包含各种关于服务器的统计数据、配置信息、内存使用情况、客户端连接信息等。
如果您只想获取特定的信息,可以使用INFO
命令的不同选项。以下是一些常用的选项:
-
INFO server
: 获取有关服务器的一般信息。 -
INFO memory
: 获取有关服务器内存使用情况的信息。 -
INFO clients
: 获取有关连接到服务器的客户端信息。 -
INFO persistence
: 获取有关持久化(持久化和快照)的信息。 -
INFO replication
: 获取有关主从复制的信息。 -
INFO keyspace
: 获取有关数据库键空间的信息。
示例命令如下:
redis-cli INFO server
redis-cli INFO memory
redis-cli INFO clients
执行这些命令后,Redis服务器将返回与相应选项相关的信息。
请注意,INFO
命令返回的信息可能很详细,需要根据实际需要进行解析和处理。
redis-cli INFO 显示结果
当您执行redis-cli INFO
命令时,Redis服务器将返回一个包含详细信息的文本响应。以下是一个示例结果的摘要,展示了一些常见的信息部分:
# Server
redis_version:6.0.9
redis_git_sha1:00000000
redis_git_dirty:0
...
# Clients
connected_clients:5
client_recent_max_input_buffer:8
client_recent_max_output_buffer:0
...
# Memory
used_memory:1915232
used_memory_human:1.83M
used_memory_rss:2744320
...
# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_last_save_time:1651144164
...
# Stats
total_connections_received:23
total_commands_processed:142
instantaneous_ops_per_sec:0
...
上述示例结果中的每个部分以#
作为注释,并包含了特定的信息类别。每个类别下面是相关的键值对信息,其中键表示具体的指标或配置项,而值表示相应的值。
您可以根据需要查看和解析不同的信息部分,如服务器、客户端、内存、持久化等。根据您的Redis版本和配置,具体的信息内容可能会有所不同。
请注意,INFO命令返回的结果是一个文本格式的信息,如果您想要以编程方式处理这些信息,可能需要解析文本并提取所需的信息部分。
get 和set举例
当使用Redis的GET
和SET
命令时,可以获取和设置键值对的值。以下是GET
和SET
命令的示例:
-
GET
命令示例:
假设我们有一个键名为mykey
,对应的值为Hello, Redis!
,可以使用GET
命令获取该键的值:
GET mykey
执行该命令后,Redis将返回Hello, Redis!
作为结果。
-
SET
命令示例:
假设我们要将键名为mykey
的值设置为Hello, Redis!
,可以使用SET
命令进行设置:
SET mykey "Hello, Redis!"
执行该命令后,Redis将设置键mykey
的值为Hello, Redis!
。
- 获取和设置过期时间:
可以通过使用EXPIRE
命令设置键的过期时间,然后使用GET
命令获取键的值。以下是一个示例:
SET mykey "Hello, Redis!"
EXPIRE mykey 60
GET mykey
首先,使用SET
命令将键mykey
的值设置为Hello, Redis!
,然后使用EXPIRE
命令设置键的过期时间为60秒。最后,使用GET
命令获取键mykey
的值。如果在60秒内执行GET
命令,将返回Hello, Redis!
作为结果;如果超过60秒后执行GET
命令,将返回nil
。
这些是GET
和SET
命令的示例。您可以根据实际情况使用这些命令来获取和设置Redis中键值对的值。还有其他许多Redis命令和选项可用于执行更复杂的操作和操作不同类型的数据。请参考Redis官方文档或使用redis-cli
的HELP
命令来获取更多命令的详细说明和示例。
redis 基本key命令
命令 | 描述 |
---|---|
SET key value | 设置键的值 |
GET key | 获取键的值 |
DEL key | 删除指定的键 |
EXISTS key | 检查键是否存在 |
KEYS pattern | 查找匹配指定模式的键 |
EXPIRE key seconds | 设置键的过期时间(以秒为单位) |
TTL key | 获取键的剩余生存时间(以秒为单位) |
PERSIST key | 移除键的过期时间 |
RENAME key newkey | 重命名键 |
TYPE key | 获取键的数据类型 |
RANDOMKEY | 随机返回一个键 |
redis hash
下表列出了一些常用的 Redis 哈希(Hash)命令:
命令 | 描述 |
---|---|
HSET key field value | 设置哈希表中字段的值 |
HGET key field | 获取哈希表中字段的值 |
HMSET key field1 value1 field2 value2 ... | 同时设置哈希表中多个字段的值 |
HMGET key field1 field2 ... | 同时获取哈希表中多个字段的值 |
HDEL key field1 field2 ... | 删除哈希表中的一个或多个字段 |
HEXISTS key field | 检查哈希表中是否存在指定字段 |
HKEYS key | 获取哈希表中的所有字段 |
HVALS key | 获取哈希表中的所有值 |
HLEN key | 获取哈希表中字段的数量 |
HINCRBY key field increment | 将哈希表中指定字段的值增加指定的增量 |
HSETNX key field value | 当字段不存在时,设置哈希表中字段的值 |
HSTRLEN key field | 获取哈希表中指定字段值的长度 |
HSCAN key cursor [MATCH pattern] [COUNT count] | 迭代遍历哈希表中的字段 |
Redis 列表(List)命令
命令 | 描述 |
---|---|
LPUSH key value1 value2 ... | 将一个或多个值插入列表的头部 |
RPUSH key value1 value2 ... | 将一个或多个值插入列表的尾部 |
LPOP key | 移除并返回列表的头部元素 |
RPOP key | 移除并返回列表的尾部元素 |
LINDEX key index | 返回列表中指定索引处的元素 |
LLEN key | 返回列表的长度 |
LRANGE key start stop | 返回列表中指定范围的元素 |
LREM key count value | 从列表中删除指定数量的匹配元素 |
LSET key index value | 设置列表中指定索引处的元素的值 |
LTRIM key start stop | 保留列表中指定范围内的元素,其它元素全部删除 |
RPOPLPUSH source destination | 移除源列表的尾部元素,并将它添加到目标列表的头部 |
BLPOP key1 key2 ... timeout | 移除并返回列表头部的元素,如果列表为空则阻塞等待 |
Redis 集合(Set)命令
命令 | 描述 |
---|---|
SADD key member1 member2 ... | 向集合添加一个或多个成员 |
SMEMBERS key | 返回集合中的所有成员 |
SISMEMBER key member | 检查成员是否存在于集合中 |
SREM key member1 member2 ... | 从集合中移除一个或多个成员 |
SCARD key | 返回集合中的成员数量 |
SPOP key | 移除并返回集合中的一个随机成员 |
SRANDMEMBER key [count] | 返回集合中的一个或多个随机成员 |
SINTER key1 key2 ... | 返回多个集合的交集 |
SUNION key1 key2 ... | 返回多个集合的并集 |
SDIFF key1 key2 ... | 返回多个集合的差集 |
SINTERSTORE destination key1 key2 ... | 计算多个集合的交集并存储结果 |
SUNIONSTORE destination key1 key2 ... | 计算多个集合的并集并存储结果 |
SDIFFSTORE destination key1 key2 ... | 计算多个集合的差集并存储结果 |
SSCAN key cursor [MATCH pattern] [COUNT count] | 迭代遍历集合中的元素 |
Redis 有序集合命令
下表列出了一些常用的 Redis 有序集合(Sorted Set)命令:
命令 | 描述 |
---|---|
ZADD key score1 member1 score2 member2 ... | 向有序集合添加一个或多个成员及其分数 |
ZRANGE key start stop [WITHSCORES] | 返回有序集合中指定索引范围的成员 |
ZRANK key member | 返回有序集合中成员的排名(从小到大) |
ZREVRANK key member | 返回有序集合中成员的排名(从大到小) |
ZREM key member1 member2 ... | 从有序集合中移除一个或多个成员 |
ZSCORE key member | 返回有序集合中成员的分数 |
ZCARD key | 返回有序集合的成员数量 |
ZCOUNT key min max | 返回有序集合中指定分数范围内的成员数量 |
ZINCRBY key increment member | 将有序集合中成员的分数增加指定的增量 |
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] | 返回指定分数范围内的成员 |
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count] | 返回指定分数范围内的成员(逆序) |
ZLEXCOUNT key min max | 返回有序集合中指定字典区间范围内的成员数量 |
ZREMRANGEBYRANK key start stop | 移除有序集合中指定索引范围内的成员 |
ZREMRANGEBYSCORE key min max | 移除有序集合中指定分数范围内的成员 |
ZSCAN key cursor [MATCH pattern] [COUNT count] | 迭代遍历有序集合中的元素 |
这些命令可用于操作和管理 Redis 中的有序集合数据类型。请注意,这只是一些常用的命令示例,Redis 支持的有序集合命令远不止这些。
网友评论