CockroachDB 服务口
分布式 SQL 数据库 CockroachDB 的默认服务端口:节点之间的复制流量与客户端 SQL 连接都走 26257,线协议兼容 PostgreSQL,因此 psql 与大多数 PostgreSQL 驱动可以直接连它,Web 管理界面另在 8080。
基本信息
| 服务 | CockroachDB |
|---|---|
| 协议 | TCP(PostgreSQL 线协议,节点间也用同端口) |
| 默认端口 | 26257(管理界面 8080) |
| 客户端 | cockroach sql、psql、PostgreSQL 驱动 |
| 暴露面 | 仅应用与集群内网 |
典型使用场景
- 应用用 PostgreSQL 驱动接入分布式 SQL
- 集群扩缩容与节点状态查看
- 开启证书模式后的安全连接
- 多区域部署下的就近读写
- 排障:确认节点间复制是否正常
连接与状态核对
连接与状态核对
cockroach sql --host=node01:26257 --certs-dir=certs --execute 'SELECT version()'
cockroach node status --host=node01:26257 --certs-dir=certs
ss -lntp | grep 26257
# 单节点调试: cockroach start-single-node --insecure排障与核对
| 检查项 | 做法 | 异常表现 |
|---|---|---|
| 监听 | ss -lntp | grep 26257 | 端口不在:节点未启动或被网络策略拦 |
| 认证模式 | 连接参数与证书目录 | insecure 模式下任何人可连,等同管理员 |
| 节点状态 | node status 输出 | 有节点离线:检查存活与磁盘 |
| 复制 | 界面或指标中的副本状态 | 副本落后:节点间网络或负载问题 |
早期版本常以 insecure 模式启动,那种状态下任何能连 26257 的人都是管理员;新版本默认要求证书,迁移或临时调试时仍要避免退回 insecure。
同端口承担两类流量
26257 上既有客户端 SQL,也有节点之间的内部通信,两者共用端口会让网络策略变复杂:放通给应用往往同时放通了集群内部流量。规划时应按调用方向区分来源,而不是简单地按端口统一放行。
用 PostgreSQL 驱动连接时要留意方言差异:多数语句兼容,但分布式事务、序列与自增的实现在单机数据库上表现不同,遇到差异先查版本文档再改应用。
沿用 insecure 启动:任何能连 26257 的人都是管理员,权限与数据同时敞开。
扩缩容时留意证书的连带变更:新增节点要走同样的签发流程,漏签会出现节点进程起得来、却始终无法加入集群的情况。