Linux下redis的安装过程与配置方法【5.0.5为例子】
-
下载redis
redis下载地址
https://download.redis.io/releases/
也可以自行去官网下载
提示:此处安装的为redis-5.05的版本
-
上传redis安装包(我的安装目录为/data/tool/redis-5.0.5)
创建目录/data/local/tool并进入该目录,解压redis包
mkdir -p /data/tool # 创建目录
tar -zxvf redis-5.0.5.tar.gz # 解压
cd /data/tool/redis-5.0.5 # 进入目录
- 安装gcc编译器
注意:由于redis是C语言编写,它的运行需要C环境,所以编译前需要安装gcc编译器
yum install gcc-c++ #没有安装
安装过程需要下载几个包,需要输入两个y,按回车后继续安装
- 安装redis
[root@redis]# cd redis-5.0.5
[root@t redis-5.0.5]# make
等待编译完成后
进入 src 目录后执行 make install
cd /src
make install
安装成功如下:
- 配置并启动redis【重点】
在/data/tool/redis-5.0.5下新建config目录
[root@localhost src]# cd /data/tool/redis-5.0.5
[root@localhost redis]# mkdir config
移动配置文件,先将 redis-5.0.5 里的配置文件 redis.conf 移动到刚创建的 config 文件夹
[root@localhost redis]# cd redis-5.0.5
[root@localhost redis-5.0.5]# mv redis.conf /data/tool/redis-5.0.5/config
修改配置文件,进入config目录,修改redis.conf配置文件
[root@localhost config]# vim redis.conf
- 注释掉 bind 127.0.0.1 这一行(解决只能特定网段连接的限制;正式服务器部署如阿里云、华为云,为项目安全严格可以保留注释,自己测试服务使用的话就注释掉)
(2) 将 protected-mode 属性改为 no (关闭保护模式,不然会阻止远程访问;同上,正式服务器项目上线可不修改)
(3) 将 daemonize 属性改为 yes (这样启动时就是后台启动)
(4) 设置密码
reqquirepass 123456 # 设置密码
(5)修改完成后,wq保存并退出(先按Esc,接着输入 :wq,然后按回车健)
- 启动redis
注意找不到redis-server,则使用which查看位置,然后运行
[root@localhost src]# cd /data/tool/redis-5.0.5
[root@localhost redis-5.0.5]# src/redis-server config/redis.conf
[root@localhost redis-5.0.5]# ps -ef | grep redis
测试
7. 设置开机自启
使用Systemd设置Redis开机自启动
创建Service文件:在/usr/lib/systemd/system/目录下创建一个名为redis.service的文件。
编辑Service文件:在redis.service文件中写入相应的配置内容,如:
[Unit]
Description=Redis persistent key-value database
After=network.target
[Service]
User=prouser
Group=rdType
Type=forking
ExecStart=/opt/app/redis/bin/redis-server /opt/app/redis/bin/redis.conf
ExecStop=/opt/app/redis/bin/redis-cli shutdown
Restart=on-failure
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重载Systemd配置:使用命令systemctl daemon-reload重载配置。
设置开机自启动:使用命令systemctl enable redis来设置Redis开机自启动。
启动Redis服务:使用命令systemctl start redis启动Redis服务。
查看Redis服务状态:使用命令systemctl status redis来查看Redis服务是否成功设置开机自启动
``