一、windows 下安装使用
1.下载:从github 下载 2.安装:redis-server.exe --service-install redis.windows.conf 3.启动:redis-server.exe --service-start 4.停止:redis-server.exe --service-stop 5.卸载:redis-server.exe --service-uninstall
二、linux 下安装使用
1.下载:http://download.redis.io/releases/ 2.解压:tar zxf abc.tar.gz -C /usr/local/src/ 3.编译:进入目录 执行 make 4.复制 /usr/local/src/redis-6.0.4/src 目录下的redeis-server 以及redis-cli 到/usr/local/redis/ 目录下 5.复制 /usr/local/src/redis-6.0.4 目录下的redis.conf 到 /usr/local/redis/ 目录下 6.修改配置文件redis.conf 参数 :daemonize yes 表示后台启动
启动 ./redis-server redis.conf 7.下载客户端:https://pan.baidu.com/s/1QvjG30IV-MJFPTF-oV9nVw 8.安装客户端并启动 连接服务 ./redis-cli -p 6378 指定端口启动 9.设置可远程访问 修改配置文件 参数 bind 127.0.0.1 172.20.2.102
其他配置如图:
三、数据持久化
1、rdb持久化配置:save 900 1 标识900s 有一个增删改操作就保存 rdb 按照规则同步到磁盘,重启后又从磁盘写入内存 2、aof 持久化配置:默认不开启,修改 appendonly no 为yes 同步规则配置: appendfsync everysec(每秒同步一次)always (每次操作都同步) aof 是将操作的命令都写入日志文件,重启时又重新执行这些操作命令
四、常用操作命令
1、清除所有数据:flushall 2、清除当前数据库数据:flushdb 3、选择数据库:select 1 为选择第一个数据库 4、del key 删除key 5、exists key 是否存在key 6、expire key 为key 设置一个过期时间 7、ttl key 查询key剩余的时间 8、type key 查询key 的数据类型 9、keys 模糊查找 符合指定模式的key 10、mset a1 v a2 v2 a3 v3 批量设置 11、incr key 计数器,执行一次+1 12、incrby key number 指定步数加 13、decr key 减一 14、decrby key number 减去指定步数 链表list 15、lpush key value 插入队列头部 16、lpop key 将队列头部值移除 17、blpop key 5 阻塞将队列头部值移除,超过时间后结束 相当于后进后出 18、rpush key value 插入队列尾部 19、rpop key 将队列尾部值移除 20、brpop key 5 阻塞将队列尾部值移除,超过时间后结束,相当于后进先出 21、lrange key start stop 从头到尾列出值 集合set 22、sadd key v1 v2 v3 向集合添加成员 23、smembers key 查看集合中的成员 24、sinter key1 key 2 求集合的交集 25、sunion key1 key2 求集合的并集 26、sdiff key1 key2 求集合的差集,key1中独有 hash 哈希 对象 27、hset 10001 name zhangsan 设置id=10001 的name=张三 28、hmset 10001 name zhangsan age 14 sex 男 批量设置对象属性 29、hget 10001 name 获取对象属性 30 hmget 10001 nage age sex 批量获取属性
五、redis 主从复制
1、搭建一主三从服务
2、实现原理:主redis 实现增删改操作,从redis 实现查询操作,从redis 定时从主redis 拉去数据 3、优点:实现读写分离、负载均衡,提高编发量 ;数据备份到从服务器 4、缺点“:难以扩容,知识复制,数据没有强一致性 5、具体实现(1)从、usr/local/redis/下分别拷贝三分 redis-server redis-cli redis.conf 分别作为三个从服务器 (2)分别修改三分配置文件redis.conf ,端口号分别为6381,6382,6383 (3)分别修改三分配置文件 redis.conf ,修改 replicaof 127.0.0.1 6379 为主redis 的ip和端口 (4)配置完成后可以配置从redis 只读
六、redis 集群
1、实现原理:为了解决redis 写入或更新频繁超过15万的qps,ridis 规定有16384个哈希槽,存入数据时就计算key的crc16算法并取模16384,得出的结果属于那些哈希槽范围就存入那个redis服务(每个redis在创建集群时就规定了一个hash 范围) 2、实现原理图 3、具体实现配置 (1)拷贝三分redis.conf redis-server 到不同目录 (2)分别修改配置文件,端口号和 cluster-enabled yes 以及 cluster-config-file nodes-7000.conf (3)分别启动三台服务器 ,查看 ps -A |grep redis-server (4)将三台服务器创建集群环境,redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 (5) 按照集群方式启动任意服务器 ./redis-cli -c -p 7000 (6) 总结:存放时按照key计算后属于那台服务器而存入那台服务器,获取时再计算ket 后再指定服务器获取key,集群环境自动切换