卑微小吴励志写博客第24天。
前面主要学习了redis的五种数据类型,string,hash,list,set,sorted_set。今天学习一下redis的通用指令。
key的通用指令
key的基本操作
删除指定key
- del key
获取key是否存在
- exists key
获取key的类型
- type key
key的扩展操作
时效性操作
为指定key设置有效时期
- expire key seconds
- pexpire key milliseconds
- expireat key timestamp
- pexpireat key milliseconds-timestamp
获取key的有效时间
- ttl key
- pttl key
切换key从时效性到永久性
- persist key
注意:ttl返回的要么是-2,代表没有key值,-1代表永久有效(没有设置有效期),或者返回可以的有效时间。
扩展操作之查询操作
查询key
- keys pattern
查询模式规则
key的其他操作
为key改名
- rename key newkey
- renamenx key newkey
注意:下面的这个命令是不存在才改名,存在则返回-1。上面的rename会覆盖,在使用的时候不要把别人的key值覆盖了。
对所有的key进行排序
- sort
- 排序只能是list,set和sorted_set类型的key。
其他key操作
- help @generic
数据库的通用指令
问题:key的重复问题?
key是有程序员定义的,并且随着使用的增多,会存在大量的key,很容易造成key的重复。并且大量的key放在一起,也很混杂。redis有什么解决方案?
- redis为每个服务提供有16个数据库,标号为0-15。
- 每个数据库之间的数据相互独立。
-
db基本操作
切换数据库
- select index
注意:默认是存在0号数据库中,可以通过自己对redis设计,用不同的数据库存放不同的东西,具体根据项目业务来。
其他操作
- quit
- ping
- echo message
db相关操作
数据移动
- move key db
如果移到的数据库中存在,则移动失败。
数据清除
- flushdb 清除当前数据库
- flushall 清除所有数据库(慎用)
- dbsize 查看数据库中数据量