Redis中,针对不同的数据类型有不同的操作命令。除了他们特定的命令外还有通用指令。
通用指令分为两各部分:对key的命令
和对db(数据库)的命令
。
对key的指令属于通用指令很好理解。毕竟key是全局性的约束(唯一、string型)。
对db的约束又是个什么鬼啊(ˉ▽ˉ;)…,简而言之就是Redis并不是一个单体数据库,它是由16个数据库(个人认为叫数据区更好)组合而成的,所以会有对数据库的操作指令。像你要用哪个数据库啊,如何切换,如何退出。。。
1、key相关命令
注意key在Redis中只能是string类型的。
基本操作
#基本操作无非是:
#增
#,但是key不是数据,只有当set数据时,可以才能伴随新增。
#删
del key #删除指定key(其实也就是相当于删除指定数据)
#改
rename key newkey #重命名key为newkey,如果newkey已经存在则会将newkey顶替。
renamenx key newkey #当newkey不存在的时候,修改key的名字为newkey。
#查
exists key #判断指定key是否存在
type key #获取key对应数据的类型
keys pattern #根据所给的匹配形式pattern查询key
key的时效性操作
时效性,简单来说就是什么时间内有效。
expire key seconds #给key设置有效时间为seconds秒
pexpire key milliseconds #给key设置有效时间为milliseconds毫秒
expireat key timestamp #给key是指有效时间到timestamp(秒为单位)时间戳
pexpireat key milliseconds-timestamp #给key是指有效时间到timestamp(毫秒为单位)时间戳
ttl key #查询key有效时间还剩多长(单位s) 失效的数据会返回-2
pttl key #查询key有效时间还剩多长(单位ms) 如果数据永久有效,将会返回-1
persist key #将key设置成永久有效
2、db相关命令
**问题:**在Redis中,规定key是不可重复的,但在实际开发过程中,一个项目一般由多人负责,而且不同模块也可能会导致key的命名重复。
**优化:**为了避免key重名,Redis分为16个db来提供分模块存储数据,各个db是独立的。
相关操作命令
select index #切换index号数据库
quit #退出客户端
ping [message] #ping一下服务端(用来测试是否连通,可以携带信息,如果连通服务器返回你携带的信息)
echo message #与ping一样用来测试是否连通,必须携带信息