Error: P1017: Server has closed the connection
Error: P1017: Server has closed the connection
我正在接受有关在一个简单应用程序上编写集成测试的培训,并且我已经完成了一些工作。在出现一些错误后,我终止了 yarn 命令 运行 在监视模式下的测试,当重新启动相同的命令时,我在对象中得到了错误:
Error: P1017: Server has closed the connection
我正在使用 prisma、nestjs 和 mySql 作为数据库,容器化在 docker 中。
我使用了教程中的代码作为基础并且该代码有效(除了端口外它与以下代码相同,因为教程使用的是 postgres)
这是 docker-compose 文件
version: '3.8'
services:
dev-db:
image: mysql:5.7
#platform: linux/amd64
ports:
- 3308:3306
environment:
MYSQL_ROOT_PASSWORD: 123
MYSQL_DB: dbfornest
test-db:
image: mysql:5.7
#platform: linux/amd64
ports:
- 3305:3306
environment:
MYSQL_ROOT_PASSWORD: 123
MYSQL_DB: dbfornest
这些是 json 文件中的脚本
"db:restart": "docker compose down && docker compose up -d && sleep 1",
"pretest:int": "yarn db:restart && dotenv -e .env.test -- prisma migrate reset --force",
"test:int": "dotenv -e .env.test -- jest -i --no-cache --watch --config jest-int.json"
这是 .env 文件
DATABASE_URL=mysql://root:123@localhost:3308/dbfornest
这是 .env.test 文件
DATABASE_URL=mysql://root:123@localhost:3305/dbfornest
错误在 docker-compose 文件中。为 mySQL 命名数据库的正确方法是 MYSQL_DATABASE
我正在接受有关在一个简单应用程序上编写集成测试的培训,并且我已经完成了一些工作。在出现一些错误后,我终止了 yarn 命令 运行 在监视模式下的测试,当重新启动相同的命令时,我在对象中得到了错误:
Error: P1017: Server has closed the connection
我正在使用 prisma、nestjs 和 mySql 作为数据库,容器化在 docker 中。 我使用了教程中的代码作为基础并且该代码有效(除了端口外它与以下代码相同,因为教程使用的是 postgres)
这是 docker-compose 文件
version: '3.8'
services:
dev-db:
image: mysql:5.7
#platform: linux/amd64
ports:
- 3308:3306
environment:
MYSQL_ROOT_PASSWORD: 123
MYSQL_DB: dbfornest
test-db:
image: mysql:5.7
#platform: linux/amd64
ports:
- 3305:3306
environment:
MYSQL_ROOT_PASSWORD: 123
MYSQL_DB: dbfornest
这些是 json 文件中的脚本
"db:restart": "docker compose down && docker compose up -d && sleep 1",
"pretest:int": "yarn db:restart && dotenv -e .env.test -- prisma migrate reset --force",
"test:int": "dotenv -e .env.test -- jest -i --no-cache --watch --config jest-int.json"
这是 .env 文件
DATABASE_URL=mysql://root:123@localhost:3308/dbfornest
这是 .env.test 文件
DATABASE_URL=mysql://root:123@localhost:3305/dbfornest
错误在 docker-compose 文件中。为 mySQL 命名数据库的正确方法是 MYSQL_DATABASE