laravel数据库连接错误1049

时间:2016-02-24 14:12:36

标签: database laravel connection

我使用的是Laravel 5,我的数据库连接出现问题:

这是我的database.php文件:

'mysql' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_DATABASE', 'my_scene'),
        'username'  => env('DB_USERNAME', 'root'),
        'password'  => env('DB_PASSWORD', 'root'),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => false,
        'engine'    => null,
    ],

这是我的.env文件:

  

DB_HOST =本地主机

     

DB_DATABASE = my_scene

     

DB_USERNAME =根

     

DB_PASSWORD =空

然而,当我运行" php artisan migrate"我收到了错误

  

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

我已经尝试过php artisan cache:clear和config:cache并重新加载我的xampp控制器,但它没有用。

任何想法?

3 个答案:

答案 0 :(得分:3)

它不是连接错误。

[PDOException] SQLSTATE[HY000] [1049] Unknown database 'my_scene'

表示您已成功连接到MySQL服务器。但是没有匹配名称my_scene

的数据库

您可以使用以下任何方法创建数据库。

1。 MySQL命令行实用程序

您只需通过在终端中执行此MySQL语句来创建数据库

CREATE DATABASE my_scene;

阅读Creating Database via terminal

2。 PHPMyAdmin中

如果您有一个MySQL GUI,即PHPMyAdmin,您可以轻松创建数据库。

请参阅this article以阅读有关通过PHPMyAdmin创建数据库的更多信息

3。 Laravel的命令行工具[Artisan]

使用Laravel的artisan实用程序

可能是最简单的选项
  1. 打开终端
  2. 运行php artisan tinker
  3. 使用以下代码段创建数据库

    DB::connection()->statement('CREATE DATABASE my_scene');

答案 1 :(得分:0)

在配置文件中,使DB_PASSWORD等于空字符串""并将DB_PASSWORD保留在.env文件之外。

或者,您可以删除null并将DB_PASSWORD保留为空:

DB_PASSWORD=

这将表示密码的空字符串。

答案 2 :(得分:0)

我遇到了同样的错误,并且能够解决它。

我在WampServer 3.2中使用Laravel 7,并且已经安装了两个数据库MySQLMaria DB

因此,我使用PhpMyAdmin用MySQL创建了数据库 并且在使用1049

时出现php artisan migrate错误

然后,我使用MariaDB(使用PhpMyAdmin)创建了数据库,迁移成功 因此Laravel试图连接到MariaDB数据库,但是没有数据库(具有正确的连接值)