有谁知道如何从Sequelize连接到Google Cloud SQL?
sequelize = new Sequelize(process.env.TEST_DB || 'postgres', 'blah', null, {
dialect: 'postgres',
operatorsAliases: Sequelize.Op,
host: process.env.DB_HOST || 'localhost',
define: {
underscored: true
},
});
connected = true;
索引.js
const sequelize = new Sequelize('{db_name}', '{db_user}', '{db_password}', {
dialect: 'mysql',
host: '/cloudsql/{instance}',
timestamps: false,
dialectOptions: {
socketPath: '/cloudsql/{instance}'
},
});
在无服务器.yml 中添加此内容
beta_settings:
cloud_sql_instances: {xxxxxxx-xxxxxx:us-central1:xxxxxxxxxxx}
您可以从Sequelize连接,就像从任何其他客户端工具或ORM一样。正确获取访问权限取决于您运行代码的位置。如果您的代码在 GCP 外部运行,则可以按照此页面上的外部应用说明进行操作: https://cloud.google.com/sql/docs/postgres/connect-external-app。
如果在本地计算机中使用代理,请将 process.env.DB_HOST 设置为 127.0.0.1。您可以在 https://cloud.google.com/sql/docs/postgres/sql-proxy#troubleshooting 中找到故障排除提示。