首页 文章

Loopback应用程序连接到mysql谷歌 Cloud

提问于
浏览
0

我正在尝试将Loopback应用程序部署到Google Cloud中的灵活引擎,将其连接到位于Google CloudSQL实例中的MySQL数据库,但我不能 . 当我尝试部署应用程序时,我总是得到同样的错误:

Web server listening at: http://localhost:8080
Connection fails: Error: getaddrinfo ENOTFOUND /cloudsql/miampa-1be3e:us-central1:miampa-prueba2 /cloudsql/miampa-1be3e:us-central1:miampa-prueba2:3306
It will be retried for the next request.
events.js:183
throw er; // Unhandled 'error' event

我的 datasources.json 是:

{
   "db": {
      "name": "db",
      "connector": "memory"
   },
   "appAmpa": {
      "name": "appAmpa",
      "connector": "mysql",
      "host": "/cloudsql/miampa-1be3e:us-central1:miampa-prueba2",
      "database": "prueba",
      "user": "root",
      "password": "XXXXXX"
   }
}

在Loopback应用程序的根文件夹中,我有app.yaml文件:

[START app_yaml]
runtime: nodejs
env: flex
beta_settings:
cloud_sql_instances: miampa-1be3e:us-central1:miampa-prueba2

[END app_yaml]

App Engine和CloudSQL实例位于同一区域: us-central

任何帮助都会很棒 . 谢谢 .

2 回答

  • 0

    我找到了解决方案:

    我的datasources.json:

    {
      "db": {
        "name": "db",
        "connector": "memory"
      },
      "appAmpa": {
        "name": "appAmpa",
        "connector": "mysql",
        "socketPath": "/cloudsql/miampa-1be3e:us-central1:miampa-prueba2",       
        "database": "prueba",
        "user": "root",
        "password": "XXXXXXX"
      }
    }
    

    和我的 app.yaml

    [START app_yaml]
    runtime: nodejs  
    env: flex  
    beta_settings:
        cloud_sql_instances: miampa-1be3e:us-central1:miampa-prueba2
    [END app_yaml]
    

    谢谢 .

  • 2

    您可能想要查看Google Cloud SQL代理方法,如Google Cloud 端SQL SQL手册(https://cloud.google.com/sql/docs/mysql/sql-proxy)中所述 . datasources.json中的host参数无效,因此无法连接 .

相关问题