我正在为我的 django 项目进行 TDD 测试来测试 PostgresQL 连接,我意识到即使数据库不可用,连接测试也总是成功。 有人能说出问题是什么吗? 这是我的项目存储库: https://github.com/PeymaanEsi/alone/tree/dev
(docker compose中的数据库配置已注释) 〜/桌面/alone$ docker compose up [+] 运行 2/0 ✔ 容器数据库创建 0.0s ✔ 容器单独创建0.0s 单独附加到 db 数据库 | 数据库 | PostgreSQL Database 目录似乎包含一个数据库;跳过初始化 数据库 | 数据库 | 数据库 | 2023-09-01 20:03:03.391 UTC [1] 日志:在 x86_64-pc-linux-musl 上启动 PostgreSQL 15.4,由 gcc 编译(Alpine 12.2.1_git20220924-r10)12.2.1 20220924,64 位 数据库 | 2023-09-01 20:03:03.391 UTC [1] 日志:监听 IPv4 地址“0.0.0.0”,端口 5432 数据库 | 2023-09-01 20:03:03.391 UTC [1] 日志:监听 IPv6 地址“::”,端口 5432 数据库| 2023-09-01 20:03:03.394 UTC [1] 日志:监听 Unix 套接字“/var/run/postgresql/.s.PGSQL.5432” 数据库| 2023-09-01 20:03:03.399 UTC [24] LOG:数据库系统中断;最后已知时间为 2023-09-01 16:14:25 UTC 数据库 | 2023-09-01 20:03:03.435 UTC [24] LOG:数据库系统未正确关闭;正在进行自动恢复 数据库 | 2023-09-01 20:03:03.438 UTC [24] 日志:重做从 0/4138D08 开始 数据库 | 2023-09-01 20:03:03.438 UTC [24] 警告:无法打开目录“base/17666”:没有这样的文件或目录 数据库 | 2023-09-01 20:03:03.438 UTC [24] 上下文:数据库/删除的 WAL 重做位于 0/4138DB8:目录 1663/17666 数据库 | 2023-09-01 20:03:03.438 UTC [24] 警告:一些无用的文件可能会留在旧数据库目录“base/17666”中 数据库 | 2023-09-01 20:03:03.438 UTC [24] 上下文:数据库/删除的 WAL 重做位于 0/4138DB8:目录 1663/17666 数据库 | 2023-09-01 20:03:03.438 UTC [24] LOG:0/4138E80 处的记录长度无效:想要 24,得到 0 数据库 | 2023-09-01 20:03:03.439 UTC [24] 日志:重做于 0/4138E48 系统使用完成:CPU:用户:0.00 秒,系统:0.00 秒,已过去:0.00 秒 数据库| 2023-09-01 20:03:03.442 UTC [22] 日志:检查点开始:恢复结束立即等待 数据库| 2023-09-01 20:03:03.460 UTC [22] 日志:检查点完成:写入 3 个缓冲区(0.0%);添加了 0 个 WAL 文件,删除了 0 个,回收了 0 个;写入=0.005秒,同步=0.002秒,总计=0.020秒;同步文件=2,最长=0.001秒,平均=0.001秒;距离=0 kB,估计=0 kB 数据库| 2023-09-01 20:03:03.465 UTC [1] LOG:数据库系统已准备好接受连接 独自一人|正在等待数据库... 独自一人|数据库可用! 独自一人|未检测到任何变化 独自一人|要执行的操作: 独自一人|应用所有迁移:管理、身份验证、内容类型、核心、会话 独自一人|运行迁移: 独自一人|无需申请迁移。 独自一人|使用 StatReloader 观察文件更改
根据日志,数据库正在运行。尝试停止数据库容器并再次运行测试。