当前位置: 首页 > news >正文

本地后台运行redis服务

如何实现关闭命令窗口不关闭redis服务?

在 Windows 环境下,如果你希望 关闭命令窗口后 Redis 服务仍然运行,可以采用以下几种方法:


方法 1:将 Redis 安装为 Windows 服务(推荐)

步骤 1:安装 Redis 服务

管理员权限的 CMD/PowerShell 执行:

redis-server --service-install redis.windows.conf --loglevel verbose
  • redis.windows.conf 是你的 Redis 配置文件(确保路径正确)。
  • --loglevel verbose 可选,用于设置日志级别。

步骤 2:启动 Redis 服务

redis-server --service-start

检查服务状态

sc query Redis

停止服务

redis-server --service-stop

卸载服务

redis-server --service-uninstall

优点:关闭 CMD 窗口后 Redis 仍会运行,适合长期使用。
缺点:需要管理员权限。


方法 2:使用 start /B 后台运行

如果不想安装服务,可以临时后台运行:

start /B redis-server.exe redis.windows.conf
  • /B 表示不创建新窗口,后台运行。
  • 关闭时需手动 taskkill
    taskkill /F /IM redis-server.exe
    

优点:简单快捷,不需要管理员权限。
缺点:关闭 CMD 后 Redis 仍然会关闭(不推荐长期使用)。


方法 3:使用 nssm(非官方服务管理器)

如果 Redis 自带的 --service-install 不稳定,可以用 nssm 管理:

  1. 下载 nssm
  2. 安装 Redis 服务
    nssm install Redis
    
  3. 在 GUI 界面设置:
    • Path: C:\redis\redis-server.exe
    • Startup directory: C:\redis\
    • Arguments: redis.windows.conf
  4. 启动服务
    nssm start Redis
    

优点:稳定,适合生产环境。
缺点:需要额外安装 nssm


方法 4:使用 PowerShell 后台任务

Start-Process -NoNewWindow -FilePath "redis-server.exe" -ArgumentList "redis.windows.conf"
  • -NoNewWindow 表示后台运行。
  • 关闭方式
    Get-Process redis-server | Stop-Process
    

优点:适合脚本化管理。
缺点:关闭 PowerShell 后 Redis 仍然会关闭(不推荐长期使用)。


方法 5:使用 winsw(Windows Service Wrapper)

  1. 下载 winsw
  2. 创建 RedisService.xml
    <service>
      <id>Redis</id>
      <name>Redis Server</name>
      <description>Redis Cache Server</description>
      <executable>C:\redis\redis-server.exe</executable>
      <arguments>redis.windows.conf</arguments>
      <log mode="roll"></log>
    </service>
    
  3. 安装并启动服务
    winsw install RedisService.xml
    winsw start RedisService.xml
    

优点:稳定,适合企业级部署。
缺点:配置稍复杂。


总结

方法适用场景关闭 CMD 后是否存活是否需要管理员权限
--service-install长期运行(推荐)✅ 是✅ 需要
start /B临时测试❌ 否❌ 不需要
nssm稳定服务管理✅ 是✅ 需要
PowerShell脚本化运行❌ 否❌ 不需要
winsw企业级部署✅ 是✅ 需要

最佳实践

  • 推荐方法 1(--service-install,适合大多数场景。
  • 如果 Redis 官方服务安装失败,可以用 方法 3(nssm方法 5(winsw
  • 如果只是临时测试,可以用 方法 2(start /B方法 4(PowerShell)

这样,即使关闭 CMD/PowerShell 窗口,Redis 仍然会继续运行!🚀

相关文章:

  • SpringMVC 拦截器(Interceptor)
  • 渗透测试:登录页面的测试-弱口令思路和实战
  • 计算机网络知识汇总
  • 【水印】水印识别的算法方案思考
  • 机器学习的一百个概念(5)数据增强
  • 习题2.2
  • 06-02-自考数据结构(20331)- 查找技术-动态查找知识点
  • C#: 输入(Console.ReadLine())和输出(Console.WriteLine())
  • Java-拼图小游戏跟学笔记
  • 前端各种for 循环
  • 算法:二维单调队列-P2216 [HAOI2007] 理想的正方形题解
  • 作文笔记16 点面结合
  • Trae AI 使用 APIkey 配置 Anthropic Claude BaseURL , gpt-4o,deepseek等大模型代理指南
  • c#使用forms实现屏幕截图
  • 在MFC中使用Qt(六):深入了解QMfcApp
  • flutter框架中文文档,android智能手机编程答案
  • 第十一章 VGA显示图片(还不会)
  • pod之间访问不通怎么排查?
  • 音视频开发---常用工具
  • JAVASE(十二)常用类(一)Object类
  • 什么网站做兼职最好/百度网页
  • 在线代理浏览器网站/短视频关键词优化
  • 做网站需要apache/学会计哪个培训机构比较正规
  • 专注徐州网站建设/廊坊seo优化
  • 手机会员卡管理系统/seo 深圳
  • 如何找人做网站/2023b站免费推广入口游戏