mysql - Gcloud 应用程序部署 SQLSTATE[HY000] [2002] 没有这样的文件或目录

标签 mysql laravel gcloud

我已经在我的本地主机上有一个可用的 Laravel 项目和数据库。但是当我使用 GCP 应用程序引擎时,我按照数据库连接步骤进行操作。我已经在云中创建了 mysql 数据库,并从工作本地数据库导入了所有 sql。当我应用程序部署时,显示 SQLSTATE[HY000] [2002] 下面没有这样的文件或目录是我的 app.yaml 文件内容

runtime: php
env: flex

runtime_config:
  document_root: public

# Ensure we skip ".env", which is only for local development
skip_files:
  - .env

env_variables:
  # Put production environment variables here.
  APP_LOG: errorlog
  APP_KEY: <app-key>
  CACHE_DRIVER: database
  SESSION_DRIVER: database
  ## Set these environment variables according to your CloudSQL configuration.
  DB_HOST: <db_host>
  DB_DATABASE: info
  DB_USERNAME: root
  DB_PASSWORD: <db_pass>
  DB_SOCKET: "/cloudsql/lkcfes:asia-east1:lkcfes"

beta_settings:
    # for Cloud SQL, set this value to the Cloud SQL connection name,
    # e.g. "project:region:cloudsql-instance"
    cloud_sql_instances: "lkcfes:asia-east1:lkcfes"

最佳答案

根据您的配置和最后一条评论,由于网络错误,您无法访问该实例。我认为您应该检查 GCP 控制台中的防火墙配置以及实例配置中的“授权网络”。

您可以在此处找到更多信息 https://cloud.google.com/sql/docs/mysql/diagnose-issues

关于mysql - Gcloud 应用程序部署 SQLSTATE[HY000] [2002] 没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57130208/

相关文章:

C# 过滤相似表记录 SQL

Laravel horizo​​n 排队时间长

php - 插入和更新 MySQL 表

php-获取最后插入的id

php - 滚动时对数据库的双重请求

laravel - 如何在 laravel 中打印模型查询

php - 页面刷新后 Laravel session 丢失

linux - 如何在 gcloud linux 命令上自动插入输入

docker - 使用私有(private) docker 镜像部署 gcloud 应用程序

google-app-engine - 将简单的 golang 应用程序部署到 appengine 已停止工作