Просмотр исходного кода

docs(数据库): 记录新服务器与本地隧道连接边界

详细说明当前数据库服务器、SSH 端口转发链路以及 input/runtime 两个库的职责。补充三个数据库账号的权限边界,并明确历史服务器只作为迁移来源,避免后续 E2E 误连旧环境。
SamLee 20 часов назад
Родитель
Сommit
84772eddc2
1 измененных файлов с 43 добавлено и 0 удалено
  1. 43 0
      script_build_host/DATABASE_CONNECTION.md

+ 43 - 0
script_build_host/DATABASE_CONNECTION.md

@@ -0,0 +1,43 @@
+# Script Build Host 数据库连接说明
+
+## 当前服务器
+
+- 当前数据库服务器:阿里云海外开发机 `47.245.103.121`
+- SSH 账号:`root`
+- MySQL 在远端只监听 `127.0.0.1:3306`
+- Host 输入库:`script_build_input`(11 张旧输入合同表,标准运行时只读)
+- Host 运行库:`script_build_runtime`(Mission、Snapshot、Artifact、Publication 和最终投影)
+- `8.219.112.74` 只是历史迁移来源,不是当前 Host 的运行数据库。不应再使用 `sam@8.219.112.74` 启动隧道。
+
+## Mac 连接方式
+
+MySQL 没有直接对公网提供数据库连接。Mac 启动 Host 前,必须建立 SSH 本地端口转发:
+
+```bash
+ssh -N \
+  -L 13306:127.0.0.1:3306 \
+  -i "/Users/samlee/Documents/工作环境配置/阿里云海外lsh开发机/ali-denet.pem" \
+  root@47.245.103.121
+```
+
+该终端需要保持运行。此时 `.env` 中的 `127.0.0.1:13306` 表示 Mac 本地隧道入口,其真实目标是:
+
+```text
+Mac 127.0.0.1:13306
+  -> SSH root@47.245.103.121
+  -> 远端 MySQL 127.0.0.1:3306
+  -> script_build_input(Read DSN)
+  -> script_build_runtime(Write/Final DSN)
+```
+
+Host 当前不会根据 `.env` 中的 SSH Host/Key 自动建立该 SSH 隧道。
+
+## 账号边界
+
+Host 使用三个隔离的 MySQL 账号:
+
+- `script_build_read`:读取 `script_build_input` 和授权的运行数据;应用 Read DSN 默认落在输入库。
+- `script_build_runtime`:写入 Host 运行数据。
+- `script_build_final`:执行最终发布事务。
+
+密码只保存在本地、被 Git 忽略的 `script_build_host/.env` 中,不应写入本文档或提交到 Git。