文章目录
- 1、通过客户端连接redis
- 2、查看当前数据库的key的数量
- 3、切换数据库
- 3.1、切换到1数据库
- 3.2、切换到2数据库
- 3.3、切换到默认的数据库,0数据库
- 4、当前数据库没有数据
- 5、添加键值对
- 6、查看当前库所有key
- 7、清空当前库
- 8、设置存活的秒数(例如验证码)
- 9、nx(Not Exists)参数表示当前命令中指定的key不存在才行
- 10、xx(Exists)参数表示当前命令中指定的key存在才行
- 11、把指定的value追加到key对应的原来的值后面,返回值是追加后字符串长度
- 12、直接返回字符串长度
- 13、自增1
- 14、自减1
- 15、增加多值
- 16、减少多值
- 17、从字符串中截取指定的一段,索引从0开始
- 18、从offset(从0开始的索引)开始使用value进行替换
- 19、设置key、value时指定存在秒数
- 20、新建字符串类型的键值对
- 21、一次性设置一组多个键值对
- 22、一次性指定多个key,返回它们对应的值
- 23、一次性新建多个值,但是指定的key存在才行,有一个不存在,都不成功
- 24、设置新值,同时能够将旧值返回
1、通过客户端连接redis
[root@localhost ~]# /usr/local/redis/bin/redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
2、查看当前数据库的key的数量
127.0.0.1:6379> dbsize
(integer) 0
127.0.0.1:6379>
3、切换数据库
默认有16个数据库,0到15
3.1、切换到1数据库
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]>
3.2、切换到2数据库
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]>
3.3、切换到默认的数据库,0数据库
127.0.0.1:6379[2]> select 0
OK
127.0.0.1:6379>
4、当前数据库没有数据
127.0.0.1:6379> dbsize
(integer) 0
127.0.0.1:6379>
5、添加键值对
127.0.0.1:6379> set uname jim
OK
127.0.0.1:6379> dbsize
(integer) 1
127.0.0.1:6379>
6、查看当前库所有key
127.0.0.1:6379> keys *
1) "uname"
127.0.0.1:6379>
7、清空当前库
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> dbsize
(integer) 0
127.0.0.1:6379>
8、设置存活的秒数(例如验证码)
10秒后过期
127.0.0.1:6379> set uname jim ex 10
OK
127.0.0.1:6379> get uname
"jim"
127.0.0.1:6379> get uname
"jim"
127.0.0.1:6379> get uname
(nil)
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> dbsize
(integer) 0
127.0.0.1:6379>
9、nx(Not Exists)参数表示当前命令中指定的key不存在才行
127.0.0.1:6379> set uname jim
OK
127.0.0.1:6379> get uname
"jim"
127.0.0.1:6379> set uname lucy nx
(nil)
127.0.0.1:6379>
10、xx(Exists)参数表示当前命令中指定的key存在才行
127.0.0.1:6379> keys *
1) "uname"
127.0.0.1:6379> get uname
"jim"
127.0.0.1:6379> set uname lucy xx
OK
127.0.0.1:6379> get uname
"lucy"
127.0.0.1:6379>
11、把指定的value追加到key对应的原来的值后面,返回值是追加后字符串长度
127.0.0.1:6379> keys *
1) "uname"
127.0.0.1:6379> get uname
"jim"
127.0.0.1:6379> set uname lucy xx
OK
127.0.0.1:6379> get uname
"lucy"
127.0.0.1:6379> append uname hello
(integer) 9
127.0.0.1:6379> get uname
"lucyhello"
127.0.0.1:6379>
12、直接返回字符串长度
127.0.0.1:6379> strlen uname
(integer) 9
127.0.0.1:6379>
13、自增1
127.0.0.1:6379> set age 18
OK
127.0.0.1:6379> get age
"18"
127.0.0.1:6379> incr age
(integer) 19
127.0.0.1:6379> incr age
(integer) 20
127.0.0.1:6379> incr age
(integer) 21
127.0.0.1:6379> incr age
(integer) 22
127.0.0.1:6379>
14、自减1
127.0.0.1:6379> get age
"22"
127.0.0.1:6379> decr age
(integer) 21
127.0.0.1:6379> decr age
(integer) 20
127.0.0.1:6379> decr age
(integer) 19
127.0.0.1:6379> decr age
(integer) 18
127.0.0.1:6379>
15、增加多值
127.0.0.1:6379> get age
"18"
127.0.0.1:6379> incrby age 5
(integer) 23
127.0.0.1:6379>
16、减少多值
127.0.0.1:6379> get age
"23"
127.0.0.1:6379> decrby age 10
(integer) 13
127.0.0.1:6379>
17、从字符串中截取指定的一段,索引从0开始
127.0.0.1:6379> keys *
1) "age"
2) "uname"
127.0.0.1:6379> get uname
"lucyhello"
127.0.0.1:6379> getrange uname 1 5
"ucyhe"
127.0.0.1:6379> get uname
"lucyhello"
18、从offset(从0开始的索引)开始使用value进行替换
127.0.0.1:6379> get uname
"lucyhello"
127.0.0.1:6379> setrange uname 0 hello
(integer) 9
127.0.0.1:6379> get uname
"helloello"
127.0.0.1:6379>
19、设置key、value时指定存在秒数
127.0.0.1:6379> keys *
1) "age"
2) "uname"
127.0.0.1:6379> setex address 10 USA
OK
127.0.0.1:6379> keys *
1) "age"
2) "address"
3) "uname"
127.0.0.1:6379> get address
"USA"
127.0.0.1:6379> get address
"USA"
127.0.0.1:6379> get address
"USA"
127.0.0.1:6379> get address
"USA"
127.0.0.1:6379> get address
(nil)
127.0.0.1:6379> keys *
1) "age"
2) "uname"
127.0.0.1:6379>
20、新建字符串类型的键值对
127.0.0.1:6379> keys *
1) "age"
2) "uname"
127.0.0.1:6379> setnx address usa
(integer) 1
127.0.0.1:6379> keys *
1) "age"
2) "address"
3) "uname"
127.0.0.1:6379> get address
"usa"
127.0.0.1:6379>
21、一次性设置一组多个键值对
127.0.0.1:6379> keys *
1) "age"
2) "address"
3) "uname"
127.0.0.1:6379> mset k1 v1 k2 v2 k3 v3 k4 v4
OK
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "age"
4) "address"
5) "k2"
6) "k4"
7) "uname"
127.0.0.1:6379>
22、一次性指定多个key,返回它们对应的值
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "age"
4) "address"
5) "k2"
6) "k4"
7) "uname"
127.0.0.1:6379> mget k1 k2 k3 k4
1) "v1"
2) "v2"
3) "v3"
4) "v4"
127.0.0.1:6379>
23、一次性新建多个值,但是指定的key存在才行,有一个不存在,都不成功
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "age"
4) "address"
5) "k2"
6) "k4"
7) "uname"
127.0.0.1:6379> msetnx k1 v9 k6 v8 k3 v99
(integer) 0
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "age"
4) "address"
5) "k2"
6) "k4"
7) "uname"
127.0.0.1:6379>
24、设置新值,同时能够将旧值返回
127.0.0.1:6379> keys *
1) "k1"
2) "k3"
3) "age"
4) "address"
5) "k2"
6) "k4"
7) "uname"
127.0.0.1:6379> getset k1 v999
"v1"
127.0.0.1:6379> get k1
"v999"
127.0.0.1:6379>