# table-alias - 表结构同步技能 ## 状态 ✅ **单表模式已就绪** - 支持同步单张表,避免全量同步的耗时和风险 ⚠️ **准生产连接** - 需要在可访问 100.115.195.188:50036 的网络环境中执行 ## 快速开始 ### 单表同步(推荐) ```bash # 设置环境变量 export MYSQL_PWD_WIT=o2byaCkBvF1Y8S2L export MYSQL_PWD_SQL=5gynj20J # 同步单张表 cd ~/.openclaw/skills/table-alias ./scripts/sync_table.sh dmp_serp dmp_im_account_age ``` ### 全库同步 ```bash ./scripts/sync_table.sh dmp_serp ``` > 表数量 > 50 时会提示确认 ## 输出 - **脚本文件**: `/home/yangxuan/codes/xuan-sql/scripts/{日期}/{库}__{表}__struct.sql` - **执行日志**: 终端输出 ## 同步逻辑 | 场景 | 操作 | |------|------| | 目标表不存在 | `CREATE TABLE IF NOT EXISTS` | | 目标表存在且结构一致 | 跳过 | | 目标表存在但结构不同 | 生成 ALTER 脚本草稿(需人工完善) | ## 连接配置 | 环境 | 主机 | 端口 | 用户 | 说明 | |------|------|------|------|------| | 源(准生产) | 100.115.195.188 | 50036 | witsoftd | 只读 | | 目标(VPS) | 101.34.227.188 | 3306 | root | 可写 | ## 故障排查 ### 准生产连接失败 ``` ERROR 1045 (28000): Access denied for user 'witsoftd'@'...' ``` **原因**: - 密码错误 - IP 白名单限制(只能在 100.115.195.x 网段访问) **解决**: - 在正确的网络环境执行(如 VPS、内网机器) - 检查 `.env` 文件中的 `MYSQL_PWD_WIT` ### 表不存在 ``` 源表 dmp_serp.xxx 不存在 ``` **解决**: 确认表名正确,使用 `SHOW TABLES` 查看实际表名 ## 文件结构 ``` skills/table-alias/ ├── SKILL.md # 技能定义 ├── README.md # 本文档 ├── scripts/ │ └── sync_table.sh # 执行脚本 └── examples/ └── single-table.md # 单表示例 ``` ## 版本 - **v1.1.0** (2026-08-14) - 支持单表模式 - **v1.0.0** (2026-08-14) - 初始版本