redis-基础,设计原则

来源:互联网 发布:破解java手机游戏 编辑:程序博客网 时间:2024/06/05 05:43

flushdb:刷新db,清空
pkill -9 redis:杀死redis进程
redis-benchmark -n 1000:会执行1000个命令
redis-benchmark -h:帮助文档
redis-check-dump rdb文件夹:检测rdb是否有问题
ps aux|grep redis $ 查到redis的进程

通用key
set key value
get key
keys patten 查询相应的key
keys * :通配多个字符
keys keyName:精确查
keys key*:模糊查询
keys key[na]:通配括号内某一个字符,key[a-c]会匹配key[a]~key[c]
keys ke?e:通配单个字符
keys \? :匹配字符?,用于转义符号
randomkey:返回随机key
type site:返回key类型
exists key:判断key是否存在(0false\1true)
del keyName…keyN:删除key
rename Key newKey:key改名,重名会覆盖
renamenx key newKey:存在不改,不存在才改名。
select 编号:选择数据库,默认0号数据库
move key dbID:key移动到dbID号数据库中
ttl key:查询key声明周期,返回秒。不存在/已过期/不过期的key返回-1,2.8版本,不存在返回-2
expire key 整型值:设置生命周期,秒为单位
pttl/pexpire :以毫秒为单位设置
persist key:永久有效

==================key设计原则================
1:表名转换为key前缀 如tag:
2:放用于区分key的字段,对应sql中主键的列名。如:userId
3:主键值,如1,2,3
4:存储列名
set user:id:1:name lisi
set user:id:1:sex male
set user:id:1:mail 163@qq.com

///////
set book:id:6:title java
set book:id:7:title oracle
set book:id:8:title dnf

sadd tag:php 5
sadd tag:java 6
sadd tag:oracle 7 8 6

//查询既有oracle标签又有java标签的书编号
sinter tag:oracle tag:java
//有java标签或者php标签的书
sunion tag:java tag:php
//查询oracle但是不含有java的书
sdiff tag:oracle tag:java
//根据其他信息查询,冗余信息维护
name–>id
set user:id:1:name lisi
set user:name:lisi:id 1
get user:name:lisi:id

0 0
原创粉丝点击