在 App Engine 中通过节点 js 使用 Sequelize 连接 GCP Cloud Sql 时出错?
Error Connecting GCP CloudSql using Sequilize through nodejs in app engine?
当我尝试使用 sequilize 将第二代 Cloud mysql 与 App Engine 连接时,出现以下错误:
{"name":"SequelizeConnectionError","parent":{"errno":"ENOENT","code":"ENOENT","syscall":"connect","address":"/cloudsql/phrasal-charger-215107:asia-south1:newdish123","fatal":true},"original" :{"errno":"ENOENT","code":"ENOENT","syscall":"connect","address":/cloudsql/phrasal-charger-215107 :asia-south1:newdish123","fatal":true}}
Sequelize option 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'
}
}
);
app.yaml
runtime: nodejs
env: flex
beta_settings:
cloud_sql_instances: phrasal-charger-215107:asia-south1:newdish123
更多信息
我试过将“/cloudsql/phrasal-charger-215107:asia-south1:newdish123”放入主机中,但没有成功。
当我将 public ip 地址放入 CloudSQL 给定的主机中并将我的 ip 与 GCP 设置为授权 ip 时,sequelize 是 运行 并按预期执行操作。
将需要访问云 SQL 的 machines/networks 的 IP 地址手动添加到授权网络部分。
和
建立连接时检查您的代理服务器
我遇到了完全相同的问题,我的所有代码库根本没有改变。我所做的修复是创建一个新项目,然后在我的新项目中创建新的 App Engine 实例和新的 Cloud SQL 数据库。
然后我为项目启用了 SQL 管理员,通过 运行
创建了一个新的配置文件
gcloud init
并为新项目创建新配置文件。
然后我再次部署了应用程序:
gcloud app deploy
你可以在这里找到我的项目的设置:
当我尝试使用 sequilize 将第二代 Cloud mysql 与 App Engine 连接时,出现以下错误:
{"name":"SequelizeConnectionError","parent":{"errno":"ENOENT","code":"ENOENT","syscall":"connect","address":"/cloudsql/phrasal-charger-215107:asia-south1:newdish123","fatal":true},"original" :{"errno":"ENOENT","code":"ENOENT","syscall":"connect","address":/cloudsql/phrasal-charger-215107 :asia-south1:newdish123","fatal":true}}
Sequelize option 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'
}
}
);
app.yaml
runtime: nodejs
env: flex
beta_settings:
cloud_sql_instances: phrasal-charger-215107:asia-south1:newdish123
更多信息
我试过将“/cloudsql/phrasal-charger-215107:asia-south1:newdish123”放入主机中,但没有成功。
当我将 public ip 地址放入 CloudSQL 给定的主机中并将我的 ip 与 GCP 设置为授权 ip 时,sequelize 是 运行 并按预期执行操作。
将需要访问云 SQL 的 machines/networks 的 IP 地址手动添加到授权网络部分。
和
建立连接时检查您的代理服务器
我遇到了完全相同的问题,我的所有代码库根本没有改变。我所做的修复是创建一个新项目,然后在我的新项目中创建新的 App Engine 实例和新的 Cloud SQL 数据库。
然后我为项目启用了 SQL 管理员,通过 运行
创建了一个新的配置文件gcloud init
并为新项目创建新配置文件。
然后我再次部署了应用程序:
gcloud app deploy
你可以在这里找到我的项目的设置: