CentOS7.3搭建redis-4.0.6单机版和集群版

一、检查并安装所需的依赖软件
1.安装gcc
yum install gcc-c++
2.安装ruby(搭建集群版用到)
yum install ruby
yum install rubygems
3.安装redis-trib.rb运行依赖的ruby包(搭建集群版用到)
gem install redis
4.下载redis
wget http://download.redis.io/releases/redis-4.0.6.tar.gz
二、搭建单机版
1.解压redis
tar -zxvf redis-4.0.6.tar.gz
2.进入到redis文件夹
cd redis-4.0.6
3.编译
make
4.安装到/usr/local/redis文件夹
make install PREFIX=/usr/local/redis
5.进入redis安装文件夹
cd /usr/local/redis/bin
6.启动
①.前端启动:
./redis-server
image.png
②.后台启动:
Ⅰ.复制redis.conf到redis的安装目录:cp redis.conf /usr/local/redis/bin/
Ⅱ.修改redis.conf,找到daemonize no,把no修改为yes
Ⅲ.启动:./redis-server redis.conf
Ⅳ.关闭:./redis-cli shutdown
image.png
7.查看进程
 ps aux|grep redis
image.png
8.设置密码
Ⅰ.编辑conf:vim redis.conf
Ⅱ.找到requirepass参数,加入设置密码123456,则是:requirepass 123456
Ⅲ.重启redis生效
三、开启远程连接
1.修改redis.conf文件
Ⅰ.找到bind 127.0.0.1,把这行前面加个#注释掉,或者改为你的内网ip
Ⅱ.找到protected-mode yes 把yes修改为no
2.防火墙加入6379端口
3.服务器开启6379端口
image.png
4.使用客户端工具RedisDesktopManager测试
image.png
四、搭建集群版
1.redis集群要求最小3主3从,需要准备6台centos7服务器,这里用6个redis实例为例子,端口分别是7001-7006,如果我的地址为:192.168.219.128,6台服务器地址即
192.168.219.128:7001
192.168.219.128:7002
192.168.219.128:7003
192.168.219.128:7004
192.168.219.128:7005
192.168.219.128:7006
2.在local目录下创建redis-cluster存放实例
cd /usr/local/
mkdir redis-cluster
3.拷贝单机版的redis文件夹到redis-cluster文件夹里
cp -r /usr/local/redis /usr/local/redis-cluster/
4.把redis文件夹重命名
mv redis redis7001 
5.进入到redis7001里面,删除dump.rdb文件
cd redis7001
rm dump.rdb
6.修改redis.conf
注意:下面内容,可以直接输入“/查找的内容”,按回车进行查找
Ⅰ.编辑redis.conf:vim redis.conf
Ⅱ.修改端口号:port 7001
Ⅲ.启动后台运行:daemonize yes
Ⅳ.修改集群:cluster-enabled yes
Ⅵ.修改bind地址:bind 你的内网ip
7.拷贝5份出来
cp -r redis7001/ redis7002
cp -r redis7001/ redis7003
cp -r redis7001/ redis7004
cp -r redis7001/ redis7005
cp -r redis7001/ redis7006
8.分别修改端口号为7002、7003、7004、7005、7006
9.拷贝redis-trib.rb文件到redis-cluster文件夹,前提下要安装好ruby
cp redis-4.0.6/src/redis-trib.rb /usr/local/redis-cluster
10.在redis-cluster文件夹下创建start-all.sh文件,用来启动所有的redis
vim start-all.sh
内容:
cd redis7001
./redis-server redis.conf
cd ..
cd redis7002
./redis-server redis.conf
cd ..
cd redis7003
./redis-server redis.conf
cd ..
cd redis7004
./redis-server redis.conf
cd ..
cd redis7005
./redis-server redis.conf
cd ..
cd redis7006
./redis-server redis.conf
cd ..
11.增加执行权限
chmod +x start-all.sh
12.启动所有的redis
image.png
13.执行创建集群的命令
./redis-trib.rb create --replicas 1 120.78.86.118:7001 120.78.86.118:7002 120.78.86.118:7003 120.78.86.118:7004 120.78.86.118:7005  120.78.86.118:7006
14.连接集群
redis7001/redis-cli -p 7001 -c
注意:
redis集群不仅需要开通redis客户端连接的端口,而且需要开通集群总线端口
集群总线端口为redis客户端连接的端口 + 10000
如redis端口为6379,则集群总线端口为16379
所以,所有服务器需要开通redis的客户端连接端口和集群总线端口
每台都要开启这两个端口
image.png
五、持久化
1.RDB方式——在指定的时间间隔能对你的数据进行快照存储
从配置文件redis.conf可以找到以下配置
# 时间策略
# 1.如果900s内有1条是写入命令,就触发产生一次快照
# 2.如果300s内有10条是写入命令,就触发产生一次快照
# 3.如果60s内有10000条是写入命令,就触发产生一次快照
save 900 1  
save 300 10  
save 60 10000  

# 文件名称
dbfilename dump.rdb

# 文件保存路径
dir ./  #表示当前目录

# 如果持久化出错,主进程是否停止写入
# 这个配置也是非常重要的一项配置,这是当备份进程出错时,主进程就停止接受新的写入操作,是为了保护持久化的数据一致性问题。如果自己的业务有完善的监控系统,可以禁止此项配置, 否则请开启
stop-writes-on-bgsave-error yes

# 是否压缩
# 优点:减少磁盘存储空间
# 缺点:消耗CPU资源
# 建议没有必要开启,毕竟Redis本身就属于CPU密集型服务器,再开启压缩会带来更多的CPU消耗,相比硬盘成本,CPU更值钱。
rdbcompression yes

# 导入时是否检查
rdbchecksum yes
2.AOF方式——记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据。
从配置文件redis.conf可以找到以下配置
# 是否开启aof
appendonly yes

# 文件名称
appendfilename "appendonly.aof"

# 同步方式
#有三种模式:
#1.always:把每个写命令都立即同步到aof,很慢,但是很安全
#2.everysec:每秒同步一次,是折中方案
#3.no:redis不处理交给OS来处理,非常快,但是也最不安全
#一般情况下都采用 everysec 配置,这样可以兼顾速度与安全,最多损失1s的数据
appendfsync everysec

# aof重写期间是否同步
no-appendfsync-on-rewrite no

# 重写触发配置
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

# 加载aof时如果有错如何处理
aof-load-truncated yes

# 文件重写策略
aof-rewrite-incremental-fsync yes
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容

  • 1 Redis介绍1.1 什么是NoSql为了解决高并发、高可扩展、高可用、大数据存储问题而产生的数据库解决方...
    克鲁德李阅读 5,239评论 0 36
  • NOSQL类型简介键值对:会使用到一个哈希表,表中有一个特定的键和一个指针指向特定的数据,如redis,volde...
    MicoCube阅读 3,936评论 2 27
  • 在开始搭建 Redis 集群之前,首先要明确集群节点的数量。集群正常运作至少需要三个主节点,为了增加集群的可访问性...
    简书冷雨阅读 2,510评论 2 22
  • 前言 Redis 是我们目前大规模使用的缓存中间件,由于它强大高效而又便捷的功能,得到了广泛的使用。单节点的Red...
    Kevin_ZGJ阅读 11,649评论 19 133
  • 红与 黑 都是 颜色 苦与 甜 都是 滋味 圆与 缺 都是 月亮 爱与 恨 都是 情感 他与 她 都是 世界
    雪莉诗话阅读 392评论 7 15