-
安装Redis依赖的库
Redis是基于C语言编写的,所以我们需要先安装gcc编译器,执行以下命令:sudo yum install -y gcc
安装Redis还需要jemalloc内存分配器,执行以下命令安装:
sudo yum install -y jemalloc-devel
-
下载并编译Redis源码
首先进入/usr/local
目录:cd /usr/local
从Redis官网下载最新版的Redis源码包:
sudo wget http://download.redis.io/releases/redis-6.2.6.tar.gz
解压源码包:
sudo tar xzf redis-6.2.6.tar.gz
进入解压后的目录:
cd redis-6.2.6
编译源码:
sudo make
编译完成后,在源码目录的
src
子目录中会生成Redis的服务程序redis-server
和客户端程序redis-cli
。 -
安装Redis
将编译好的Redis程序安装到/usr/local/redis
目录:sudo make install PREFIX=/usr/local/redis
创建Redis配置文件目录和日志文件目录:
sudo mkdir -p /usr/local/redis/etc sudo mkdir -p /usr/local/redis/log
将Redis源码目录中的
redis.conf
配置文件复制到/usr/local/redis/etc
目录:sudo cp redis.conf /usr/local/redis/etc/
-
配置Redis
编辑/usr/local/redis/etc/redis.conf
文件,修改以下配置:daemonize yes # 将Redis设置为守护进程 logfile /usr/local/redis/log/redis.log # 设置日志文件路径 dir /usr/local/redis/data # 设置数据文件存放目录
创建数据文件存放目录:
sudo mkdir -p /usr/local/redis/data
-
启动Redis服务
使用以下命令启动Redis服务:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
查看Redis是否启动成功:
ps -ef | grep redis
如果看到
redis-server
进程,说明Redis已经成功启动。
-
设置Redis开机自启
在CentOS 7上,你可以创建一个systemd服务文件来管理Redis服务。以下是具体步骤: -
创建Redis的systemd服务文件
创建一个新的systemd服务文件/etc/systemd/system/redis.service
:sudo nano /etc/systemd/system/redis.service
然后添加以下内容:
[Unit] Description=Redis persistent key-value database After=network.target After=network-online.target Wants=network-online.target [Service] ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf ExecStop=/usr/local/redis/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
这个文件告诉systemd如何在启动时启动Redis服务,以及如何停止服务。
-
重新加载systemd
修改了systemd的服务文件后,需要重新加载systemd:sudo systemctl daemon-reload
-
启动Redis服务
使用systemd启动Redis服务:sudo systemctl start redis
-
设置Redis服务开机自启
要让Redis服务在系统启动时自动启动,可以使用以下命令:sudo systemctl enable redis
-
检查Redis服务状态
检查Redis服务的状态:sudo systemctl status redis
这将显示Redis服务的当前状态,包括是否正在运行。
-
停止Redis服务
如果需要停止Redis服务,可以使用:sudo systemctl stop redis
使用systemd管理服务是CentOS 7及以后版本推荐的作法,它提供了一种更加现代和灵活的方式来管理系统的启动和服务。
如果您遇到错误消息 “bash: redis-cli: 未找到命令…”,这意味着 redis-cli
命令没有在您的系统路径中。这通常是因为在安装 Redis 时,redis-cli
可执行文件没有被安装到标准路径,或者您的 PATH 环境变量没有正确配置。
为了解决这个问题,您可以尝试以下步骤:
-
找到
redis-cli
的实际位置:
使用find
命令来查找redis-cli
可执行文件的位置:sudo find / -name redis-cli
-
手动运行
redis-cli
:
一旦您找到了redis-cli
的位置,您可以直接从那里运行它。例如,如果redis-cli
在/usr/local/redis/bin/redis-cli
,那么您可以使用以下命令来运行它:/usr/local/redis/bin/redis-cli
-
临时添加
redis-cli
到 PATH:
为了方便起见,您可以在当前会话中临时将redis-cli
的路径添加到 PATH 环境变量中:export PATH=$PATH:/usr/local/redis/bin
然后,您应该能够直接运行
redis-cli
。 -
永久添加
redis-cli
到 PATH:
要永久添加redis-cli
到 PATH,您需要将上述export
命令添加到您的 shell 配置文件中,例如~/.bashrc
或~/.bash_profile
。然后,重新加载配置文件或重新登录。 -
创建符号链接:
另一个选项是将redis-cli
创建为/usr/local/bin
或其他已在 PATH 中的目录的符号链接:sudo ln -s /usr/local/redis/bin/redis-cli /usr/local/bin/redis-cli
这允许您从任何目录运行
redis-cli
。
确保在执行这些步骤之前,您已经知道redis-cli
的实际位置。如果不确定,请使用find
命令来查找它。