linux学习_redis

 

安装redis

单机版redis

1 yum install gcc-c++   (因为是C语言编写的,需要C语言的环境)

2.下载redis

3.上传到linux
   crt中 alt+p

4.在 usr/local下新建文件夹 redis
mkdir /usr/local/redis

5.将root下的redis移动到 /usr/local/redis 然后解压
mv redis-3.0.7.tar.gz /usr/local/redis/
cd /usr/local/redis
tar -zxvf redis-3.0.7.tar.gz

6.编译redis
cd /usr/local/redis
cd redis-3.0.7
make

7.安装redis
cd /usr/local/redis
cd redis-3.0.7
make PREFIX=/usr/local/redis install
安装成功之后 在redis目录下多出来一个bin目录

8.启动(服务器)

方式1(掌握):
使用配置文件启动

将redis-3.0.7目录下的redis.conf文件复制到 /usr/local/redis/bin 下
cp redis.conf ../usr/local/redis/bin/

修改redis.conf 设置为 后台启动
vi redis.conf
搜索/daemonize
# 将 daemonize 值改成yes即可(然后退出编辑 shif+zz,保存)
启动:
./redis-server redis.conf

 方式2(了解:不推荐):

 在bin目录
 ./redis-server
 默认端口号:6379

9.使用redis的客户端连接redis服务器

方式1:连接指定主机 指定端口号
./redis-cli [-h 192.168.2.133 -p 6379]  --raw   

ps:[]本机可略,--raw可查看存储的中文内容

方式2:默认连接的本机6379端口
./redis-cli

10.基本的命令:

quit:退出

11. 关闭服务(只要装了,就不会关闭服务)
使用客户端发送关闭命令

方式a:登录客户端
shutdown

方式b:没有登录客户端
./redis-cli -h ip地址 -p port shutdown

./redis-cli -h 192.168.2.131 -p 6379 shutdown

方式c:kill -9 pid

集群版redis

集群思想:

1.把上面安装的单机版的redis在bin/redis.conf中进行开启集群配置(即放开cluster-enabled yes的注释),[若在一台服务器上进行配置集群,则需要修改端口号,搜索port 6379,进行端口号修改]

2.删除单机版的持久化文件(即删除bin下的dump.rdb文件)

3.安装一个插件redis-trib.rb来创建集群

操作步骤:

1.安装插件依赖的ruby环境

yum -y install ruby

yum  -y install ruby-gems

yum -y install rubygems-devel

2.上传redis和ruby的整合接口(redis-3.0.0.gem)

3.安装接口

gem install redis-3.0.0.gem

4.集群搭建

子步骤:

一、启动集群

创建一个startCluster.sh启动脚本,里面写上:
cd 7001/bin
./redis-server redis.conf
cd ../../7002/bin
./redis-server redis.conf
cd ../../7003/bin
./redis-server redis.conf
cd ../../7004/bin
./redis-server redis.conf
cd ../../7005/bin
./redis-server redis.conf
cd ../../7006/bin
./redis-server redis.conf
cd ../../7007/bin
./redis-server redis.conf
cd ../../7008/bin
./redis-server redis.conf


root 6330 1 0 19:21 ? 00:00:06 ./redis-server *:6379
root 6532 1 0 20:18 ? 00:00:00 ./redis-server *:7001 [cluster]
root 6536 1 0 20:18 ? 00:00:00 ./redis-server *:7002 [cluster]
root 6541 1 0 20:18 ? 00:00:00 ./redis-server *:7003 [cluster]
root 6545 1 0 20:18 ? 00:00:00 ./redis-server *:7004 [cluster]
root 6549 1 0 20:19 ? 00:00:00 ./redis-server *:7005 [cluster]
root 6553 1 0 20:19 ? 00:00:00 ./redis-server *:7006 [cluster]
root 6557 1933 0 20:19 pts/0 00:00:00 grep redis

二、创建集群
命令:./redis-trib.rb create --replicas 1 192.168.66.66:7001 192.168.66.66:7002 192.168.66.66:7003 192.168.66.66:7004 192.168.66.66:7005 192.168.66.66:7006
        redis-trib.rb:创建集群插件(插件在redis解压目录下的src/下面)
        create:插件命令,创建集群
       --replicas 1:每一个服务器必须至少有一个备份服务器

查看集群信息:先登录集群,才能查询
      登录命令:./redis-cli -c -h 192.168.66.66 -p 7001 --raw
查看集群运行状态:
192.168.66.66:7001> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_sent:229
cluster_stats_messages_received:229
查看集群节点信息:
命令:cluster nodes
192.168.66.66:7001> cluster nodes
789c96a262d9a4c2c3523b886109cd23ab0fae3c 192.168.66.66:7002 master - 0 1488630409874 2 connected 5461-10922
1bb679eee0152d6d4ad498525ed66ff8bead1c1d 192.168.66.66:7006 slave 1faa2ea7981e5585cf114140b128f077efa40a94 0 1488630406794 6 connected
1faa2ea7981e5585cf114140b128f077efa40a94 192.168.66.66:7003 master - 0 1488630410897 3 connected 10923-16383
204ec3fe2b3bc6a8e0df75a63f357bb5db83b0b1 192.168.66.66:7005 slave 789c96a262d9a4c2c3523b886109cd23ab0fae3c 0 1488630411936 5 connected
87c18786ef18e8765449cbda2684f20433695378 192.168.66.66:7004 slave be6fcecb1b596b9369b159c54ff6946acb38bc7e 0 1488630408851 4 connected
be6fcecb1b596b9369b159c54ff6946acb38bc7e 192.168.66.66:7001 myself,master - 0 0 1 connected 0-5460
三、动态添加集群节点

1、默认添加主节点master
需求:需要把7007节点添加到集群中
前提:7007REDIS服务必须处于启动状态,才能把7007服务添加到集群中
添加命令:./redis-trib.rb add-node 192.168.66.66:7007 192.168.66.66:7001

add-node:表示添加集群节点,默认添加主节点
192.168.66.66:7007:需求添加的节点
192.168.66.66:7001:参考节点,表示把7007节点添加到7001所在集群
添加成功:[OK] New node added correctly.
2、分配存储空间

从新分配存储空间命令:./redis-trib.rb reshard 192.168.66.66:7001
how many slots do you want to move:4000(分配槽多少)
***ID:e6fcecb1b596b9369b159c54ff6946acb38bc7e(复制7007节点id)
source node#1:all(从哪个来分配)

reshard:从新分配空间
192.168.66.66:7001:表示重新分配7001所在集群空间

3、给集群节点添加从节点
需求:给7007master主节点添加一个从节点7008
注意:一个主节点可以有多个从节点
前提:7008REDIS服务必须处于启动状态,才能把7008服务添加到集群中
命令:./redis-trib.rb add-node --slave --master-id 5ff6ce2a43ae37cf3fbf2ec850a8a815df86bab4 192.168.66.66:7008 192.168.66.66:7001
add-node:添加节点
--slave:表示添加的是从节点
--master-id:表示添加节点的主节点Id
192.168.66.66:7008:需求添加的节点
192.168.66.66:7001:参考节点,表示把7008节点添加到7001所在集群

 

posted @ 2018-01-29 23:05  bo客先生  阅读(141)  评论(0编辑  收藏  举报