windows上安装Redis
windows上安装Redis
下载:
https://github.com/tporadowski/redis(官方不提供windows版)
配置文件里设置密码:requirepass 123456
添加服务的命令:
redis.windows-service.conf
表示所使用的配置文件.
redis-server --service-install redis.windows-service.conf --loglevel verbose
启动服务:redis-server --service-start
停止服务:redis-server --service-stop
卸载服务:redis-server --service-uninstall
连接:
redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456
或者:
C:\Redis>redis-cli
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
多个Redis服务
首先修改配置文件,确保端口不能冲突。
还有就是服务名不能冲突!!
安装 Redis 服务
redis-server --service-install redis.windows.conf --loglevel verbose --service-name Redis_2
启动 Redis 服务
安装完毕后,你可以启动 Redis 服务。使用以下命令启动 Redis 服务:
redis-server --service-start --service-name Redis_2
停止 Redis 服务:
redis-server --service-stop --service-name Redis_2
卸载 Redis 服务:
如果你不再需要 Redis 服务,可以通过以下命令卸载它:
redis-server --service-uninstall --service-name Redis_2
与windows服务相关的一些命令(使用cmd)
sc qc
查看服务配置(Query Config)
sc qc Redis_2
sc query
查询服务状态(Query State)
sc query Redis_2
使用 netstat 命令查看端口 (也能用于:查找特定 PID 对应的端口)
你可以使用 netstat 命令来列出系统上所有的活动连接和它们的端口。要查找特定服务的端口,可以过滤输出。
例如,要查看 Redis 默认的端口(6379)占用情况:
netstat -ano | findstr 6379
-a:显示所有连接和监听端口。
-n:以数字形式显示地址和端口号。
-o:显示每个连接所属的进程 ID(PID)。
依次为:协议 本地地址 外部地址 状态 PID
,这条记录表示 Redis 正在本地监听端口 6379,等待客户端(本地或远程)连接。
netstat -ano | findstr 17160
使用 tasklist 查看 PID 对应的进程名称
一旦你知道了进程 ID(PID),你可以使用 tasklist 命令查看该 PID 对应的进程名称。
tasklist /FI "PID eq 17160"
使用 tasklist 查看进程名称
对应的 PID
tasklist /FI "IMAGENAME eq redis-server.exe"
使用 PowerShell
由服务名
输出服务的进程 ID(PID)
(good good,使用真正的服务名而不是进程名)
Get-WmiObject Win32_Service | Where-Object { $_.DisplayName -eq "Redis" } | Select-Object Name, ProcessId
补充:
Get-WmiObject -Class Win32_Service | Where-Object { $_.ProcessId -eq 17160 }
查找 PID 所占用的端口
Get-NetTCPConnection -OwningProcess 17160
一条命令(花里胡哨)
将 netstat 和 tasklist 输出结合起来,通过以下命令找出某个端口对应的进程名称
:
netstat -ano | findstr "6379" | for /f "tokens=5" %a in ('more') do tasklist /FI "PID eq %a"
使用powershell
Get-NetTCPConnection -LocalPort 6379 | ForEach-Object { (Get-WmiObject Win32_Process -Filter "ProcessId = $($_.OwningProcess)").Name }