在linux安装redis
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
1下载reids压缩包解压
2 运行make进行编译
3 make install编译安装
安装完成后默认在 /usr/local/bin 目录中可以找的redis的服务端和客户端运行文件,redis则安装在local目录中
修改为后台进程启动(./bin/redis-server& ./redis.conf 方式运行也可以为后台进程运行
)
在reids.conf文件中 将daemonize 的no改为yes
比较重要的配置选项
根据规定的配置文件启动 redis
在bin目录中创建myconf文件,将redis.conf文件复制一份到myconf中可以自由修改
根据自己的配置文件启动 reids-server myconf/redis.conf
reids性能测试工具
redis-benchmark 是redis的性能测试工具
redis-benchmark -h 127.0.0.1 -p 6379 -c 50 -n 10000
reids默认有16个数据看在配置文件中可以查看
select [index]切换数据库
flushdb 清空当前数据库
flushall 清空所有数据
ps -aux | grep redis 或者ps -ef | grep redis reids查看reids进程是否启动
key相关命令
exists key 查看key是否存在
move key db 移除对应的key,db代表那个库db的值要是从1开始自增的,select的选择库下标是从0开始自增的
expier key time 对已经存在的key设置过期时间
ttl key 查看key的过期时间有多少(time to l)
type key 查看key的数据类型
string操作相关命令
append key sring 向key的值中后面追加字符串
strlen key 计算key值的长度
incr key 给key的值自增1
decr key 给key的值减1
incrby key increment 给key增加对应的长度,increment为长度大小
decrby key increment 给key减少对应的长度
getrange key start end 获取key范围内的值
setex key secend vlaue 当前key存在才 设置过期时间和值
setnx key value 当key不存在才设置,不然返回0
mset key1 value1[ key2 value2] 批量设置值
mget key1 key2 key3 批量获取值
msetnx key value [key value ...] 批量设置key,是原子性操作
getset 先设置值再取值,放回上次设置的值
list操作命令
lpush key value [value ] 从左边插入队列
rpush key value [value] 从右边插入队列
lpop key 从队列左边移除
rpop key 从队列右边移除
lrange key start stop 从左边取出队列
lindex key index 获取队列某个下标的值
llen key 获取队列的长度
lrem key count value 移除队列中的值,count移除的数量
ltrim key start stop 裁剪队列中的值
rpoplpush source destination 将列表的最后一个元素移动到新的队列中
lset key index value 修改队列中指定下标的值,这个队列和对应的下标必须存在
linsert key BEFORE|AFTER pivot value 将值插入到列表中某个元素的前面或者后面
set操作命令
sadd key member [member] 向集合中添加值,重复的member只会添加一次
srem key member [member] 移除集合中的值
smembers key 获取集合中的所有值
sismember key member 查看member成员是不是在集合key中
scard key 获取集合中值的个数
srandmember key [count] 从集合中随机获取值,count代表获取的个数
spop key [count] 随机移除一个或者多个值
smove source destination member 将结合中的某个成员移到另外的集合中
sdiff key1 key2 [key] 集合的差集
sinter key1 key2 [key] 集合的交集
sunion key [key ...] 集合的并集
hash操作命令
hset key field value 添加值
hget key field 获取值
hmset key filed vlalue [field value] 同时设置多个值
hmget key field field 同时获取多个值
hgetall key 获取所有的值
hdel key field [field ...] 删除字段值
hlen key 获取hash长度
hexists key field 判断hash中某个字段是否存在
hkeys key 获取所有的key
hvals key 获取所有的value
hincrby key field increment 给某个字段值自增值,如果要减少increment值可以为负数
hsetnx key field value 当某个字段不存在时设置
zset操作命令
zadd key score member [score member ...] 添加集合,score为集合的序号
zrange key start stop [WITHSCORES] 获取集合中对应位置的值
zrangebyscore key min max [WITHSCORES] [LIMIT offset count] 根据score值排序,可以用-inf表示无穷小+inf表示无穷大来给所有值排序
zrem key member [member ...] 移除集合中元素
zcard ket 获取集合有多少元素
zrevrange key start stop [WITHSCORES] 获取集合中某个位置的值,从大到小排序
zcount key min max 统计某个区间值的个数