redis命令大全:http://redisdoc.com/
文章如有什么错误,还望各位大神指正
1.下载地址:http://download.redis.io/releases/
2.解压安装:
2.1:redis安装在Linux上,redis是c语言开发的,需要依赖以下环境。
yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl
2.2解压:tar -zxvf redis-3.0.0.tar.gz
2.3进入到redis目录,执行命令:make
执行完成:
2.4指定安装路径:make install PREFIX=/usr/local/redis
3 启动redis
3.1进入到redis安装目录的bin目录下:cd /usr/local/redis/bin
启动redis:./redis-server
3.2 从安装包中复制redis.conf文件到/usr/local/redis/bin中
复制命令:
cp /usr/local/redis-3.0.0/redis.conf ./
3.3 修改redis.conf ,使得redis启动方式为后台启动
vim redis.conf
修改daemonize no 改成 daemonize yes3.4 启动redis :./redis-server redis.conf
3.5 允许客户端连接
注释 bind 127.0.0.1使用命令看一下启动进程:
ps -ef |grep redis
当看到./redis-server *:6379,说明可以使用客户端连接4.数据类型及基本命令
redis支持的数据类型有:
4.1 string(字符串)
String:string 是 redis 最基本的类型,一个 key 对应一个 value。常用命令:get、set、incr、decr、mget等,可以使用setnx(set if not exist)命令做redis分布式锁,原理是该命令设置一个key,假如该key存在,就什么都不做,假如不存在,就设置该key,说明抢到了锁。
4.2 hash(哈希)
hash: hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。常用命令:hget,hset,hgetall 等。
4.3 list(列表)
list:有顺序可重复,可以用来做消息队列.常用命令:lpush(添加左边元素),rpush,lpop(移除左边第一个元素),rpop,lrange(获取列表片段,LRANGE key start stop)等。
4.4 set(集合)
set :set是string类型的无序集合,常用命令:sadd,spop,smembers,sunion 等。
4.5 zset(sorted set:有序集合)
zset:zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。常用命令:zadd,zrange,zrem,zcard等
各个数据类型应用场景:
5.redis 集群搭建:
5.1新建redis-cluster文件夹:
mkdir redis-cluster
5.2复制刚刚redis的安装目录:
cp -R /usr/local/redis/* ./
5.3重新命名:mv bin redis-7001
5.4修改端口:7001,打开注释cluster-enabled yes
5.5复制5份文件,分别修改端口号:
5.6写脚本启动全部redis:vim start-all.sh
cd redis-7001
./redis-server redis.conf
cd ..
cd redis-7002
./redis-server redis.conf
cd ..
cd redis-7003
./redis-server redis.conf
cd ..
cd redis-7004
./redis-server redis.conf
cd ..
cd redis-7005
./redis-server redis.conf
cd ..
cd redis-7006
./redis-server redis.conf
cd ..
5.7给权限start-all.sh:
chmod +x start-all.sh
5.8执行start-all.sh脚本
./start-all.sh
执行后查看端口情况:
ps -ef |grep redis
5.8集群工具安装
要搭建集群的话,需要使用一个工具(脚本文件),这个工具在redis解压文件的源代码里。因为这个工具是一个ruby脚本文件,所以这个工具的运行需要ruby的运行环境,就相当于java语言的运行需要在jvm上。所以需要安装ruby,指令如下:
yum install ruby
完成安装如下图:
5.9安装 ruby相关的包安装到服务器
gem install redis-3.0.0.gem
完成效果图:5.10将redis 解压目录src目录下的redis-trib.rb拷贝到集群的目录文件夹下:
cp redis-trib.rb /usr/local/redis-cluster/
5.11执行集群命令
./redis-trib.rb create --replicas 1 192.168.67.129:7001 192.168.67.129:7002 192.168.67.129:7003 192.168.67.129:7004 192.168.67.129:7005 192.168.67.129:7006
成功如下图:
测试:添加集群参数
单服务器
spring.redis.cluster.nodes=192.168.67.129:7001,192.168.67.129:7002,192.168.67.129:7003,192.168.67.129:7004,192.168.67.129:7005,192.168.67.129:7006
## 连接池最大连接数(使用负值表示没有限制)
spring.redis.jedis.pool.max-active=300
#spring.redis.jedis.pool.max-wait=-1
## Redis数据库索引(默认为0)
spring.redis.database=0
## 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.jedis.pool.max-wait=-1
## 连接池中的最大空闲连接
spring.redis.jedis.pool.max-idle=100
## 连接池中的最小空闲连接
spring.redis.jedis.pool.min-idle=20
## 连接超时时间(毫秒)
spring.redis.timeout=60000
第一次查询:访问数据库:
第二次查询:走缓存
查询redis:7001和7004数据是一致的
查询节点集群信息命令:
./redis-cli -p 7001 cluster info
集群信息查询: