Centos7搭建单机版Redis
工作需要,需要一个redis服务器来做缓存数据库,作为一个当下风靡的工具,至少还是应该知道怎么搭建
本次介绍内容为单机版搭建过程,集群部分,还没实践过,,
工具准备
首先Centos7服务器,然后装个wget
,开始
安装包下载
https://redis.io/download
官网下有很多版本,正常下载稳定版即可,当然,Beta版可能也有很多优化可以装了试试。
1 | wget http://download.redis.io/releases/redis-4.0.11.tar.gz |
编译安装
1 | tar -zxvf redis-4.0.11.tar.gz |
安装完之后,根据内部既定的shell脚本,会在/usr/bin
目录下自动创建好redis的可执行文件:
1 | -rwxr-xr-x. 1 root root 2450840 Sep 26 16:04 redis-benchmark |
redis的启动和很简单,在/usr/bin
目录下执行redis-server
即可启动;redis-cli SHUTDOWN
即可停止
服务化
通常在Linux下启动都原因是使用服务的方式启动,比如启动nginx和MySQL:systemctl start nginx
和systemctl start mysql
那也可以把redis配置到服务中,使用类似的方式来启动redis
chkconfig
linux的服务通过chkconfig
来管理,可以先执行下chkconfig
来查看当前系统已有的服务:
1 | [root@izuf65tvx7it01x88bzbp5z ~]# chkconfig |
redis服务化
想要将redis服务化,就需要将redis 的启动脚本加到系统服务中去,而系统服务的脚本存储路径是/etc/init.d
,也就是,只需要将redis的启动脚本加到/etc/init.d
文件夹下,再添加到chkconfig
即可。
在之前下载的redis源码下有个初始化脚本文件redis_init_script
(路径:路径/redis-4.0.11/utils),将这个文件拷贝到/etc/init.d
下并且命名为redis_自定义的端口
(例如redis_6379)
1 | cp /路径/redis-4.0.11/utils/redis_init_script /etc/init.d/redis_6379 |
然后进入/etc/init.d
目录,修改初始化脚本vim redis_6379
1 | 增加(头部,第3行后增加即可) |
效果差不多是这样:
1 |
|
修改配置
首先创建放置配置文件的文件夹:
1 | mkdir /etc/redis |
将源文件下配置文件模板路径/redis-4.0.11/redis.conf
复制到/etc/redis
目录下,并且以端口号重命名:
1 | cp 路径/redis-4.0.11/redis.conf /etc/redis/6379.conf |
修改配置文件:
1 | port 6636 (第92行) |
保存退出。
添加服务
一条命令即可:
1 | chkconfig redis_6379 on |
这样就可以使用service redis_6379 start
来启动redis了,同样service redis_6379 stop
效果:
1 | [root@localhost redis]# service redis_6636 start |
原理
其实,用服务启动redis,就是使用将启动脚本加到chkconfig,启动/etc/init.d
下的redis_6379
脚本,根据脚本中的配置
1 | EXEC=/usr/local/bin/redis-server |
真正的server启动目录:/usr/local/bin/redis-server
配置文件路径:/etc/redis/${REDISPORT}.conf
再根据/etc/redis/6379.conf
内的配置,启动相应的端口,保存到相应的目录等