listen_port
参数名称
listen_port
参数解释
数据库默认TCP侦听端口。
用于数据库对外服务,单节点模式或集群配置有Q角色节点才会进行侦听。
默认值
5138
取值范围
[1024,65535]
访问权限
R/W
是否全局参数
是
修改生效方式
listen_port不支持在数据库中执行SET命令修改,只能通过修改xugu.ini文件,重启系统后生效。
操作步骤
在数据库中执行以下命令中止数据库服务,退出控制台工具。
SQL> SHUTDOWN
执行以下命令确认需要被设置的端口是否被占用。
- Windows:
netstat -ano | findstr <port>
- Linux:
netstat -tuln | grep <port>
- Windows:
修改SETUP文件夹下xugu.ini文件中的listen_port参数为新的端口号,保存并退出。
重新启动数据库服务,使用新设置的端口号连接数据库。
在数据库中执行以下命令查看当前侦听端口。
SQL> SHOW listen_port
注意事项
端口冲突将导致侦听失败,数据库进程退出。
数据库侦听建立是数据库启动过程的最后一个步骤,虽然此时出现端口冲突导致启动失败进程退出,但启动流程中其他操作(如加载系统表,加载JOB,初始化内存,REDO,UNDO,集群握手等)已完成。
非必要不建议修改listen_port,在测试环境如果需要单个物理机上启动多个数据库服务,此参数可按实际情况修改。
注意:
- 修改端口注意不要和其他程序端口冲突(如其他数据库端口、中间件端口等)。
- 设置
listen_port < 1024
可启动成功,但不建议使用小于1024的端口,0至1023端口默认固定分配给某个服务。- 设置
listen_port > 65535
可启动成功且日志无报错信息,但通过该端口不可建立连接。- 端口发生冲突时,启动数据库会报
create_server_port faild
错误。
侦听端口配置异常及风险:
- 集群模式单个节点加入时,节点加入成功后又退出。
- 集群模式整个集群启动时,集群启动成功立刻出现节点死亡(可能是MASTER节点和其他任意类型节点,甚至整集群)。
- 操作系统防火墙必须开放监听端口,否则用户或程序无法访问数据库。