PHP环境数据库连接失败,1049错误提示phpEnv数据库不存在,怎么办?
- 内容介绍
- 文章标签
- 相关推荐
本文共计923个文字,预计阅读时间需要4分钟。
错误最常出现在`.env`文件中,将`DB_DATABASE`写成了类似于`D:PHPDGAPIdatabase01.sql`的本地文件路径。MySQL的`database`参数只接受数据库名称(字符串),不是文件路径或SQL脚本。一旦这样写,PDO就会尝试连接一个不存在的数据库`D:PHPDGAPIdatabase01.sql`,因此会报错`SQLSTATE[HY000][1049] Unknown database 'D:PHPDGAPIdatabase01.sql'`。
正确做法是:
-
DB_DATABASE只填纯数据库名,比如myapp、cardgame、laravel - SQL 文件要手动导入:用
mysql -u root -p myapp 或 <a style="color:#f60; text-decoration:underline;" title="php" href="https://www.php.cn/zt/15714.html" target="_blank">php</a>MyAdmin 导入到已存在的库中 - 确保该库名已在 MySQL 中真实存在(执行
SHOW DATABASES;可验证)
phpEnv 环境下必须确认 MySQL 服务已启动且库已创建
phpEnv 是集成环境,但它的 MySQL 不一定默认开机自启,也不自动建库。
本文共计923个文字,预计阅读时间需要4分钟。
错误最常出现在`.env`文件中,将`DB_DATABASE`写成了类似于`D:PHPDGAPIdatabase01.sql`的本地文件路径。MySQL的`database`参数只接受数据库名称(字符串),不是文件路径或SQL脚本。一旦这样写,PDO就会尝试连接一个不存在的数据库`D:PHPDGAPIdatabase01.sql`,因此会报错`SQLSTATE[HY000][1049] Unknown database 'D:PHPDGAPIdatabase01.sql'`。
正确做法是:
-
DB_DATABASE只填纯数据库名,比如myapp、cardgame、laravel - SQL 文件要手动导入:用
mysql -u root -p myapp 或 <a style="color:#f60; text-decoration:underline;" title="php" href="https://www.php.cn/zt/15714.html" target="_blank">php</a>MyAdmin 导入到已存在的库中 - 确保该库名已在 MySQL 中真实存在(执行
SHOW DATABASES;可验证)
phpEnv 环境下必须确认 MySQL 服务已启动且库已创建
phpEnv 是集成环境,但它的 MySQL 不一定默认开机自启,也不自动建库。

