连接配置清单-换服务器必读.md 9.2 KB

连接配置清单 —— 换中间件服务器照这个改

用途:中间件(MySQL/Redis/Nacos/Kafka/FastDFS/MQTT)换一台服务器时,照本文逐项改 IP/端口/账号密码即可,不用满仓找。 当前中间件部署:服务器测试环境 192.168.0.108(详见 服务器测试环境.md,本文连接信息与之对齐)。 最后同步:2026-06-19。改动来源见 进度/交接卡.md 同日两段。

✅ 2026-06-19 集群实测核验(claude 恢复会话)

本文配置已在真实集群启动中验证,结论:

  • 真实凭证连通全过:MySQL root/root(7 库表数全对)、Redis 123456(+PONG)、Nacos nacos/nacos(鉴权已关)、Kafka(oplog producer 连上)、MQTT 端口通;均为新服务器 192.168.0.108
  • 6 微服务真实启动 + 注册 Nacos:gateway(10010)/tl-control(10050)/business-pc(10020)/oplog(10060)/data-transmission(10030)/surface;Hikari 连库、Kafka producer、Nacos 注册均成功。
  • 业务闭环已验:登录(gateway,admin/123456 拿 token)、tl-control 读(getAlarmTypeList 返真实数据)+ 写(update alarm_type mute 入库查实再还原)、business-pc 读(查 DB 返标准结果)、oplog(Kafka→operation_log 入库)。
  • ⚠ 补执行了 2 条漏掉的 DB 迁移(否则系统报错):operation_log 表(log 库)、autofocus-data-layer(aivfo_tl_setting 加对焦列,tl-control 启动曾因缺列报错)。
  • ✅ gateway 路由已验证通:经 gateway(10010)转发下游连续 5/5 返完整数据(getAlarmTypeList 1806B、写 update 真实入库)。注:服务刚重启未启动完时经 gateway 会短暂返空 200(负载均衡无健康实例),等服务起完即恢复——非 bug。operate/front 走的 gateway→微服务→DB 路径通。
  • ⚠ business-app 配置实锤错误:见下方第二节注 5(已从"疑"升级为"确认")。

一、中间件连接信息(当前 192.168.0.108)

组件 IP:端口 账号 密码 业务里怎么连
MySQL 192.168.0.108:3306 root root Java 各服务 jdbcUrl;C# 不直连
Redis 192.168.0.108:6379 123456 ✅实测可连(+PONG)但 全仓代码无任何服务使用 Redis(无 data-redis/RedisTemplate/Jedis/Redisson 依赖)→ 部署了但不参与运行,换机无需为它改任何配置
Nacos 192.168.0.108:8848(+9848) nacos nacos Java spring.cloud.nacos.discovery.server-addr
Kafka 192.168.0.108:9092 Java aivfo.kafka.properties.ips;C# operate 的 kfkaIP(oplog)
FastDFS tracker 22122 / storage 23000 / nginx 8888 Java aivfo.dfs.fastdfs.trackerServers(只一个 tracker:22122)
MQTT(Mosquitto) 192.168.0.108:1883 aivfo aivfo Java aivfo.mqtt.clients[0].url;C# mqttIp

常用 MQTT topic:TL/House/pcTL/House/surfaceTL/House/appTL/DATA/{tlSn}


二、Java 微服务端 —— 换机只改每服务一行 server.ip

机制:每个激活服务的 application-{profile}.properties 顶部有 server.ip=,其下各连接(MySQL/Nacos/Kafka/FastDFS)统一写 ${server.ip}换服务器 = 把下表 8 个文件的 server.ip 改成新 IP(连接行不用动)。激活 profile:除 aivfo-service=pro,其余均 local

服务 配置文件(相对仓库根) profile 连的中间件 库名
gateway aivfo-gateway/aivfo-gateway-lanucher/src/main/resources/application-local.properties local MySQL/Nacos/FastDFS aivfo-auth
data-transmission aivfo-data-transmission/aivfo-data-transmission-lanucher/.../application-local.properties local MySQL/Nacos/Kafka/FastDFS aivfo-tl(中划线)
oplog aivfo-oplog/src/main/resources/application-local.properties local MySQL/Nacos/Kafka log
business-pc aivfo-business-manage/.../aivfo-business-manage-pc-lanucher/.../application-local.properties local MySQL/Nacos/FastDFS aivfo_tl(下划线)
business-surface .../aivfo-business-manage-surface-lanucher/.../application-local.properties local MySQL/Nacos*/FastDFS aivfo_tl
business-app .../aivfo-business-manage-app-lanucher/.../application-local.properties local MySQL/Nacos/FastDFS ⚠ aivfo-tl(中划线,疑指错库)
tl-control aivof-tl-control/aivfo-tl-control-lanucher/src/main/resources/application-local.properties local MySQL/Nacos/MQTT aivfo_tl_setting
aivfo-service aivfo-service/src/main/resources/application-pro.properties pro MySQL aivfo_services

