CentOS下Redis的安装

在这里将整理出Redis在CentOS 7中安装的流程,并且可以使得开机时自启动Redis。

获取Redis

使用wget获取Redis安装包,因此需要提前在CentOS中安装好wget。

yum install wget -y

到Redis官网中获取软件包下载链接。

16a040de6c9a47829d0893ddea35a4c7.png

安装Redis

然后到CentOS中下载Redis。

wget https://github.com/redis/redis/archive/7.0.12.tar.gz

对安装包经行解压。

tar zxvf 7.0.12.tar.gz

进入解压文件下可以看到Makefile,可能是需要make一下。

20990535a5494039bba6d555feed4c56.png

因此需要安装make和gcc。

yum install make
yum install gcc

然后make一下。

7d21f95555f2474ca9344f0979e43e75.png

经过漫长的等待终于好了。

到这里可以使用一些指令使用Redis了。但是我们需要使其开机自启动,因此还需要继续配置。

Redis配置与部署

首先,在刚刚的软件包当中有一份Redis的启动脚本。

3cbcf3da841a4f73b932dde0b5e47fcb.png

可以看看这份脚本什么意思。

17c801b9d1d94c75bf8c659b7faf42d7.png

可以看出来这份脚本定义了Redis的start以及stop的操作,并且在脚本的最开始就规定了端口号、配置文件等。因此我们围绕这份脚本对Redis进行配置。

配置redis.conf

首先按照脚本CONF的路径检查一下有没有对应的conf文件,没有的话需要从安装包中复制一份redis.conf过去并且修改名字(我太懒了就直接用端口号当配置文件名了,当然如果集群的话这样也是不错的)。当然也可以修改脚本中CONF的路径。

cp redis.conf /etc/redis/6379.conf

2e7c7fa5fc9b4c4d9f3c0c03c0696c42.png

对于redis.conf的配置这里列举出一些配置供参考。

# 所以地址均可用
bind 0.0.0.0

# 端口号检查
port 6379

# 守护线程, 可后台运行
daemonize yes

# Note that on modern Linux systems "/run/redis.pid" is more conforming
# and should be used instead.
# 要与脚本路径对应
pidfile /var/run/redis_6379.pid

# 日志文件存储位置
logfile "/var/log/redis.log"

# 数据库存放位置
dir /var/local/redis

接着我们可以把脚本重命名为redisd放到init.d当中。

 cp redis_init_script /etc/init.d/redis

开机启动

怎么使redis开机启动呢?发个问答贴吧(bushi)

使用chkconfig将redis开机启动。

chkconfig redis on
chkconfig --list

3ce1b246bf254663b36562f03f4ecbb5.png

启动选项

用service redis start启动redis。

1e26948120ec4b49b42030a24bca1c97.png

 这时候service redis只有start和stop指令选项。如何增加选项呢?发个问答贴吧(bushi)

记不记得在utils目录下还有一个redis_init_script.tpl,说是什么初始化模板?让我康康!

f25f40ee46b84808afc23f006b919651.png

 里面包含了start、stop、status、restart几个选项,那我们直接复制过去不就好了?试逝!

b0a943ead0194697aab2d9bc29eedb6e.png

 确实可以!

顺便看看开机启动怎么样。

f9f274b20d554fbcbe86d5f8ddb0285a.png

 Okk,大功告成~!

systemclt设置

既然有service控制redis,那么能否使用systemclt指令控制redis的状态呢?

在/etc/systemd/system在新建redis.service文件并且写入如下配置。

ps:近日发现这种设置方法会出错,原因是执行的路径应为绝对路径,一个思路是用redis-server的绝对路径去启动,怎么配自己去查一下;另一种是改进下,使用绝对路径(/sbin/service)去调用serivce以启动redis,即下面的配置方法。

vi /etc/systemd/system/redis.service
[Unit]
Description=Redis
After=network.target
 
[Service]
Type=forking
ExecStart=/sbin/service redis start
ExecReload=/sbin/service redis restart
ExecStop=/sbin/service redis stop
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

检验一下:

4e5dcaa06103410ea99265149785f9c4.png

防火墙端口设置

如果外面程序想用到Linux机里的Redis服务,有两种方法:

1.关闭Linux的防火墙

2.指定端口允许通过

这里给出第二种方法:

firewall-cmd --zone=public --add-port=6379/tcp --permanent
systemctl restart firewalld

8a4bc0cc243142d9b39164229bb4856c.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值