📜  无法创建服务器 TCP 侦听套接字 *:6379:绑定:地址已在使用中 (1)

📅  最后修改于: 2023-12-03 15:10:25.936000             🧑  作者: Mango

无法创建服务器 TCP 侦听套接字 *:6379:绑定:地址已在使用中

介绍

当一个程序员在运行 Redis 服务器时,可能会遇到这种错误消息:“无法创建服务器 TCP 侦听套接字 *:6379:绑定:地址已在使用中”。这个错误通常是由于某个其他程序正在占用 Redis 服务器需要使用的端口。因此,Redis 服务器无法在该端口上监听连接请求,也无法正常工作。

原因

该错误的原因是因为Redis服务所需要的端口已经被系统中的其他程序占用了。因此,当Redis服务器试图在该端口上监听连接请求时,它无法绑定该端口并启动服务器。

解决方案

为了解决这个问题,可以通过以下方式:

  1. 检查系统中是否有其他程序正在监听相同的端口。可以使用命令 lsof -i :6379 查看系统中所有使用 6379 端口的进程。然后可以通过终止这些进程来释放端口,使 Redis 服务器能够使用它。

  2. 可以在 Redis 的配置文件中为 Redis 服务器指定其他端口,以避免使用被占用的端口。可以通过编辑 Redis 配置文件 redis.conf 来修改 Redis 服务器的配置。在文件中找到 "port "的配置项,将其改为 Redis 可以使用的其他端口。

# Redis 配置文件中
port 6379

替换为

# Redis 配置文件中
port 6380
  1. 如果其他方案都无法解决问题,则可能需要更改系统中其他程序所使用的端口。这可能需要更改那些程序的配置文件,以便它们使用其他端口。如果不知道程序具体的配置文件位置,可以使用以下命令查找:
sudo lsof -i -P -n | grep LISTEN

该命令将显示系统中所有正在监听端口的程序及其端口号,以及它们所在的进程 ID。

总结

在 Redis 服务器上发生无法创建服务器 TCP 侦听套接字 *:6379:绑定:地址已在使用中 的错误通常是由于某个其他程序正在占用 Redis 服务器需要使用的端口。通过检查系统进程和端口使用情况,修改 Redis 配置文件或更改其他程序使用的端口、配置文件可以解决这个问题。