换机要点 / 注意:

  1. 8 个 server.ip 改新 IP 即可覆盖 MySQL+Nacos+Kafka+FastDFS+MQTT。
  2. MySQL 账号密码:全部 root/root(与服务器一致)。若新服务器账号变,改各档 aivfo.mybatis-plus.datasource.username/password。(历史坑:app/surface 曾是 Aivfo.2017,2026-06-18 已统一 root。)
  3. Redis:配置文件无显式 host;若新服务器 Redis 需配置,要确认框架默认是否够用(密码 123456)。
  4. FastDFS:服务器只一个 tracker → ${server.ip}:22122(勿写回双 tracker :22122,:22123)。
  5. ⚠⚠ business-app 配置实锤错误(2026-06-19 确认,非本次换机引入,git 改前即如此):aivfo-business-manage-app-lanucher/application-local.propertiespc 档的整体克隆——spring.application.name=aivfo-business-manage-pc-devserver.port=10020contextPath=/api/businessManage/pcplatform=pcbase-package=...manage.pc.controller 全是 pc;且连错库 aivfo-tl(中划线,实测仅 4 张视频表 video/video_pictures/video_splice/video_update,是 data-transmission 的库)≠ pc/surface 的 aivfo_tl(下划线,25 张业务表)。后果:①与 pc 端口/服务名冲突,二者不能同起(实测集群只起了 pc,未起 app);②即便单起,连 aivfo-tl 取不到业务表(embryo/case_info/picture 等都不在该库)。建议修法(待你拍板,涉及改运行行为故未擅改):app 档应=pc 档结构 + app 专属身份(name=aivfo-business-manage-app-dev、contextPath=/api/businessManage/app、platform=app、base-package=...app.controller)+ DB 改 aivfo_tl(下划线)。
  6. surfacenacos.discovery.enabled=false(本就不注册)。
  7. ai-middleware 激活档无任何中间件连接(只有文件路径),换机不用动。
  8. 非激活 profile(-dev/-test/-hospital)里有过期 IP,当前不生效,如启用需另改。

三、C# 客户端 —— 配 IP/端口的地方(operate / front)

★★ 两个大坑(改前必看)★★

  1. #if DEBUG 会覆盖 App.config:AppData.cs 构造函数里有 #if DEBUG 块,DEBUG 编译时无条件写死指向外网 test-gateway.aivfo.com / 211.149.139.131,App.config 完全不生效。→ 部署给客户/连测试服务器,必须 Release 编译
  2. outInter 内外网开关:App.config outInter=1 时,代码改用硬编码外网地址(忽略 App.config 的 url/mqtt)。→ 连内网中间件必须 outInter=0
    • 满足"Release + outInter=0"后,下表 App.config 的键才真正生效。

operate(ivf_tl_operate_2.0/ivf_tl_Operate/)

App.config(App.config)键 → 代码读取处 AppData.cs:79-82、Kafka 在 App.xaml.cs:72:

含义 当前值 换机设为
outInter 内/外网(0=内网读本表) 0 0
urlIp + urlPort gateway 地址 http://127.0.0.1 : 10010 gateway 所在机(微服务在本机→127.0.0.1)
mqttIp + mqttPort MQTT broker 192.168.0.108 : 1883 MQTT 所在机=192.168.0.108
kfkaIP + kfkaPort Kafka(oplog 操作日志,M8) 192.168.0.108 : 9092 Kafka 所在机=192.168.0.108

硬编码默认(App.config 缺键/DEBUG 时才用):AppData.cs:59 BaseUrl、:61 MqttIp;App.xaml.cs:72 kfkaIP 默认 127.0.0.1。

front 中央管理端(aivfo-front-manament-2.0/ivf_tl_Manage/)

App.config 键 → 代码读取处 AppData.cs:83-86:

含义 当前值 换机设为
outInter 内/外网 0 0
urlIp + urlPort gateway 地址 http://192.168.1.92 : 10010 ⚠ gateway 所在机(待按 front 实际部署机定)
mqttIp + mqttPort MQTT broker 192.168.0.108 : 1883 192.168.0.108

front 无 Kafka/oplog 接入。硬编码默认 AppData.cs:123-125

control(ivf_tl_control_2.0/ivf_tl_ControlTest/App.config)

urlIp/kfkaIP/mqttIp(值 192.168.0.91),但 control 合并为 operate 单进程后,运行期读 operate 的 App.config,ControlTest 这份失效(且该工程计划退役,见 01 §5.5)。换机无需改它。


四、换服务器操作清单(checklist)

  1. 新服务器装好 6 中间件,记下新 IP 与端口/账号密码(更新本文第一节 + 服务器测试环境.md)。
  2. Java:改第二节 8 个 server.ip 为新 IP;如账号密码变,改各档 datasource user/pwd。
  3. C#:确认 Release 编译 + outInter=0;按第三节改 operate/front 的 urlIp/mqttIp/(operate)kfkaIP
  4. Redis 若启用:确认 host/密码生效。
  5. 建库 + migration(见 进度状态.yaml 部署前置)。
  6. 起服务冒烟:gateway→各微服务注册 Nacos→operate 登录→MQTT 收发→拍图入 FastDFS→操作日志入 operation_log。