laravel中的PDOException::(“ SQLSTATE [HY000] [2002]连接被拒绝”

时间:2019-03-31 11:49:52

标签: php laravel xampp

我已经成功安装了Laravel,它可以在http://127.0.0.1:8000/中运行。当我运行php artisan migration时,出现以下错误。

PDO::__construct("mysql:host=127.0.0.1;port=3306;dbname=plantshop", "root", "", []) /Projects/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70

我可以使用http://192.168.64.2端口访问我的PHP myadmin,但不能通过http://127.0.0.1:8000/访问,另外一件事是,如果我转到此链接,则该页面没有显示lamp / htdocs / abc目录显示并显示

Access forbidden! You don't have permission to access the requested object. It is either read-protected or not readable by the server. If you think this is a server error, please contact the webmaster.

我尝试更改端口号,并直接将unix_socket指向php myadmin,但没有任何作用。我的配置有什么问题?我正在使用Mac,有人可以帮我吗?

我的.env文件

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=plantshop
DB_USERNAME=root
DB_PASSWORD=

Databse.php

'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,

            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

2 个答案:

答案 0 :(得分:2)

您正在地址127.0.0.1上搜索数据库,但是您很可能已将其配置为使用地址192.168.64.2。在您的.env中,您需要将DB_HOST定向到实际的数据库服务器,在本例中为192.168.64.2

答案 1 :(得分:0)

在您的情况下,MySQL服务器未运行。请重新启动MySQL服务器,此问题将解决。

如果您使用的是ubuntu服务器,请运行以下命令。

sudo /etc/init.d/mysql start