服务端启动
指令 ./redis-server
服务端完整启动指令
指令 ./redis-server path/to/redis.conf
服务端关闭
指令 pkill -9 redis
客户端启动
指令 ./redis-cli
检测redis服务是否启动
指令 ping
返回 PONG
则服务可用
127.0.0.1:6379> ping
PONG
客户端完整启动指令 redis-cli -h host -p port -a password
选择数据库(0-15)
127.0.0.1:6379> select 8
OK
127.0.0.1:6379[8]>
获取所有的key_name
指令 keys *
设置指定的key_name
值
指令 set key_name value
127.0.0.1:6379[8]> set name fuqiang
OK
获取指定的key_name
值
指令 get key_name
127.0.0.1:6379[8]> get name
"fuqiang"
设置指定的key_name
并设置过期时间 ex(秒) px(毫秒)
指令 set key_name value expression[ex second | px milli second]
127.0.0.1:6379[8]> set name 20 px 3000
OK
127.0.0.1:6379[8]> set name 20 ex 3
OK
返回指定key_name
的值自增1
指令 incr key_name
127.0.0.1:6379[8]> set age 20
OK
127.0.0.1:6379[8]> incr age
(integer) 21
返回指定key_name
的值自减1
指令 decr key_name
127.0.0.1:6379[8]> get age
"21"
127.0.0.1:6379[8]> decr age
(integer) 20
返回指定key_name
的值的长度
指令 strlen key_name
127.0.0.1:6379[8]> strlen name
(integer) 7
返回字符串的子串
的值(包括首尾)
指令 getrange key_name start stop
127.0.0.1:6379[8]> getrange name 0 2
"fuq"
若指定的key_name
不存在时,为key_name
设置指定的值。设置成功返回1
,设置失败返回0
指令 setnx key_name value
127.0.0.1:6379[8]> setnx name fu
(integer) 0
127.0.0.1:6379[8]> setnx address beijing
(integer) 1
设置指定的key_name
的值
指令 lpush key_name value
从左侧依次添加,第一个添加的元素是整个列表的最后一个元素
指令 rpush key_name value
从右侧依次添加,第一个添加的元素是整个列表的第一个元素
127.0.0.1:6379[8]> lpush course python andriod java h5
(integer) 4
127.0.0.1:6379[8]>
获取列表长度
指令 llen key_name
127.0.0.1:6379[8]> llen course
(integer) 4
获取指定的key_name
的区间值,下标的取值范围是在0到长度减1
指令 lrange key_name start stop
127.0.0.1:6379[8]> lrange course 0 3
1) "h5"
2) "java"
3) "andriod"
4) "python"
删除列表中的首尾数据
lpop key_name
从左侧删除第一个元素
rpop key_name
从右侧删除第一个元素
127.0.0.1:6379[8]> lpop course
"h6"
127.0.0.1:6379[8]> rpop course
"python"
删除列表中指定的数据
指令 lrem key_name count value
如果 count
为正值,则从count开始,自左向右找到value
,删除。
如果 count
为负值,则从count开始,自右向左找到value
,删除。
count
的取值范围 - llen key
到 -1
和 0
到 llen key -1
127.0.0.1:6379[8]> lrange course 0 4
1) "h5"
2) "java"
3) "andriod"
4) "python"
5) "java"
127.0.0.1:6379[8]> lrem course -1 java
(integer) 1
127.0.0.1:6379[8]> lrange course 0 3
1) "h5"
2) "java"
3) "andriod"
4) "python"
设置指定的key
如果field存在,则覆盖其原值。
指令 hmset key_name filed_name value [field1 value1 ...]
127.0.0.1:6379[8]> hmset cart_1 yagao 1 xiangzao 2
OK
127.0.0.1:6379[8]> hmset cart_2 yashua 1 yatong 1 jingzi 1
OK
获取指定的key
所有的键值信息
指令 hgetall key_name
127.0.0.1:6379[8]> hgetall cart_1
1) "yagao"
2) "20"
3) "xiangzao"
4) "2"
127.0.0.1:6379[8]>
获取指定的 key_name
所有的 filed
字段
指令 hkeys key_name
127.0.0.1:6379[8]> hkeys cart_1
1) "yagao"
2) "xiangzao"
127.0.0.1:6379[8]> hkeys cart_2
1) "yashua"
2) "yatong"
3) "jingzi"
获取指定的 key_name
所有的 value
值
指令 hvals key_name
127.0.0.1:6379[8]> hvals cart_1
1) "1"
2) "2"
127.0.0.1:6379[8]> hvals cart_2
1) "1"
2) "1"
3) "1"
获取指定的key
的 field
的值
指令 hget key_name field_name
127.0.0.1:6379[8]> hget cart_1 yagao
"1"
获取指定的key_name
所有字段的个数
指令 hlen key_name
127.0.0.1:6379[8]> hlen cart_1
(integer) 2
127.0.0.1:6379[8]> hlen cart_2
(integer) 3
127.0.0.1:6379[8]>
设置指定的key_name
如果field不存在,设置成功。否则,设置失败。
指令 hsetnx key_name field_name value
127.0.0.1:6379[8]> hsetnx cart_1 yagao 50
(integer) 0
127.0.0.1:6379[8]>
删除指定的字段
指令 hdel key_name field_name
127.0.0.1:6379[8]> hdel cart_1 yagao
(integer) 1
127.0.0.1:6379[8]> hkeys cart_1
1) "xiangzao"
判断指定 key_name
下的字段是否存在,若存在,返回1
,否则,返回0
;
指令 hexists key_name filed_name
127.0.0.1:6379[8]> hexists cart_1 yagao
(integer) 0
127.0.0.1:6379[8]> hexists cart_1 xiangzao
(integer) 1
添加指定key_name
值,如添加的元素存在,则不添加。
指令 sadd key_name value [value1 value2 ..]
127.0.0.1:6379[8]> sadd course mongo redis memcache
(integer) 3
获取指定的 key_name
的所有元素
指令 smembers key_name
127.0.0.1:6379[8]> smembers course
1) "redis"
2) "mongo"
3) "memcache"
获取集合长度
指令 scard key_name
127.0.0.1:6379[8]> scard course
(integer) 3
删除指定 key_name
的元素
指令 hpop key_name [count]
count 是删除的个数
127.0.0.1:6379[8]> spop course
"memcache"
127.0.0.1:6379[8]> spop course 2
1) "redis"
2) "mongo"
127.0.0.1:6379[8]> smembers course
(empty list or set)
判断一个元素是否属于key_name
集合
指令 sismember key_name value
127.0.0.1:6379[8]> sismember course python
(integer) 0
127.0.0.1:6379[8]> sismember course memcache
(integer) 1
添加 key_name
集合元素
指令 zadd key_name score member [score1 member1 ...]
127.0.0.1:6379[8]> zadd course 1 python
(integer) 1
127.0.0.1:6379[8]> zadd course 2 java
(integer) 1
127.0.0.1:6379[8]> zadd course 2 java 3 h5
(integer) 1
获取有序集合的长度
指令 zcard key_name
127.0.0.1:6379[8]> zcard course
(integer) 3
获取有序集合的元素
指令 zrange key_name start stop
127.0.0.1:6379[8]> zrange course 0 2
1) "python"
2) "h5"
3) "java"
获取指定元素的索引
指令 zrank key_name memeber
127.0.0.1:6379[8]> zrank course h5
(integer) 1
删除指定的元素
指令 zrem key_name member
127.0.0.1:6379[8]> zrem course java
(integer) 1
获取成员的分值
指令 zscore key_name member
127.0.0.1:6379[8]> zscore course h5
"3"
获取 key_name
在指定分值之间的个数
指令 zcount key_name min max
127.0.0.1:6379[8]> zcount course 0 10
(integer) 2
原文:https://www.cnblogs.com/wuxiaoshi/p/12319167.html