文章讲述CentOS7安装redis6.2.5的详细步骤。
下载
我们下载用linux的wget工具,如果没有需要先安装。
装wget
安装wget比较简单,用yum命令。
yum install wget
下载redis
去redis的官网拿资源包链接:https://redis.io/
用浏览器在官网的Download it 那里右键复制链接地址。我操作的时候最新是6.2.5版本,复制下来的链接:
https://download.redis.io/releases/redis-6.2.5.tar.gz
这里是下载到/root/soft/下面。
cd /root
mkdir soft
cd soft
在linux的shell窗口中使用wget命令下载资源。
wget https://download.redis.io/releases/redis-6.2.5.tar.gz
解压缩
tar xf redis-6.2.5.tar.gz
安装
解压出来的是源码,需要自己去安装。先看目录。
其中的README.md相当于安装文档,记录了如何使用源码去安装redis。可以用vi命令打开文件,关闭文件需要在键盘输入“:wq”,注意需要输入半角符的冒号。
vi README.md
这里面讲到用make命令来进行编译,还可以做编译为32位、清除编译结果、设置编译目录等操作,也有关于安装、启动等命令。
目录里的Makefile文件是用来指引make命令具体如何去操作用的(redis的Makefile会指引到src目录下的另一个Makefile文件去执行)。
按readme的流程,直接在当前目录下跑make命令。
make
装make编译程序
如果没有装make工具,会说cc命令未找到,这是C语言编译器,需要安装。
yum install gcc
使用yum命令装gcc,过程中输入y同意安装相关环境,等它装完。
用make安装
再跑一次make(如果上次成功了就不用重新跑)。
如果上一次是失败的编译,可能会有残留的编译文件。
按readme的指引,可以清除上一次的编译结果:
make distclean
再执行一次make,就可以完成安装了。此时可以运行make test 来测试编译正不正常。
尝试启动
此时的src目录下就会有一些可执行程序了,如redis-server、redis-cli。
此时可以启动redis服务器:
./redis-server
但是这个方法启动,命令行是在进程模式里的,按ctrl+c就退出了。
装service脚本
readme里有指引,可以以服务的形式来启动redis。
安装二进制文件
先把二进制文件编译出来。utils目录下有make install命令来编译成二进制文件,可以用PREFIX来指定编译目录,默认编译到/usr/local/bin。这些文件后面可以给多个不同redis实例(进程)共享使用。
make install PREFIX=/opt/redis6
此时对应目录下就有程序了,没有和源码混一起。
配置环境变量
后面制作启动服务的脚本文件时,需要填入前面编译出的二进制文件的目录,可以直接把目录加入到系统变量中,后面会自动读取到并填入。如果不做这一步,后面制作脚本文件也可以手动输入。
编辑操作系统的profile并且把相关变量设置进去。
vi /etc/profile
在键盘上按a或者i进入编辑,在文件最下面追加redis的路径并且加入到path中。写完先按esc,再输入“:wq”完成编辑。
#append the redis path
export REDIS_HOME=/opt/redis6
export PATH=$PATH:$REDIS_HOME/bin
因为配置文件是在磁盘上的,内存不知道,要先跑一次更新配置文件。
source /etc/profile
可以用echo $PATH对比更新前后的效果。
此时就可以在任意目录下运行到/opt/redis6/bin下面的二进制文件了。
安装服务实例
install_server.sh命令可以把控制服务的脚本和配置安装到操作系统上。进入utils目录,执行脚本。
./install_server.sh
直接运行可能会报错“This systems seems to use systemd.”,此时需要去install_server.sh里改一些东西。
用vi install_server.sh 打开文件,找到图中导致报错的脚本,在前面加上#号做注释处理,可以在开头再加点备注,结束编辑并保存。
再次运行指令,能绕过刚才的出错。
此时会先后让你填写与确认安装这个server实例的端口号以及这个实例相关的配置文件、日志、持久化数据以及执行程序的目录。如果在上面没有做配置环境变量的步骤,执行程序目录就没有默认值,需要自己输入。
一个物理机可以启动多个不同端口号的redis实例(进程),因此也能重复当前步骤来安装其他实例的启动脚本,设置不同的端口和专属文件的名称就可以了。
信息都没有问题,就按回车键确认,有问题就按Ctl+C重新来。
确认完,会看到提示分别作了拷贝配置文件、安装服务(把启动脚本装到etc下)、设置开机启动和设置在345级别,再帮你把服务运行起来了。
确认结果
此时进etc相关的目录里查看
cd /etc/init.d/
ls
能看到有一个redis_6379的脚本文件。打开看一段,是我们刚才安装时候做的那些配置。
现在可以在任意目录下用这个redis_6379脚本了。
比如看状态,能看到这个服务正在运行中,进程号是37321,这结果和用其他命令查出的信息是相对应的。
service redis_6379 status