redis

Linux下安装配置Redis

1.下载redis
wget http://download.redis.io/releases/redis-2.8.9.tar.gz
2.cd redis-2.8.9
3.安装redis
make
cd src
make install
4.修改配置
cp redis.conf /etc/redis.conf
vim /etc/redis.conf

daemonize yes #以守护线程模式启动redis,默认是no
port 6379 #端口号
timeout 0 #超时时间
tcp-keepalive 0 #tcp连接断开时间
loglevel notice #日志级别
logfile /var/log/redis/log.log #日志位置
dbfilename dump.rdb #数据库文件名
dir /var/lib/redis/ #数据库目录
slaveof 127.0.0.1 6380 #指定主服务位置

1.下载phpredis
wget https://github.com/nicolasff/phpredis/archive/master.zip
2.解压
unzip master.zip
3.cd phpredis-master
4.phpize(若提示找不到命令,先安装php-devel [yum install php-devel])
5.安装phpredis扩展
make && make install
6.增加php配置,启用redis模块 vim /etc/php.d/redis.ini
;Enable redis extension module
extension=redis.so


redis数据类型 string hash list set zset
string

set name aiddroid #设置
setnx name allen #不存在则设置
setex sex 10 male #设置过期时间
mset name aiddroid age 20 #批量设置
msetnx name allen age 26 #不存在则批量设置
mget name age #批量获取
getset age 20 #获取旧值,设置新值
incr age #递增1
incrby age 8 #递增8
decr age #递减
decrby age 8 #递减8
append name Hu #附加字串
strlen name #获取字串长度

hash

hset user:aiddroid name allen #设置hash
hget user:aiddroid name #获取hash
hmset user:aiddroid name allen age 20 #批量设置
hincrby user:aiddroid age 1 #递增1
hexist user:aiddroid sex #是否存在字段
hdel user:aiddroid sex #删除字段
hkeys user:aiddroid #获取所有键
hgetall user:aiddroid #获取所有键值对

list

lpush hobby reading #左插入
rpush hobby dancing #右插入
lrange hobby 0 -1 #取出list
linsert hobby before dancing jogging #指定位置插入
lset hobby 0 hiking #设置指定位置值
lrem hobby 1 "hiking" #删除一个值
ltrim hobby 1 2 #保留 12,其它删除
lpop hobby #弹出第一个元素,类似于array_pop
llen hobby #获取长度

无序集合set

sadd hobby reading #添加set元素,无法添加重复元素
smembers hobby #获取set成员
srem hobby reading #删除set元素
spop hobby #随机弹出一个set元素
sdiff hobby1 hobby2 #获取set差集,hobby1-hobby2
sdiffstore hobby3 hobby1 hobby2 #获取差集并存储
sinter hobby1 hobby2 #获取交集
sinterstore hobby3 hobby1 hobby2 #获取交集并存储
sunion hobby1 hobby2 #获取并集
sunionstore hobby3 hobby1 hobby2 #获取并集并存储
smove hobby1 hobby2 reading #移动集合元素
scard hobby #获取集合元素
sismember hobby dancing #判断是否集合元素
srandmember hobby #获取随机集合元素

常用数据操作命令

select 0 #切换到数据库0
keys * #获取所有key
exists name #判断key是否存在
del name #删除key
expire nam 10 #设置key有效期
ttl name #获取key有效期
persist name #取消key过期时间,即永不过期
rename name myname #修改key名称

事务

multi #开始事务
set name aiddroid
set age 20
discard #取消事务操作
exec #执行事务处理

常用服务器命令

info #获取服务信息
flushdb #清空当前数据库
flushall #清空所有数据库

auth PASSWORD #获取授权 /etc/redis.conf中配置requirepassword

消息订阅

subscribe channel1 #订阅频道
publish channel1 hello #发布消息到频道

								
			
%1 $ S

发表回复