Redis的安装和使用

一  windos系统安装

1.下载

 下载网址:https://github.com/MicrosoftArchive/redis/releases

文件介绍:

redis-benchmark.exe #基准测试

redis-check-aof.exe # aof

redischeck-dump.exe # dump

redis-cli.exe # 客户端

redis-server.exe # 服务器

redis.windows.conf # 配置文件

2.启动

2.1 使用dos命令redis-server.exe redis.windows.conf,启动redis 服务。

2.2 点击server.bat批处理文件启动Redis

二 Linux系统安装(centos为例)

2.1 单击版安装

2.1.1 下载redis安装包

方式一:直接使用centos下载wget http://download.redis.io/releases/redis-4.0.6.tar.gz

方式二:本地下载之后使用工具上传到centos

 

2.1.2 解压安装包

tar -zxvf redis-4.0.6.tar.gz

 

2.1.3 安装redis的编译环境Gcc(redis是C语言开发的)

yum install gcc

 

2.1.4 编译安装redis

make install PREFIX=/usr/local/redis-4.0.6

将/usr/local/redis-4.0.6/src目录下的文件加到/usr/local/bin目录(此步骤可以不执行,这样是将redis运行工具路径加入环境变量,方便后续操作)

 

2.1.5 启动:    

启动方式一:Redis前台默认启动

进入redis安装目录,并启动Redis服务

 cd /usr/local/redis/bin/

./redis-server

启动方式二:Redis使用配置文件启动

拷贝源码中的redis.conf文件到redis的安装目录

 cp /export/servers/redis/redis.conf        /usr/local/redis/

修改redis.conf的属性

daemonize no  è daemonize yes

启动redis服务

 cd  /usr/local/redis

bin/redis-server    ./redis.conf

启动方式三:配置Linux自动启动

准备自启动配置文件

cp /export/servers/redis/utils/redis_init_script /etc/init.d/redisd

修改自启动配置文件

 REDISPORT=6379

 EXEC=/usr/local/redis/bin/redis-server

 CLIEXEC=/usr/local/redis/bin/redis-cli

 PIDFILE=/var/run/redis.pid

 CONF="/usr/local/redis/${REDISPORT}.conf"

准备开机启动的配置文件 

cp /export/servers/redis/redis.conf        /usr/local/redis/6379.conf

设置开机启动

chkconfig  redisd  on

 

2.1.6 判断启动成功

当redis下含有bin目录时就表示启动成功,也可以使用ps  -ef|grep redis 查看进程是否成功,或者使用客户端工具ping-pong机制。

 

2.1.7 连接redis

 ./redis-cli -h ip -p port 

也可以使用客户端软件连接(redis-desktop-manager) 不过这个只能连接单击版的redis

Jedis连接在我其他的文章中有详细介绍

2.2 集群版安装

2.2.1 集群架构图

架构细节:

(1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.

(2)节点的fail是通过集群中超过半数的节点检测失效时才生效.通过投票机制

(3)客户端与redis节点直连,不需要中间proxy.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可

(4)redis-cluster把所有的物理节点映射到[0-16383]slot,cluster 负责维护node<->slot<->value

Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value 时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点

2.2.2 集群搭建

集群一般至少要6个节点,3个节点做集群,3个做备份,如果需要搭建伪分布式的话记得修改port端口

(1)使用ruby脚本搭建集群,安装ruby运行环境

yum install ruby

yum install rubygems

(2)上传安装ruby运行时所使用的包redis-3.0.0.gem

gem install redis-3.0.0.gem

查看redis-trib.rb 脚本所在的目录

 cd redis-3.0.0/src

 ll *.rb

(3)复制以及安装好的redis的实例(删除里面的rdb,aof文件)拷贝6份到目的机器(伪分布式需要更改端口号)

下面使用的是伪分布式

  • 创建目录:

[root@localhost local]# mkdir redis-cluster

  • copy 之前搭建好的redis 并改名为redis01

[root@localhost local]# cp redis/ redis-cluster/redis01 -r

  • 进入redis-cluster目录中cd到redis01的bin目录,删除数据文件

[root@localhost local]# cd redis-cluster/redis01/bin

[root@localhost bin]# rm -rf *.rdb *.aof

  • 修改redis.conf,取消注释,如图,保存退出

[root@localhost bin]# vim redis.conf

  • cd到redis-cluster目录
  • copy六份并分别命名为redis02,redis03,redis04,redis05,redis06

[root@localhost redis-cluster]# cp redis01 redis02 -r

[root@localhost redis-cluster]# cp redis01 redis03 -r

[root@localhost redis-cluster]# cp redis01 redis04 -r

[root@localhost redis-cluster]# cp redis01 redis05 -r

[root@localhost redis-cluster]# cp redis01 redis06 -r

  • cd到每一个实例的bin目录,修改每一个redis实例的端口分别改为7001-7006

[root@localhost bin]# vim redis.conf

(4)启动脚本,关闭脚本的编写

启动脚本

vim  redis-cluster-start-all.sh

添加如下文字到文件中:

cd /usr/local/redis-cluster/redis01/bin

./redis-server redis.conf

 

cd /usr/local/redis-cluster/redis02/bin

./redis-server redis.conf

 

cd /usr/local/redis-cluster/redis03/bin

./redis-server redis.conf

 

cd /usr/local/redis-cluster/redis04/bin

./redis-server redis.conf

 

cd /usr/local/redis-cluster/redis05/bin

./redis-server redis.conf

 

cd /usr/local/redis-cluster/redis06/bin

./redis-server redis.conf

  • 修改文件:redis-cluster-start-all.sh 的权限,让其可执行。

chmod u+x redis-cluster-start-all.sh

  • 执行启动

[root@localhost redis-cluster]# ./redis-cluster-start-all.sh

关闭脚本

首先使用:vim 命令创建一个文件 redis-cluster-stop-all.sh

编辑文件,添加如下:

 

cd /usr/local/redis-cluster/redis01/bin

./redis-cli -p 7001 shutdown

 

cd /usr/local/redis-cluster/redis02/bin

./redis-cli -p 7002 shutdown

 

cd /usr/local/redis-cluster/redis03/bin

./redis-cli -p 7003 shutdown

 

cd /usr/local/redis-cluster/redis04/bin

./redis-cli -p 7004 shutdown

 

cd /usr/local/redis-cluster/redis05/bin

./redis-cli -p 7005 shutdown

 

cd /usr/local/redis-cluster/redis06/bin

./redis-cli -p 7006 shutdown

修改文件:redis-cluster-stop-all.sh 的权限,让其可执行。

chmod u+x redis-cluster-stop-all.sh

执行关闭

[root@localhost redis-cluster]# redis-cluster-stop-all.sh

(5)启动完所有redis节点后,使用ruby脚本搭建集群

  • 从解压目录下的src下的拷贝redis-trib.rb文件到redis-cluster目录中
  • 执行创建:

./redis-trib.rb create --replicas 1 192.168.25.153:7001 192.168.25.153:7002 192.168.25.153:7003 192.168.25.153:7004 192.168.25.153:7005  192.168.25.153:7006

 

(6)集群访问

方式一:客户端访问   redis01/bin/redis-cli -p 7002 -c(加了一个-c字段)

方式二:使用JedisCluster对象连接(在其他文章中有介绍)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值