首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从google云连接mysql数据库和nodejs

如何从google云连接mysql数据库和nodejs
EN

Stack Overflow用户
提问于 2018-09-30 16:28:53
回答 1查看 5.3K关注 0票数 4

我有一个NodeJs应用程序和MySQL数据库。我在google中部署了nodejs应用程序,并在google cloud中创建了google cloud数据库,并连接到nodejs应用程序,我可以成功地部署应用程序,但应用程序无法连接到云MySQL。

但是,当我试图从本地mysql工作台连接云mysql时,它成功地连接到数据库。我还可以从本地nodejs应用程序连接云mysql数据库。

但我无法从已部署的nodejs应用程序连接到云mysql db。

误差 Database is not connectedError: connect ETIMEDOUT

Db.js

代码语言:javascript
复制
var mysql = require('mysql');
var PropertiesReader = require('properties-reader');
var properties = PropertiesReader('./db.properties');

var connection = mysql.createConnection({
    connectionLimit : properties.get('pool'),
    host: properties.get('hostname'),
    user: properties.get('username'),
    password: properties.get('password'),
    database: properties.get('dbname')
});

connection.connect(function (err) {
    if (!err) {
        console.log("Database is connected");
    } else {
        console.log("Database is not connected" + err);
    }
}
);

module.exports = connection;

app.yaml

代码语言:javascript
复制
runtime: nodejs
env: flex
EN

回答 1

Stack Overflow用户

发布于 2018-09-30 18:06:13

在mysql的连接配置中,主机在App上不工作。你必须使用socketPath。socketPath是连接到unix域套接字的路径。套接字路径必须如下所示

var connection = mysql.createConnection({ socketPath : '/cloudsql/my-project-12345:us-central1:mydatabase', user : 'username', password : 'password', database : 'db_name' });

如果您在GCloud上使用Postgres,这是一个类似的过程,这是应答here

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52579878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档