Laravel 迁移未知数据库 [1049]

Posted

技术标签:

【中文标题】Laravel 迁移未知数据库 [1049]【英文标题】:Laravel Migration Unknown database [1049] 【发布时间】:2021-01-25 12:09:48 【问题描述】:

我正在尝试将 xampp 用于我的 sql 服务器,这部分一切正常(我可以访问 phpmyadmin、创建我的数据库等)。但是,当我运行命令“php artisan migrate”时,它总是显示以下错误:

Illuminate\Database\QueryException 

  SQLSTATE[HY000] [1049] Unknown database 'inverdana' (SQL: select * from information_schema.tables where table_schema = inverdana and table_name = migrations and table_type = 'BASE TABLE')

我尝试过清除缓存、重启 laravel 服务器、修改 .env 文件以使用 XAMPP 提供的地址,但没有任何效果。

很令人沮丧的是,laravel 没有提供更多关于失败的线索。

【问题讨论】:

你的数据库名称是什么? 你有一个名为inverdana 的数据库吗?检查 phpMyAdmin 以确保数据库确实存在。 您已经知道您的数据库名称“inverdana”没有设置 【参考方案1】:

原来是操作系统(我使用的是 MacOS)。如果其他人面临同样的问题,您可能想尝试对我有帮助的方法。

问题是我从终端安装了 mysql 和 apache。这导致 XAMPP 无法正确初始化并且没有共享正确的端口,因此,我的 Laravel 应用程序永远找不到正确的数据库。所以我卸载了 mysql、apache 并重新安装了 XAMPP(版本 7.4.5)。

之后,一切正常。

【讨论】:

【参考方案2】:

另一个问题可能是您的配置已经缓存并保存在/bootstrap/cache/config.php 文件中。你只需要删除这个文件,你的问题就解决了。 如果您希望它们再次被缓存,请运行

php artisan config:cache

命令

【讨论】:

以上是关于Laravel 迁移未知数据库 [1049]的主要内容,如果未能解决你的问题,请参考以下文章

Laravel PDOException SQLSTATE[HY000] [1049] 未知数据库 'forge'

Laravel 在现有项目上航行 - 未知数据库 SQLSTATE[HY000] [1049]

Pphunit 不断给出错误:[1049] 未知数据库':内存:'

迁移期间 Laravel 未知数据库错误

请求 Laravel 迁移未知数据库枚举

Laravel db 迁移 - renameColumn 错误 - 请求了未知的数据库类型枚举