1. keys键操作
exists key 测试指定key是否存在
del key1 key2 --- keyn 删除给定key
type key 返回给定key的value类型
keys pattern 返回匹配指定模式的所有key
rename oldkey newkey 改名字
dbsize 返回当前数据库的key数量
expire key seconds 为key指定过期时间
ttl key 返回key的剩余过期秒数
select db- index 选择数据库
move key db-index 将key从当前数据库移动到指定数据库
flushdb 删除当前数据库中所有key
flushall 删除所有数据库中的所有key
2. string类型操作
set key value 设置key对应的值为string类型的value
mset key1 value1 ... keyn valuen 一次设置多个key的值
mgset key1 key2 ... keyn 一次获取多个key的值
incr key 对key的值做加加操作,并返回新的值
decr key 同上,但是做的是减减操作
incrby key integer 同incr,加指定值
decrby key integer 同decr,减指定值
append key value 给指定key的字符串值追加value
substr key start end 返回截取过的key的字符串值
3. list 类型操作
lpush key string 在key 对应list的头部添加字符串元素
rpop key 从list的尾部删除元素,并返回删除元素
llen key 返回 key 对应list长度,key不存在返回0,如果key对应类型不是list 返回错误
lrange key start end 返回指定区间内元素,下标从0开始
lpop key 从list的头部删除元素,并返回删除元素
ltrim key start end 截取list,保留指定区间内元素
4. set类型操作
sadd key member 添加一个string元素到key对应的set集合中,成功返回1,如果元素已经在集合中返回0,key对应的set不存在返回错误
srem key member [member] 从key对应set中移除给定元素,成功返回1
smove p1 p2 member 从p1对应set中移除member并添加到p2对应set中
scard key 返回set的元素个数
sismember key member 判断member是否在set中
sinter key1 key2 ... keyN 返回所以给定key的交集
sunion key1 key2 ... keyN 返回所有给定key的并集
sdiff key1 key2 ... keyN 返回所有给定key的差集
5. sort set 排序集合类型
和set一样 sorted set 也是string类型元素的集合
不同的是每个元素都会关联一个权
通过权值可以有序的获取集合中的元素
zadd key scrore member 添加元素到集合,元素在集合中存在则更新对应score
zren key member 删除指定元素,1. 表示成功,如果元素不存在返回0
zincrby key incr member 按照incr复读增加对应 member 的score值,返回score值
zrank key member 返回指定元素在集合中的排名(下标),集合中元素是按score从小到大排序的
zrevrank key member 同上,但是集合中元素是按score从大到小排序
zrange key start end 类似lrange 操作从集合中去指定区间的元素,返回的是有序结果
zrevrange key start end 同上,返回结果是按score逆序的
zcard key 返回集合中元素个数
zscore key element 返回给定元素对应的score
zremrangebyrank key min max 删除集合中排名在给定区间的元素
6. hash类型
hset key field value 设置hash field 为指定值,如果key不存在,则先创建
hget key field 获取指定的hash field
hmset key field1....fieldN 获取全部指定hash filed
hmset key field1 value1 ... fieldN valueN 同时设置hash 的多个 field
hincrby key field integer 将指定的hash filed加上给定值
hexists key field 测试指定field是否存在
hdel key field 删除指定的hash field
hlen key 返回指定hash的field的数量
hkeys key 返回hash的索引field
hvals key 返回hash的所有value
hgetall key 返回hash的所有filed和value
redis的持久化方式
1. snapshotting(快照)也是默认方式
默认文件名为dump.rdb
save 900 1#900秒内如果超过1个key被修改,则发起快照保存
save 300 10 #300秒超过10个key被修改,发起快照保存
save 60 10000 #60秒超过10000个key被修改,发起快照保存
2.append-only file(缩写AOF)的方式
本质: 把用户执行的每个"写"指令(添加,修改,删除)都备份到文件中,还原数据的时候就是执行具体写指令而已.
开启AOF持久化(会情况redis内部的数据)
会将每一个收到的写命令都通过write函数追加到文件中当redis重启时会通过重新执行文件中保存的写命令赖在内存中重建整个数据库内容
redis的持久化相关指令
bgsave 异步保存数据到磁盘(快照保存)
lastsave 返回上次成功保存到磁盘的unix时间戳
shutdown 同步保存到服务器并关闭redis服务器
bgrewriteaof 当日志文件过长时优化AOF日志文件存储
配置redis.conf文件,称为192.168.39.159的从服务器.之后文件保存退出,杀死旧的redis进程
php与redis结合
安装php的redis扩展
phpredis和autoconf-2.62
php中操作redis