通过应用程序引擎中的nodejs使用sequilize连接gcp cloudsql时出错?

0lvr5msh  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(380)

当我尝试使用sequilize将第二代云mysql与app engine连接时,会出现以下错误:
{“name”:“sequelizeconnectionerror”,“parent”:{“errno”:“enoint”,“code”:“enoint”,“syscall”:“connect”,“address”:“/cloudsql/phrasal-charger-215107:asia-south1:newdish123”,“fatal”:true},“original”:{“errno”:“enoint”,“code”:“enoint”,“syscall”:“connect”,“address”:“/cloudsql/phrasal-charger-215107:asia-south1:newdish123”,“fatal”:true}
续集选项set:-

const db = new Sequelize(
  config.database.db,
  config.database.username,
  config.database.password,
  {
    host:'localhost',
    dialect: "mysql",
    port: 3306,
    dialectOptions: {
        socketPath: '/cloudsql/phrasal-charger-215107:asia-south1:newdish123'
    }
  }
);

附录yaml

runtime: nodejs
env: flex

beta_settings:
  cloud_sql_instances: phrasal-charger-215107:asia-south1:newdish123

更多信息
我试着把“/cloudsql/phrasal-charger-215107:asia-south1:newdish123”放到主机中,但没有成功。
当我在cloudsql提供的主机上设置公共ip地址,并将gcp设置为授权ip时,sequelize运行正常,运行正常。

pjngdqdw

pjngdqdw1#

我得到了完全相同的问题,我所有的代码库没有改变。我所做的是创建一个新项目,然后在我的新项目中创建一个新的appengine示例和一个新的cloudsql数据库。
然后我为项目启用了sqladmin,通过运行

gcloud init

以及为新项目创建新的配置文件。
然后我再次部署了应用程序:

gcloud app deploy

您可以在此处找到我的项目设置:
google app enging上的node.js with cloud sqlerror:connect enoint/cloudsql/

gv8xihay

gv8xihay2#

手动将需要访问云sql的计算机/网络的ip地址添加到授权网络部分。
以及
连接时请检查您的代理

相关问题