无法在 Google Cloud SQL 中运行迁移

use*_*512 6 google-app-engine laravel google-cloud-sql google-cloud-platform laravel-5

我正在使用 Laravel 5.3,并按照本教程设置 Google Cloud:

https://cloud.google.com/community/tutorials/run-laravel-on-appengine-standard

我正在尝试运行我的数据库迁移,所以我这样做:

export DB_DATABASE=db DB_USERNAME=root DB_PASSWORD=<my_db_password> DB_SOCKET="<my_connection_name>"
php artisan migrate --force
Run Code Online (Sandbox Code Playgroud)

但是我在终端中得到以下输出:

[Illuminate\Database\QueryException]
SQLSTATE[HY000] [2002] 没有这样的文件或目录(SQL:select * from
information_schema.tables where table_schema = db and table_name = migrations)

[Doctrine\DBAL\Driver\PDOException]
SQLSTATE[HY000] [2002] 没有这样的文件或目录

[PDOException]
SQLSTATE[HY000] [2002] 没有那个文件或目录

如果我尝试通过 MySQL Workbench 连接到服务器,它连接正常。

这是我的 app.yaml 文件(我删除了敏感信息):

runtime: php72

runtime_config:
    document_root: public

env_variables:
    APP_LOG: errorlog
    # Application key
    APP_KEY: <my_app_key>
    # Storage path
    APP_STORAGE: /tmp
    VIEW_COMPILED_PATH: /tmp
    CACHE_DRIVER: database
    SESSION_DRIVER: database
    # Database configuration
    DB_CONNECTION: mysql
    DB_SOCKET: /cloudsql/<my_connection_name>
    DB_HOST: 127.0.0.1
    DB_PORT: 3306
    DB_DATABASE: db
    DB_USERNAME: root
    DB_PASSWORD: <my_db_password>

beta_settings:
    cloud_sql_instances: "<my_connection_name>"
Run Code Online (Sandbox Code Playgroud)

我也尝试更改127.0.0.1localhost,但出现相同的错误。

我究竟做错了什么??

Jua*_*cki -1

不要在 MySQL 连接的环境变量中包含 DB_HOST,如设置数据库会话的步骤 4 中所示

其背后的原因是在您的计算机上使用 127.0.0.1 工作是因为您的计算机上可能安装了 MySQL 并且它正在连接那里。