Windows安装Redis
- 背景
 - 安装
 - 配置
 - 开机自启
 - 补充: 在Windows中配置jar自启动
 
- 设置密码
 - 暂时
 - 永久(推荐)
 
背景
Redis以其优异的性能备受青睐. 成为开发人员离不开的软件一直, 相信愿意点开观看此文的人DDDD
最近因为需要在Windows服务器上面搭建各种项目运行环境, 其中就包括Redis
因为后续可能会指导其他人进行安装, 因此干脆将教程文档以博客的形式进行记录留存
安装
本文仅介绍Windows下安装Redis, 其他方式以及Redis使用介绍请点击蓝色链接进行查看:
Linux下安装见: Redis技术第二章
Docker下安装见: Docker技术第七章
-  
下载地址: github
需要vpn, 如果没有vpn可以下载本博客绑定的资源附件

 -  
安装
下载好.msi的镜像安装文件之后, 双击进行安装. 如下图, 一直next即可

ps: 如果没有手动设置安装位置, 默认位于C:\Program Files\Redis目录下(下面会用到)
将其加入系统环境变量, 作用是可在cmd命令下通过本地shell进行连接

 -  
访问redis-cli
可以双击打开C:\Program Files\Redis目录下的redis-cli.exe
也可以cmd打开命令行然后输入redis-cli -h 127.0.0.1进行访问(需要上面勾选加入到系统环境变量才可以)

 
配置
开机自启
在Windows中, 所有运行的程序都是以服务的形式运行,
因此我们只要将该服务交由系统托管, 由系统进行自动重启即可.
- 进行服务管理
Win+R组合键进入运行窗口, 输入services.msc进入服务管理页面
找到Redis, 查看Redis服务的启动类型是否是自动, 自动代表交给系统来托管, 系统重启或开启时自动启动
类似Spring, 将bean注入到Spring容器, 由容器自动管理bean的生命周期(创建和销毁等).

ps: 如果启动类型是手动, 则双击该服务, 将启动类型重新选择成自动即可

 
补充: 在Windows中配置jar自启动
因为某些原因, jar包在启动之后无法注册到服务, 因此我们无法通过上述的方式配置自启动
因此利用Windows计划任务程序自动执行Windows脚本的方式启动项目变成为了首选, 步骤如下
-  
前提: 运行jar包需要安装jdk并配置环境变量

 -  
编写Windows启动脚本
.bat
chcp 65001可以避免窗口显示内容出现乱码chcp 65001 @title 运行时左上角的shell窗格名称 java -jar jar名称 pause -  
找到计算机管理

 -  
创建基本任务

 -  
设置任务名称和描述

 -  
设置任务触发条件

 -  
设置任务操作

 -  
指定任务启动脚本/批处理程序

 
设置密码
请根据自己Redis服务是否会重启等实际情况来选择暂时配置还是永久配置
暂时
通过redis-cli 下设置密码, 优点是不重启就可生效, 缺点则是重启后失效, 需要重新配置
之前本人就是这样配置的, 但是因为Windows不定时重启导致重启后需要重新手动配置密码. 还是有些麻烦的
-  
在
redis-cli手动设置
打开redis-cli.exe, 输入CONFIG SET requirepass "密码" -  
输入
auth 密码验证密码是否成功

 
永久(推荐)
通过redis-cli 下设置密码, 优缺点和暂时生效的方式相反.
有点是重启之后也会生效, 缺点是配置后必须重启
-  
查看Redis服务启动时, 使用了那个配置文件
在上面配置开机自启时, 我们可以在服务详情中查看到Redis服务启动时, 使用了哪个配置文件
win+R->cmd->services.msc->Redis, 可以看到使用的是Redis安装目录下的redis.windows-service.conf
因此我们需要对此文件redis.windows-service.conf进行修改

ps: 如果这里没有跟配置文件地址, 那么我们可以手动关闭后, 在Redis安装目录下, 打开shell
./redis-server.exe --service-install redis.windows-service.conf -  
找到该文件之后, 进行全局搜索, 搜索
requirepass, 找到如下区域

 -  
配置之后, 依旧在服务页面, 重启服务即可
注意别点击错别的服务了, 以至于后续会给你造成配置文件配置了, 但是失效的错觉!!!

 -  
rediis-cli验证是否生效

 
参考博客
 https://blog.csdn.net/Itmastergo/article/details/131569908
 https://blog.csdn.net/gmm313/article/details/129835401
 https://blog.51cto.com/ios9/5374277


















