当我使用php artisan migrate
时,我收到错误SQLSTATE[42000] [1049] Unknown database 'databaseName'
。
但是数据库存在!我甚至尝试回到终端,登录到mysql并再次创建数据库,它说数据库已经存在!
为什么这会给我这个错误?
答案 0 :(得分:1)
我有同样的问题。当我运行:php artisan migrate。 在我的情况下,我使用带有苏格兰威士忌盒的Vagrant。
要解决此问题,请输入:
一切顺利。
答案 1 :(得分:0)
在app/config/database.php
文件中,将默认值从databaseName
更改为您尝试在应用程序中使用的真实数据库名称,类似于此(对于mysql
驱动程序):< / p>
'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'your database name', //<-- put the database name
'username' => 'your user name',
'password' => 'your password',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
答案 2 :(得分:0)
有一件事可能是你的外壳。如果您阅读case sensitivity上的文档,则会说:
底层操作系统的区分大小写是其中的一部分 在数据库和表名称的敏感性的情况下。这意味着 在Windows和大小写中,数据库和表名称不区分大小写 在大多数Unix版本中都很敏感。一个值得注意的例外是Mac OS X,它是基于Unix的,但使用默认的文件系统类型(HFS +) 不区分大小写。
然后查看@ app/config/database.php
找到的应用程序数据库设置。
看起来像这样:
'mysql' => array(
'read' => array(
'host' => '192.168.1.1',
),
'write' => array(
'host' => '196.168.1.2'
),
'driver' => 'mysql',
'database' => 'databaseName',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
仔细检查一切。
同时尝试使用snake_case而不是camelCase作为数据库名称。
答案 3 :(得分:0)
在我的情况下,我在以下端口上安装了MySQL:3308,在Laravel env文件中有3306。