在CentOS上安装Redis可以分为几个主要步骤,包括安装必要的依赖、下载和解压Redis源码、编译和安装Redis、配置Redis以及设置开机自启动,下面将详细介绍这些步骤:
安装GCC编译器和Tcl
1、检查GCC是否已安装:
如果GCC已安装,运行gcc version
会输出版本信息,如果未安装,会显示类似“command not found”的信息。
2、安装GCC和Tcl:
使用以下命令安装GCC和Tcl:
```bash
yum install y gcc tcl
```
下载和解压Redis源码
1、进入下载目录:
通常将下载的源码文件放在/usr/local/
目录下:
```bash
cd /usr/local/
```
2、下载Redis源码:
使用wget命令下载Redis源码包(以Redis 7.2.0为例):
```bash
wget HTTPS://download.redis.io/releases/redis7.2.0.tar.gz
```
3、解压源码包:
解压下载好的Redis源码包:
```bash
tar zxvf redis7.2.0.tar.gz
```
4、进入解压后的目录:
进入解压后的Redis目录:
```bash
cd redis7.2.0
```
编译和安装Redis
1、编译Redis:
在Redis目录下执行make命令进行编译:
```bash
make
```
2、安装Redis:
编译成功后,执行make install命令进行安装:
```bash
make install
```
3、检查安装是否成功:
进入/usr/local/bin/
目录,查看是否有redis相关可执行文件:
```bash
cd /usr/local/bin/
ll 或者 ls
```
配置Redis
1、备份配置文件:
为防止修改错误,先备份默认的redis.conf文件:
```bash
cp redis.conf redis.conf.bck
```
2、编辑配置文件:
使用vi编辑器打开redis.conf文件:
```bash
vi redis.conf
```
修改以下配置项:
将daemonize no
改为daemonize yes
,使Redis以后台服务的形式运行。
取消requirepass
前的注释并设置密码,例如requirepass 123456
。
设置日志文件名,例如logfile "redis.log"
。
保存并退出vi编辑器。
3、启动Redis:
使用配置文件启动Redis服务:
```bash
redisserver redis.conf
```
检查Redis是否在后台运行:
```bash
ps ef | grep redis
```
如果需要停止Redis服务,可以使用以下命令:
```bash
kill 9 进程号
```
其中进程号可以通过上面的ps命令查询到。
设置开机自启动
1、创建systemd服务文件:
使用vi编辑器创建一个新的systemd服务文件:
```bash
vi /etc/systemd/system/redis.service
```
在文件中添加以下内容(注意替换ExecStart中的路径为自己的redis.conf文件路径):
```ini
[Unit]
Description=redisserver
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redisserver /usr/local/src/redis7.2.0/redis.conf
PrivateTmp=true
[Install]
WantedBy=multiuser.target
```
保存并退出vi编辑器。
2、重新加载systemd配置:
让新的服务文件生效:
```bash
systemctl daemonreload
```
3、启动Redis服务:
使用以下命令启动Redis服务:
```bash
systemctl start redis
```
查看Redis服务状态:
```bash
systemctl status redis
```
4、设置开机自启:
使用以下命令设置开机自启:
```bash
systemctl enable redis
```
再次查看Redis服务状态确认设置成功:
```bash
systemctl status redis
```
如果需要停止Redis服务,可以使用以下命令:
```bash
systemctl stop redis
```
再次查看Redis服务状态确认设置成功:
```bash
systemctl status redis
```
如果需要取消开机自启,可以使用以下命令:
```bash
systemctl disable redis
```。
连接Redis
1、本地连接:
在安装Redis的CentOS服务器上使用命令连接Redis,一般没有问题。
2、远程连接:
如果通过工具远程连接Redis失败,可能是操作系统防火墙未关闭或触发了Redis的保护模式,解决方法如下:
关闭防火墙:直接关闭防火墙简单粗暴但有安全风险,生产环境下不推荐。
修改保护模式:进入redis.conf文件,将bind 127.0.0.1 ::1注释掉,并在下面增加bind 0.0.0.0;将protectedmode yes修改为protectedmode no,然后重启Redis服务并验证。
常见问题及解决方案
1、如何查看Redis的版本?
解答:可以通过运行redisserver v
或redisserver version
命令来查看Redis的版本号,这会输出类似于“Redis server v=x.x.x sha=xxxxxxxx:x malloc=jemallocx.x.x bits=64 build=yyyyyyyyyy”的信息。
2、如何验证Redis是否正常运行?
解答:可以通过进入Redis客户端来验证,首先运行rediscli
进入客户端,然后使用如set testkey testvalue
设置一个键值对,再使用get testkey
获取该键的值,如果能够成功设置和获取键值对,则说明Redis正常运行,还可以使用ping
命令来测试与Redis服务器的连接是否正常,如果返回“PONG”,则表示连接正常。