我正在使用 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
但是我在终端中得到以下输出:[Illuminate\Database\QueryException]
SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from inform
ation_schema.tables where table_schema = db and table_name = migrations)[Doctrine\DBAL\Driver\PDOException]
SQLSTATE[HY000] [2002] No such file or directory[PDOException]
SQLSTATE[HY000] [2002] No such file or directory
如果我尝试通过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>"
我也尝试将 127.0.0.1
更改为 localhost
,但出现相同的错误。我究竟做错了什么??
最佳答案
尝试在没有 DB_SOCKET 选项的情况下连接到数据库。错误消息表明尝试通过套接字建立 MySQL 连接(不支持)。
关于laravel - 无法在 Google Cloud SQL 中运行迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62732433/