Redis是一个开源的使用ANSI C 语言编写、支持网络、同memcache相比在Redis下可以实现基于内存亦可持久化的日志型、Key-Value 类型的NoSQL数据库,且在Redis中Key的类型也更为丰富。所以较为广泛的在生产环境中使用,在这里就说一说Redis中Key相关的常用指令。
首先,先要说明下在Redis下Key,Redis的key是字符串类型,但是key 中不能包括边界字符(“”),由于key 不是binary safe的字符串,所以像”my key”和”mykey\n”这样包含空格和换行的key 是不允许的,所以建议在使用的时候不要使你的Key的名字太过复杂。在redis下的Vaule提供五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及sorted set(有序集合)。
其中Redis的系统管理指令如下:
PING 如果redis服务器存活缺省返回PONG。
DBSIZE 返回当前数据库 key的数量。
INFO 返回当前 redis 服务器状态和一些统计信息。
MONITOR 实时监听并返回redis服务器接收到的所有请求信息。
SHUTDOWN 把数据同步保存到磁盘上,并关闭redis服务。
CONFIG GET parameter 获取一个 redis配置参数信息。(个别参数可能无法获取)
CONFIG SET parameter value 设置一个 redis配置参数信息。(个别参数可能无法获取)
CONFIG RESETSTAT 重置 INFO 命令的统计信息。(重置包括:Keyspace 命中数、Keyspace 错误数、处理命令数,接收连接数、过期key 数)
DEBUG OBJECT key 获取一个 key 的调试信息。
DEBUG SEGFAULT 制造一次 redis 服务崩溃。
######以下为危险操作,在使用时都不会失败,请谨慎使用##########
FLUSHDB 删除当前数据库中所有 key。
FLUSHALL 删除全部数据库中所有 key。
Redis的常用对Key操作指令如下:
exits key 检测指定key 是否存在,返回 1表示存在,0 不存在
del key1 key2 …… keyN 删除给定 key,返回删除 key 的数目,0表示给定 key都不存在
type key 返回给定 key值的类型。返回 none 表示 key不存在,string字符类型,list 链表类型set 无序集合类型……
keys pattern 返回匹配指定模式的所有 key
randomkey 返回从当前数据库中随机选择的一个key,如果当前数据库是空的,返回空串
rename oldkey newkey 重命名一个key,如果newkey存在,将会被覆盖,返回 1 表示成功,0失败。可能是oldkey 不存在或者和newkey相同。
renamenx oldkey new