Linux怎么安装Redis Linux搭建Redis服务详细步骤【推荐】
技术百科
穿越時空
发布时间:2026-01-25
浏览: 次 Redis在Linux中部署失败通常因缺少编译工具、配置未适配或服务未注册;可通过源码编译安装、配置守护进程、systemd/SysV服务注册及连通性测试完*流程部署。
如果您希望在Linux系统中部署Redis服务,但尚未完成基础环境配置与服务启动,则可能是由于缺少编译工具、配置未适配或服务未正确注册所致。以下是完成Redis安装与服务搭建的多种可行路径:
一、使用源码编译安装(通用兼容方案)
该方法适用于所有主流Linux发行版,通过官方源码构建二进制文件,可精确控制安装路径与版本。
1、创建专用安装目录:mkdir -p /usr/local/redis
2、进入源码存放目录并下载稳定版压缩包:cd /usr/local/src && wget https://download.redis. 
3、解压并进入源码目录:tar xzf redis-7.2.4.tar.gz && cd redis-7.2.4
4、安装编译依赖(Ubuntu/Debian):sudo apt update && sudo apt install build-essential tcl wget -y
5、安装编译依赖(CentOS/RHEL):sudo yum groupinstall "Development Tools" -y && sudo yum install tcl wget -y
6、执行编译:make
7、安装至指定目录:sudo make install PREFIX=/usr/local/redis
8、复制默认配置文件:sudo cp redis.conf /usr/local/redis/etc/redis.conf
9、创建配置与数据目录:sudo mkdir -p /usr/local/redis/etc /var/lib/redis && sudo chown redis:redis /var/lib/redis
二、配置Redis守护进程与网络访问
为使Redis以系统服务方式长期运行并支持远程连接,需修改关键配置项,避免仅限本地回环访问。
1、编辑配置文件:sudo nano /usr/local/redis/etc/redis.conf
2、将daemonize no改为:daemonize yes
3、将supervised no改为:supervised systemd
4、将dir /usr/local/bin改为:dir /var/lib/redis
5、注释或修改绑定地址以允许外部访问:# bind 127.0.0.1 ::1 → 改为 bind 0.0.0.0
6、关闭保护模式(若需远程连接且无密码):protected-mode no
7、设置访问密码(可选但推荐):requirepass YourSecurePassword123
三、通过systemd注册为系统服务(推荐生产环境)
使用systemd管理Redis进程可实现自动重启、日志集成与依赖控制,优于传统rc.local方式。
1、创建systemd服务单元文件:sudo nano /etc/systemd/system/redis-server.service
2、写入以下内容:
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=notify
User=redis
Group=redis
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli shutdown
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
3、重载systemd配置:sudo systemctl daemon-reload
4、启用开机自启:sudo systemctl enable redis-server
5、立即启动服务:sudo systemctl start redis-server
6、检查运行状态:sudo systemctl status redis-server
四、使用初始化脚本注册为SysV服务(兼容旧版系统)
适用于不支持systemd的CentOS 6或定制化精简系统,通过init.d脚本实现服务管理。
1、复制官方初始化脚本:sudo cp /usr/local/src/redis-7.2.4/utils/redis_init_script /etc/rc.d/init.d/redis
2、赋予执行权限:sudo chmod +x /etc/rc.d/init.d/redis
3、编辑脚本头部参数,确保路径匹配实际安装位置,例如修改:EXEC=/usr/local/redis/bin/redis-server
4、设置端口与配置路径变量,如:REDISPORT=6379 和 CONF="/usr/local/redis/etc/redis.conf"
5、添加到系统服务管理:sudo chkconfig --add redis
6、设置开机启动级别:sudo chkconfig redis on
7、启动服务:sudo service redis start
五、验证安装与基础连通性测试
确认Redis服务已正常监听并响应请求,是部署完成的关键验证环节。
1、检查进程是否存在:ps aux | grep redis-server
2、查看端口监听状态:sudo netstat -tuln | grep :6379
3、本地客户端连接测试:/usr/local/redis/bin/redis-cli ping
4、若返回PONG,表示服务就绪;若配置了密码,先执行:auth YourSecurePassword123
5、远程连接测试(从另一台机器):redis-cli -h your_server_ip -p 6379 ping
# 可选
# 可通过
# 适用于
# 如果您
# 仅限
# 不支持
# 配置文件
# redis
# 工具
# https
# word
# 服务管理
# linux
# centos
# 端口
# ubuntu
# linux系统
# debian
# 连通性
# var
# 解压
# protected
# 环境配置
# 未注册
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- c++怎么操作redis数据库_c++ hired
- 如何在Golang中理解指针比较_Golang地址
- 如何在Golang中实现自定义Benchmark_
- MAC如何隐藏文件夹及文件_MAC终端命令隐藏与第
- Golang如何避免指针逃逸_Golang逃逸分析
- php本地部署后数据库连接报错_1045acces
- Win10如何卸载WindowsDefender_
- Win11如何设置自动关机 Win11定时关机命令
- PHP的Workerman对架构扩展有啥帮助_应用
- php怎么下载安装后无法解析php文件_服务器配置
- 微信JSAPI支付回调PHP怎么接收_处理JSAP
- Win11怎么制作U盘启动盘_Win11原版系统安
- Windows服务无法启动错误1067是什么_进程
- mac怎么退出id_MAC退出iCloud账号与A
- Win10怎样卸载iTunes_Win10卸载iT
- Win10怎样安装PPT模板_Win10安装PPT
- 如何在Golang中处理数据库事务错误_回滚和日志
- 如何在 Go 中创建包含映射(map)的切片(sl
- Windows蓝屏错误0x00000023怎么修复
- Mac的“调度中心”与“空间”怎么用_Mac多桌面
- Windows10电脑怎么设置自动连接WiFi_W
- Win11无法识别耳机怎么办_解决Win11插耳机
- c++中的std::conjunction和std
- Win11开始菜单打不开_修复Windows 11
- 如何在Golang中引入测试模块_Golang测试
- 如何在Golang中使用container/hea
- 如何在 Windows 11 中使用 AlomWa
- 如何在Golang中捕获HTTP服务器错误_Gol
- win11如何清理传递优化文件 Win11为C盘瘦
- Python如何创建带属性的XML节点
- php接口返回数据乱码怎么办_php接口调试编码问
- Python函数接口稳定性_版本演进解析【指导】
- Python对象生命周期管理_创建销毁说明【指导】
- Win10怎么限制单程序CPU占用上限_Win10
- 如何使用 Selenium 正确获取篮球参考网站球
- Windows11怎么自定义任务栏_Windows
- Windows电脑如何截屏?(四种快捷方法)
- windows如何修改文件默认打开方式_windo
- LINUX怎么查看进程_LINUX ps命令查看运
- 如何将竖排文本文件转换为横排字符串
- Windows10系统更新错误0x80070002
- mac本地php环境如何开启curl_curl扩展
- c++怎么设置线程优先级与cpu亲和性_c++ 多
- c++中如何使用std::variant_c++1
- VSC怎样在Linux运行PHP_Ubuntu系统
- PythonPandas数据分析项目教程_时间序列
- Windows10怎样设置家长控制_Windows
- Win11如何设置电源计划_Win11电源计划优化
- Windows10怎样连接蓝牙设备_Windows
- 如何在 Go 中正确测试带 Cookie 的 HT

QQ客服