Laravel - php artisan migrate - SQLSTATE[HY000] [14] 无法打开数据库文件
Posted
技术标签:
【中文标题】Laravel - php artisan migrate - SQLSTATE[HY000] [14] 无法打开数据库文件【英文标题】:Laravel - php artisan migrate - SQLSTATE[HY000] [14] unable to open database file 【发布时间】:2018-07-23 11:51:46 【问题描述】:我有问题。 我从 Git 中提取了一个 Laravel 项目,但无法使用“php artisan migrate”命令迁移表。 错误信息:
在 Connection.php 第 664 行:SQLSTATE[HY000] [14] 无法打开 数据库文件 (SQL: select * from sqlit e_master where type = 'table' 和名称 = 迁移)
在 Connector.php 第 67 行:SQLSTATE[HY000] [14] 无法打开数据库 文件”
我的 .env 文件:
DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database
DB_USERNAME=homestead
DB_PASSWORD=secret
我的 .env.dusk.local 文件:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=ot-admin-dusk
DB_USERNAME=root
DB_PASSWORD=
当然,我在 Sequel pro 中创建了数据库。
谢谢,
【问题讨论】:
将 .env.dusk.local 连接配置复制到 .env。看看它是否有效 尝试删除 .env 文件中的 DB_DATABASE=database 变量或将 DB_CONNECTION 值更改为 mysql 而不是 sqlite 检查你的用户是否有权限进入这个数据库 我认为你使用了 config:cache ... run php artisan config:clear 【参考方案1】:如果您尝试使用 sqlite
,请从 .env 文件中删除 DB_HOST
和 DB_DATABASE
键。
现在创建storage/database.sqlite
并为其授予相关权限。
【讨论】:
以上是关于Laravel - php artisan migrate - SQLSTATE[HY000] [14] 无法打开数据库文件的主要内容,如果未能解决你的问题,请参考以下文章
php Laravel Artisan Migrate创建领域
laravel 自动删除 php artisan serve 上的 server.php