Redis: http://redis.cn/
1.下载: wget http://download.redis.io/releases/redis-5.0.3.tar.gz
安装步骤:
tar zxvf redis-5.0.3.tar.gz
sudo mkdir /usr/local/redis/
sudo mv redis-5.0.3/* /usr/local/redis/
cd /usr/local/redis/
sudo make
sudo make install
2.运行
- 启动服务器:redis-server
- 启动客户端:redis-cli
3.基本配置
- 在源文件/usr/local/redis目录下,文件redis.conf为配置文件
- 绑定地址:如果需要远程访问,可将此行注释,将protected-mode改成no
- #bind 127.0.0.1
- protected-mode no
- 推荐改为yes,以守护进程运行
- daemonize yes
- 数据文件存储路径dir的默认值为./,表示当前目录,推荐改为:dir /var/lib/redis/
- 日志文件默认值为‘’,推荐改为:logfile /var/log/redis/redis-server.log
- 主从复制,暂时不配置:slaveof
4.使用配置文件方式启动
- 直接运行redis-server会直接运行,阻塞当前终端
sudo cp /usr/local/redis/redis.conf /etc/redis/
推荐指定配置文件启动:sudo redis-server /etc/redis/redis.conf
停止redis服务:
ps ajx|grep redis
sudo kill -9 redis的进程id
查看6379端口号是否被占用:sudo netstat -lntp | grep 6379
1.string
-
set、setex、mset、append、get、mget、key
-
最大能存储512MB数据
-
设置键值:set key value 一个
-
MSET key value [key value …] 多个
-
获取 GET key ;MGET key [key …]
2.hash
- hset、hmset、hkeys、hget、hmget、hvals、hdel
-设置单个属性:HSET key field value
- 设置多个属性:HMSET key field value [field value …]
- 获取
- 获取一个属性的值:HGET key field
- 获取多个属性的值:HMGET key field [field …]
- 获取所有属性和值:HGETALL key
- 获取所有的属性:HKEYS key
- 返回包含属性的个数:HLEN key
- 获取所有值:HVALS key
- 删除属性及值:HDEL key field [field …]
- 返回值的字符串长度:HSTRLEN key field
3.list
-
lpush、rpush、linsert、lrange、lset、lrem
-
在头部插入数据:LPUSH key value [value …]
-
在尾部插入数据:RPUSH key value [value …]
-
在一个元素的前|后插入新元素:LINSERT key BEFORE|AFTER pivot value
-
LRANGE key start stop
-
LTRIM key start stop
-
返回存储在 key 里的list的长度:LLEN key
-
返回列表里索引对应的元素:LINDEX key index
4.set
-
sadd、smembers、srem
-
添加元素:SADD key member [member …]
-
返回key集合所有的元素:SMEMBERS key
-
返回集合元素个数:SCARD key
5.zset
- zadd、zrange、zrangebyscore、zscore、zrem、zremrangebyscore
- 添加:ZADD key score member [score member …]
- 返回指定范围内的元素:ZRANGE key start stop
- 返回元素个数:ZCARD key
- 返回有序集key中,score值在min和max之间的成员:ZCOUNT key min max
- 返回有序集key中,成员member的score值:ZSCORE key member
发布与订阅
-
- subscribe,表示订阅成功2. unsubscribe,表示取消订阅成功3. message,表示其它终端发布消息
-
如果第一部分的值为subscribe,则第二部分是频道,第三部分是现在订阅的频道的数量
-
如果第一部分的值为unsubscribe,则第二部分是频道,第三部分是现在订阅的频道的数量,如果为0则表示当前没有订阅任何频道,当在Pub/Sub以外状态,客户端可以发出任何redis命令
-
如果第一部分的值为message,则第二部分是来源频道的名称,第三部分是消息的内容
-
订阅:SUBSCRIBE 频道名称 [频道名称 …]
-
取消订阅 ,如果不写参数,表示取消所有订阅
-
UNSUBSCRIBE 频道名称 [频道名称 …]
-
发布:PUBLISH 频道 消息
集群:
- redis集群搭建http://www.cnblogs.com/wuxl360/p/5920330.html
- [Python]搭建redis集群http://blog.5ibc.net/p/51020.html
与python交互
- pip install redis
- sr = StrictRedis(host=‘localhost’, port=6379, db=0)