auto: sync OpenClaw config 2026-09-17 22:13

This commit is contained in:
2026-09-17 22:13:37 +08:00
parent a48974bf4a
commit e21152e1a9
9 changed files with 368 additions and 23 deletions
@@ -20,19 +20,20 @@ description: "管理按摩放松记录:查询/新增技师联系人(cc_contr
- 口令存 `~/.openclaw/.env``DB_PASSWORD_放松保健`,由脚本内部读取(不进命令行、不打印)
- **禁止 root、禁止 docker exec 直连、禁止跨库**;旧写法(root 账号、`db-query --database "按摩放松"`)已废弃
### 中文乱码 / 写入失败(实测坑
### 中文读写:无需再手写 SET NAMES2026-09-17 起
`db-conn.sh` 的 mysql 客户端连接字符集默认是 **latin1**(读写都受影响;这是 `db-conn.sh` 层面的行为,**其他 agent 的库同样适用**):
`db-conn.sh` 4 处 mysql 调用点已统一带 `--default-character-set=utf8mb4`,**中文读写直接用即可,不必再在 SQL 前加 `SET NAMES utf8mb4;`**(实测 `select @@character_set_client` 返回 utf8mb4;中文字段写入 + 回读无 1265、无乱码)。这是 `db-conn.sh` 层面的行为,**其他 agent 的库同样适用**
- 读:不带 `SET NAMES utf8mb4;` 时中文列全部返回 `???`
- 写:中文 INSERT/UPDATE 报 `ERROR 1265 Data truncated for column '<列名>'`
把该语句放在同一条 `--sql` 的最前面即可正常读写:
若仍出现中文返回 `???` 或写入报 `ERROR 1265 Data truncated for column '<列名>'`
```bash
~/.openclaw/scripts/db-conn.sh wellness --sql "SET NAMES utf8mb4; SELECT contract_name,record_locale,comment FROM cc_contract_record ORDER BY record_date DESC LIMIT 5"
~/.openclaw/scripts/db-conn.sh wellness --sql "select @@character_set_client"
```
返回不是 utf8mb4,说明脚本被改动或调用到了旧副本——报给杨轩修脚本,不要靠每条 SQL 手动兜底。
修复前写入的历史行可能仍是乱码(如 `早上...`),字符集修复**不会自动回填**历史数据,需单独处理。
## 表结构
### cc_contract — 技师/联系人