bind_transport_exception: bind_transport_exception (Address already in use)(地址已被占用)
Elasticsearch含义
Elasticsearch 节点在启动时无法绑定套接字以监听 transport(节点间通信)或 HTTP 端口。通常伴随 'Address already in use' 子错误,节点无法启动。
原因
请求的端口(默认 transport 为 9300,HTTP 为 9200)已被其他进程占用;最常见的是同一节点的前一个实例未正常关闭、同一主机上的另一个 ES 实例/服务发生冲突,或 network.host/port 配置错误。权限/访问限制也可能导致无法绑定。
解决方法
找出占用端口的进程(Linux:ss -ltnp | grep 9300 或 lsof -i:9300)并终止冲突的进程,或为节点分配其他端口(transport.port / http.port)。确认之前的 ES 进程确实已退出。确保 network.host 和端口范围设置正确且可绑定。然后重启节点。
同一数据库的其他条目
- max_bytes_length_exceeded_exceptionDocument contains at least one immense term that is too long(文档中至少包含一个过长的超大词项)
- illegal_argument_exception_total_fieldsLimit of total fields has been exceeded(已超出字段总数限制)
- verification_exceptionverification_exception: Found N problem(s) — Unknown column / Unknown index (ES|QL, SQL, EQL)(验证异常:发现 N 个问题 —— 未知列/未知索引)
- translog_corrupted_exceptiontranslog_corrupted_exception
- recovery_engine_exceptionrecovery_engine_exception
- snapshot_in_progress_exceptionsnapshot_in_progress_exception
- repository_verification_exceptionrepository_verification_exception