CentOS 6.4 是一款广泛使用的 Linux 发行版,虽然其生命周期已结束,但在某些遗留系统或特定环境中仍有所应用,Redis 作为一款高性能的内存数据库,常用于缓存、消息队列等场景,本文将详细介绍在 CentOS 6.4 系统上安装、配置和优化 Redis 的完整流程,帮助用户快速上手并确保系统稳定运行。

安装前的准备工作
在开始安装 Redis 之前,需要确保系统满足基本要求并完成必要的准备工作,建议以 root 用户或具有 sudo 权限的用户身份操作,以便执行安装和配置命令,更新系统软件包列表,确保所有依赖包为最新版本,可以通过运行 yum update -y 命令来完成系统更新,由于 Redis 是基于 C 语言开发的,需确保系统已安装 GCC 编译器和其他开发工具,可通过 yum groupinstall "Development Tools" -y 安装。
下载并编译安装 Redis
Redis 官方提供了源码包,用户可以选择从官网下载最新稳定版本或指定版本,以 Redis 5.0.8 为例,首先使用 wget 命令下载源码包,wget http://download.redis.io/releases/redis-5.0.8.tar.gz,下载完成后,通过 tar -zxvf redis-5.0.8.tar.gz 解压文件,进入解压后的目录,执行 make && make install 命令进行编译和安装,此过程可能需要较长时间,请耐心等待,安装成功后,Redis 的可执行文件会默认放置在 /usr/local/bin 目录下。
配置 Redis 服务
安装完成后,需要对 Redis 进行配置以满足实际需求,Redis 的主配置文件为 redis.conf,位于源码包的根目录,将其复制到 /etc/ 目录下以便管理,cp redis.conf /etc/redis/,随后编辑该文件,根据需求调整关键参数:port 指定 Redis 监听的端口号,默认为 6379;bind 限制 Redis 只接受来自特定 IP 的连接,建议绑定内网 IP 以提高安全性;requirepass 设置密码认证,避免未授权访问;maxmemory 和 maxmemory-policy 分别用于限制内存使用量和定义内存淘汰策略,配置完成后,保存文件并退出。
创建 Redis 系统服务
为了方便管理 Redis 进程,建议将其设置为系统服务,首先创建服务文件 /etc/init.d/redis,并添加以下内容:

#!/bin/bash
# chkconfig: 35 80 90
# description: Redis Service
. /etc/rc.d/init.d/functions
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis.pid
CONF="/etc/redis/redis.conf"
case "$1" in
start)
if [ -f $PIDFILE ]; then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]; then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping Redis..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
保存文件后,赋予执行权限 chmod +x /etc/init.d/redis,并使用 chkconfig --add redis 将其添加到系统服务列表中,通过 service redis start 启动 Redis 服务,并使用 chkconfig redis on 设置开机自启。
配置防火墙与安全设置
CentOS 6.4 默认使用 iptables 作为防火墙,需开放 Redis 使用的端口(如 6379),编辑 /etc/sysconfig/iptables 文件,添加 -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT 规则,然后重启防火墙服务 service iptables restart,建议通过 SELinux 策略限制 Redis 的访问权限,可通过 setsebool -P redis_can_connect_httpd 1 命令允许相关服务连接 Redis,对于生产环境,还需定期备份数据库(通过 save 或 bgsave 命令)并监控资源使用情况。
常见问题与优化建议
在使用 Redis 过程中,可能会遇到内存不足或连接超时等问题,可通过调整 maxclients 参数限制最大连接数,或优化数据结构减少内存占用,建议启用 Redis 的持久化功能(RDB 或 AOF),防止数据丢失,若 Redis 性能不佳,可考虑启用多线程模式(Redis 6.0+)或使用 Redis 集群架构提升吞吐量,定期检查日志文件 /var/log/redis/redis.log,有助于及时发现并解决问题。
相关问答 FAQs
如何在 CentOS 6.4 上检查 Redis 是否正常运行?
可以通过以下命令检查 Redis 服务状态:

service redis status
若服务未运行,可使用 service redis start 启动,通过 redis-cli ping 命令测试 Redis 连接,若返回 PONG 则表示服务正常。
Redis 突然无法连接,可能的原因及解决方法?
常见原因包括:防火墙拦截端口、Redis 服务未启动、密码错误或进程崩溃,可依次检查:
- 确认防火墙规则是否开放 6379 端口;
- 运行
service redis restart重启服务; - 使用
redis-cli -a yourpassword auth验证密码; - 查看日志文件定位错误信息,若问题依旧,可尝试删除 PID 文件
/var/run/redis.pid后重启服务。