一、连接到远程服务
语法
redis-cli -h host -p port -a password
例如:连接到主机为10.103.107.91,端口为 6379 ,密码为 空 的 redis 服务上
redis-cli -h 10.103.107.91 -p 6379 -a ""
二、跳转到指定数据库
语法
select 数据库名
例如:使用数据库 2 (redis默认使用数据库 0)
10.103.107.91:6379> select 2
OK
三、显示所有键key
语法: keys *
10.103.107.91:6379[2]> keys *
1) "taoist_LoadStatisticsData"
2) "dtquery_active_wait_job"
3) "agentrescost"
4) "edw_sucang"
5) "edw_LoadStatisticsData:dw_analysis"
6) "10.103.108.60"
7) "DTQUERYPRESTO"
8) "10.103.108.60_active_thread"
四、获取键的值
语法:get key
10.103.107.91:6379[2]> get best
(nil)
10.103.107.91:6379[2]> get best1
"fei"
五、键的过期时间
获取键的过期时间
语法:ttl key
ttl命令返回值是键的剩余时间(单位是秒)。当键不存在时,ttl命令会返回-2。没有为键设置过期时间(即永久存在,这是建立一个键后的默认情况)返回-1。
ttl session_uid_1691
:1273
设置键的过期时间
语法:EXPIRE key time
EXPIRE session_uid_1691 2000
:1
六、查看键是否存在
语法:exists key (0表示不存在,1表示存在)
10.103.107.91:6379[2]> exists best1
(integer) 0
10.103.107.91:6379[2]> exists best
(integer) 1
七、重命名键的名称
语法: RENAME OLD_KEY_NAME NEW_KEY_NAME
10.103.107.91:6379[2]> rename best best1
OK
renamenx命令用于在新的 key 不存在时修改 key 的名称
改成功时,返回 1 。 如果 NEW_KEY_NAME 已经存在,返回 0 。
语法:renamenx old_key_name new_key_name
10.103.107.91:6379[2]> renamenx best1 best2
(integer) 0
10.103.107.91:6379[2]> renamenx best1 best3
(integer) 1
八、返回 key 所储存的值的类型
返回 key 的数据类型,数据类型有:
none (key不存在),string (字符串),list (列表)
set (集合),zset (有序集),hash (哈希表)
语法:TYPE KEY_NAME
10.103.107.91:6379[2]> type best3
string
九、删除key
语法:del key
10.103.107.91:6379[2]> del best2 best3
(integer) 2
十、插入键
语法:set key value
10.103.107.91:6379[2]> set best fei
OK
十一、查看redis服务信息
语法:info
十二、redis hash操作
Redis hash 是一个string类型的field和value的映射表(FIELD称为域)
1、插入hash类型的key
语法:HSET KEY_NAME FIELD VALUE
10.103.107.91:6379[2]> hset best fei1 "yong1"
(integer) 1
10.103.107.91:6379[2]> hset best fei2 "yong2"
(integer) 1
10.103.107.91:6379[2]> type best
hash
语法:HSETNX KEY_NAME FIELD VALUE
如果哈希表不存在,一个新的哈希表被创建并进行 HSET 操作。
如果字段已经存在于哈希表中,操作无效。
如果 key 不存在,一个新哈希表被创建并执行 HSETNX 命令。
设置成功,返回 1 。 如果给定字段已经存在且没有操作被执行,返回 0 。
10.103.107.91:6379[2]> hsetnx best fei3 "yong3"
(integer) 1
10.103.107.91:6379[2]> hsetnx best fei3 "yong33"
(integer) 0
2、获取域值
10.103.107.91:6379[2]> hget best fei3
"yong3"
3、获取所有域名
语法:HVALS KEY_NAME
10.103.107.91:6379[2]> hvals best
1) "yong1"
2) "yong2"
3) "yong3"
4、返回哈希表中所有的字段和值
语法:HGETALL KEY_NAME
10.103.107.91:6379[2]> hgetall best
1) "fei1"
2) "yong1"
3) "fei2"
4) "yong2"
5) "fei3"
6) "yong3"
5、获取哈希表中字段的数量
10.103.107.91:6379[2]> hlen best
(integer) 3
6、删除一个或多个哈希表字段
语法:HDEL key field1 [field2]
十三、key移动到指定库
命令用于将当前数据库的 key 移动到给定的数据库 db 当中
10.103.107.91:6379[2]> move best 0
(integer) 1
十四、清空redis
FLUSHALL