请参考视频:redis教程
目录
3.1redis中常用命令
- keys * 获取所有的值
- keys a* 获取所有以a开头的值
- keys a??获取以a开头并且长度为3位的值
- del key :删除该键对应的值
- type key:显示改键的类型
- rename key newkey 为key重命名为newkey
- expire key ex 100 设置键的生存时间
- flushall:清空所有的库
- flushdb:情况当前库
- uuid:随机产生不同的码
3.2redis与Python的交互
-
安装:pip install redis==3.3.5
-
连接:
import redis r=redis.Redis(host='10.0.102.67',port=6379,db=0) print(r)
-
RtrictRedis对象与python的交互
import redis r=redis.StrictRedis(host='106.13.115.64',port=6379,db=0) print(r) r.set('name1','gfb1') r.set('name2','gfb2') print(r.get('name1')) print(r.get('name2'))
-
StrictRedis对象方法
string:set、setex、mset、append、get、mget、key、delete keys:exists、type、expire、getrange、ttl hash:hset、hmset、hkset、hmget、hvals、hdel list:lpush、rpush、linsert、lrange、lset、lrem set:sadd、smembers、srem zset:zadd、zrange、zrangebyscore、zscore、zrem、zremrangebyscore
3.3redis的配置文件
- 守护进程:daemonize yes(守护进程类似于服务,不阻塞,建议为yes)
- 进程文件位置:pidfile /var/run/redis/redis-server.pid
- 绑定的端口:port 6379
- 绑定的IP地址:bind 10.0.102.13
- 超时时间:timeout 0 --默认超时时间为0
- 日志文件保存位置:logfile /var/log/redis/redis-server.log
- 数据库的默认个数:databases 16
- 数据备份文件名:dbfilename dump.rdb
- 备份文件的位置:dir /var/lib/redis
- 主从搭建中从服务器的权限:slave-read-only yes(默认只是读)
3.4主从搭建
3.4.1主从简介
- 一个master可以拥有多个slave,一个slave又可以拥有多个slave,如此下去形成强大的多级服务器集群架构
- 实现读写的分离
- 实现主服务器的备份
- master和slave都是redis的实例
3.4.2主从配置步骤
3.4.2.1主的配置
- 查看当前主机ip地址:ifconfig
- 修改etc/redis/redis.conf
sudo vim redis.conf bind 10.0.102.13 --主机ip地址 port 6379 --主机端口绑定
- 重启redis服务:sudo redis-server /etc/redis/redis.conf
- 进入redis数据库:redis-cli -h 10.0.102.13 -p 6379
3.4.2.2从的配置
从机默认只有读的能力,可以在配置文件中修改
- 复制etc/redis/redis.conf文件:sudo cp redis.conf ./slave.conf
- 修改redis/slave.conf文件:sudo vim slave.conf
- 编辑内容
bind 10.0.102.13 --从机ip地址 slaveof 10.0.102.13 6379 --主机ip地址和端口 port 6378 --从机端口绑定
- redis服务:sudo redis-server slave.conf
- 登录从机:redis-cli -h 10.0.102.13 -p 6379
- 查看主从关系:redis-cli -h 192.168.26.128 info Replication
3.4.3数据操作
- 主机中:set name gfb
- 从机中:get name
- 从机保存数据:bgsave或者save
3.5集群搭建
port 7000
bind 172.16.179.130
daemonize yes 后台运行(守护进程)
pidfile 7000.pid 进程的id写到这个文件中
cluster-enabled yes 集群的级联
cluster-config-file 7000_node.conf 连接集群结点的配置文件
cluster-node-timeout 15000 设置连接集群的超时时间
appendonly yes 数据文件的追加