【问题标题】:Getting SQLSTATE[HY000] [2002] No such file or directory on AppEngine获取 SQLSTATE[HY000] [2002] AppEngine 上没有这样的文件或目录
【发布时间】:2018-06-06 03:43:03
【问题描述】:

我已经在 gcloud App Engine 上部署了应用程序,我已成功部署,但在本地系统上运行良好时却得到 SQLSTATE[HY000] [2002] No such file or directory。 我正在关注https://cloud.google.com/community/tutorials/run-laravel-on-appengine-flexible这个教程。

我也关注了https://www.youtube.com/watch?v=QhQ1PrYH3q0&t=230s,但遇到了同样的问题。

网址:https://phpsipl1.appspot.com/

我的 app.yml 文件是:

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: base64:DZaQGd2hg/irj0YeTQtZxb3bY6Em25gMlLmoY8oDK7E=
  STORAGE_DIR: /tmp
  CACHE_DRIVER: database
  SESSION_DRIVER: database
  DB_HOST: localhost
  DB_DATABASE: blog
  DB_USERNAME: root
  DB_PASSWORD: target@2017
  DB_SOCKET: "/cloudsql/phpsipl1:us-central1:phpsipl"
beta_settings:
  cloud_sql_instances: "phpsipl1:us-central1:phpsipl" 

请帮帮我。

【问题讨论】:

  • 我不熟悉此工具,但您似乎包含了您可能不希望在您的问题中分享的秘密。

标签: php laravel google-app-engine


【解决方案1】:

莫恩,

您能否尝试在配置中使用 127.0.0.1 而不是 localhost。 在 MySQL 术语中,127.0.0.1 和 localhost 在连接到套接字方面存在差异。 请参阅https://serverfault.com/questions/295285/mysql-cannot-connect-via-localhost-only-127-0-0-1 了解更多信息。

【讨论】:

    【解决方案2】:

    我也遇到了同样的问题,但是在我的 app.yaml 中将 DB_CONNECTION: mysql 添加到 env_variables 对我来说很有效。

    【讨论】:

      猜你喜欢
      • 2020-05-07
      • 2015-06-24
      相关资源
      最近更新 更多