Skip to content

listen_port

参数名称

listen_port

参数解释

数据库默认TCP侦听端口。

用于数据库对外服务,单节点模式或集群配置有Q角色节点才会进行侦听。

默认值

5138

取值范围

[1024,65535]

访问权限

R/W

是否全局参数

修改生效方式

listen_port不支持在数据库中执行SET命令修改,只能通过修改xugu.ini文件,重启系统后生效。

操作步骤

  1. 在数据库中执行以下命令中止数据库服务,退出控制台工具。

    SQL> SHUTDOWN
  2. 执行以下命令确认需要被设置的端口是否被占用。

    • Windows:
      netstat -ano | findstr <port>
    • Linux:
      netstat -tuln | grep <port>
  3. 修改SETUP文件夹下xugu.ini文件中的listen_port参数为新的端口号,保存并退出。

  4. 重新启动数据库服务,使用新设置的端口号连接数据库。

  5. 在数据库中执行以下命令查看当前侦听端口。

    SQL> SHOW listen_port

注意事项

端口冲突将导致侦听失败,数据库进程退出。

数据库侦听建立是数据库启动过程的最后一个步骤,虽然此时出现端口冲突导致启动失败进程退出,但启动流程中其他操作(如加载系统表,加载JOB,初始化内存,REDO,UNDO,集群握手等)已完成。

非必要不建议修改listen_port,在测试环境如果需要单个物理机上启动多个数据库服务,此参数可按实际情况修改。

注意:

  • 修改端口注意不要和其他程序端口冲突(如其他数据库端口、中间件端口等)。
  • 设置listen_port < 1024可启动成功,但不建议使用小于1024的端口,0至1023端口默认固定分配给某个服务。
  • 设置listen_port > 65535可启动成功且日志无报错信息,但通过该端口不可建立连接。
  • 端口发生冲突时,启动数据库会报create_server_port faild错误。

侦听端口配置异常及风险:

  • 集群模式单个节点加入时,节点加入成功后又退出。
  • 集群模式整个集群启动时,集群启动成功立刻出现节点死亡(可能是MASTER节点和其他任意类型节点,甚至整集群)。
  • 操作系统防火墙必须开放监听端口,否则用户或程序无法访问数据库。