CentOs 安装 Redis

导读:本篇文章讲解 CentOs 安装 Redis,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一、官网下载Redis安装包

官网地址:redis百度云 (提取码:uv9g)


二、将下载的安装包上传到服务器


三、安装gcc环境并升级到高版本

踩过的坑,如果不安装gcc环境或者gcc版本比较低的话下面安装Redis会报错。而且安装高版本的Redis是需要高版本的gcc的。而使用yum install gcc命令安装的gcc默认版本是4.8.5。

1.检查gcc版本,如果显示已经有gcc则直接进行第3步 升级高版本gcc

gcc -v

2. 若没有gcc先安装4.8.5低版本gcc,有则填过:

  • gcc -v
yum install gcc

3. 升级高版本gcc

  • 2.1 安装centos-release-scl,命令:

    • sudo yum install centos-release-scl
  • 2.2 安装devtoolset,注意,如果想安装7.版本的,就改成devtoolset-7-gcc,以此类推,命令:

    • sudo yum install devtoolset-8-gcc*
  • 2.3 激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本,命令:

    • scl enable devtoolset-8 bash
    • 注意: 这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换或直接替换旧的gcc可参考 CentOS 7升级gcc版本

大功告成,查看一下gcc版本,命令:

  • gcc -v
    显示为 gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)

四、解压Redis安装包

tar -zxvf redis-6.0.10.tar.gz

五、进入解压后的文件夹,进行编译

cd redis-6.0.10
make

编译成功提示如下:
在这里插入图片描述


六、进入src目录安装Redis

cd src/
make install

成功提示如下:
在这里插入图片描述

七、修改redis.conf

1.解压目录下修改redis.conf 文件

vi redis.conf
  • daemonize no 修改为 daemonize yes,即yes时以守护模式启动,使 redis 能够后台启动。
  • bind 127.0.0.1 修改成bind 0.0.0.0 (目的:允许远程连接访问,否则用其他redis工具连接或代码连接 redis 服务器会显示连接超时)
  • 增加 redis 连接密码 redis.conf文件中增加一行requirepass 123456 ,123456 就是连接的密码
  • 配置redis日志路径,如:logfile “/usr/local/redis/redis-6.0.10/redis.log”

redis.conf文件里的其他配置可参考 redis.conf文件详解

2.开放 redis 的6379端口(阿里云服务器需安全组规则里开放端口):

/sbin/iptables -I INPUT -p tcp --dport 6379-j ACCEPT

八、启动redis

进入src目录,执行命令(即使用redis.conf配置文件启动 redis):

./redis-server ../redis.conf

查看端口是否启动成功:

ps -aux | grep redis

九、测试:

src 目录下打开 redis 客户端:

redis-cli

输入密码123456才能连接:

auth 123456

键值对存入redis:

set aaa 111

通过键从redis获取值

get aaa

如图:
在这里插入图片描述

其他命令:
关闭redis:

./redis-cli shutdown

十、redis集群主从复制

主从复制:所有节点都可读取,所有节点的数据是一致的。只能从主节点写入数据,数据自动同步到其他节点。

假设你在三台服务器上安装了三个redis,希望主节点的 redis 数据变化后自动同步到其他两台服务器的从节点 redis 中该怎么配置呢?

两台从节点服务器上的 redis.conf 配置文件分别加上如下配置
(如果主节点没设置密码则 masterauth 不用加)

 replicaof 主节点ip 主节点端口
 masterauth 主节点redis密码

举例:
为了测试我将在服务器上用3个端口分别启动3个redis服务。

1.我在服务器上把 redis.conf 拷贝了两份,分别重命名为 redis6378.conf 和 redis6377.conf

2.redis6378.conf 和 redis6377.conf 中最后都加上主节点信息

 replicaof 127.0.0.1 6379
 masterauth 123456

3.redis6378.conf 中修改启动端口号和 pidfile 如下

port 6378
pidfile /var/run/redis_6378.pid

4.redis6377.conf 中修改启动端口号和 pidfile 如下

port 6377
pidfile /var/run/redis_6377.pid

5.src目录下分别启动3个端口的 redis 服务

./redis-server ../redis.conf &
./redis-server ../redis6378.conf &
./redis-server ../redis6379.conf &

6.验证
进入主节点

redis-cli -p 6379

输入密码

auth 123456

设置一个值

set az 789

进入从节点

redis-cli -p 6378

输入密码

auth 123456

获取az值

get az 

获取的值为789说明同步成功

查看节点信息

info replication

十一、redis集群哨兵模式

哨兵模式:当主节点挂了后会自动选举子节点为主节点

redis安装目录下sentinel.conf 配置文件如下

#sentinel监听端口
port 26379
#127.0.0.1可换成你的ip地址
sentinel monitor mymaster 127.0.0.1 6379 1
sentinel down-after-milliseconds mymaster 6000
sentinel failover-timeout mymaster 60000
sentinel parallel-syncs mymaster 1
#如果redis设置了密码,这里也要设置
sentinel auth-user mymaster 123456 
#sentinel的日志路径
logfile "/usr/local/redis/redis-6.0.10/sentinel.log"
protected-mode no
#后台运行
daemonize yes

1.如果redis是在不同服务器上,则修改上面配置文件的127.0.0.1 ip地址,然后把sentinel.conf 配置文件复制到其他服务器的redis安装目录下的sentinel.conf ;
如果是同一服务器上不同端口开启的多个redis服务,每个服务都需要修改上面的端口号,然后复制一份该文件重命名;

2.进入src目录下启动sentinel哨兵
(这里分别用两个配置文件启动了两个哨兵)

redis-sentinel ../sentinel.conf
redis-sentinel ../sentinel23678.conf

3.验证
进入26379端口所启动的哨兵(需要输入auth 密码)

redis-cli -p 26379

查看哨兵监听情况

info sentinel

参考:
Linux安装redis和部署
CENTOS7下安装REDIS
Redis之主从复制

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/80314.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!