【问题标题】:I'm having an error while typing php artisan migrate我在输入 php artisan migrate 时出错
【发布时间】:2020-03-05 15:03:36
【问题描述】:

当输入命令 php artisan migrate 时,它​​给了我一个错误:

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

虽然,我编辑了.env 文件并创建了数据库proj 并重新启动了cmd,我也尝试过

php artisan config:cache

和类似的命令,但仍然无法正常工作

view error image

phpmyadmin view

.env file view

【问题讨论】:

  • 请检查您的mysql服务器中是否有任何名为“proj”的数据库?
  • 我检查了它是否被找到并且我在 phpmyadmin 的数据库之间看到了它
  • 请检查您是否可以使用 mysql 客户端(如 toad 或 workbench)使用您在 .env 文件中提供的相同凭据登录数据库。我认为没有创建数据库。你能分享你的 .env 文件和你的 phpmyadmin 截图吗?
  • 我在问题中添加了截图

标签: php database laravel database-connection


【解决方案1】:

这意味着您没有创建此数据库。首先创建数据库,然后运行:php artisan migrate:fresh 创建表。

根据您上传的屏幕截图,您有很多服务器。检查服务器 mysql 的端口并更改 .env 文件上的端口。这将起作用。

【讨论】:

  • 我创建了它,它被发现并且我在 phpmyadmin 的数据库之间看到它
  • 你在 phpmyadmin 中看到 information_schema 数据库吗?
  • 明白了。在您的 phpmyadmin 中,在上面的表格中,您有 current server: mysql,其他选项是什么?似乎您有多个服务器......在这种情况下 .env 文件是错误的,因为主机是 localhost 那里。相应地改变。
  • 另一台服务器是MariaDB,那么主机应该是什么?
  • 好吧,你当然不能有 2 个服务器在同一个端口上运行,所以,检查服务器 mysql 正在使用的端口并设置 env 文件。暂时放弃 mariadb,因为 table proj 不存在。
【解决方案2】:

打开 .env 文件并编辑:

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE= // 数据库名称

DB_USERNAME= // 数据库用户名

DB_PASSWORD= // 数据库密码

运行以下命令:

php artisan config:cache

php artisan migrate

希望对你有帮助

【讨论】:

  • 问题是他有很多服务器,服务器端口不是默认的。
猜你喜欢
  • 2018-05-31
  • 2017-05-31
  • 1970-01-01
  • 2018-11-18
  • 1970-01-01
  • 1970-01-01
  • 2018-08-04
  • 2015-04-12
  • 2019-10-29
相关资源
最近更新 更多