【问题标题】:Laravel artisan commands work with port 33060 but database stops workingLaravel artisan 命令使用端口 33060 但数据库停止工作
【发布时间】:2020-09-04 09:29:36
【问题描述】:

我正在使用 Homestead 开发一个 Laravel 5.8 项目。该项目工作正常,数据库端口设置为3306,但我无法运行工匠命令。当我将数据库端口更改为 33060 时,数据库停止工作,但工匠命令工作。使用端口 3306 当我运行任何工匠命令时,我会收到此消息

当我切换到33060 时,错误消失并且可以运行工匠命令但数据库停止工作

APP_DEBUG=true
APP_URL=http://127.0.0.1
APP_ENV=local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=33060
DB_DATABASE=forums
DB_USERNAME=homestead
DB_PASSWORD=secret

config/database.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'),
        ]) : [],
    ],

【问题讨论】:

    标签: php mysql laravel homestead


    【解决方案1】:

    我自己从未使用过 Homestead,但请查看以下相关问题:

    Strange behaviour Laravel Homestead Database Connection

    似乎该错误可能与您是在 VM 中还是在物理机上运行命令有关。

    【讨论】:

    • 在 vagrant ssh 之外运行 artisan 命令将无法正常工作,感谢您的提示。我必须在 vagrant ssh 中运行工匠命令
    【解决方案2】:

    默认情况下,MySQL 服务器侦听端口 3306,这就是它工作的原因。但是如果你想要另一个端口,那么你必须改变你的 MySQL 服务器设置。

    How to change the default port of mysql from 3306 to 3360

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-13
      • 2016-12-20
      • 2017-10-08
      • 2021-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多