CloudSQL连接与已部署的书架教程应用程序(App Engine/nodejs)有关



我用节点JS(FLEX环境(将代码部署在App Engine上。

config.json

{
  "GCLOUD_PROJECT": "XXXXXX",
  "DATA_BACKEND": "cloudsql",
  "MYSQL_USER": "XXXX",
  "MYSQL_PASSWORD": "XXXXX",
  "INSTANCE_CONNECTION_NAME": "XXXXXX:us-central1:XXXXX"
}

model-cloudsql.js

const options = {
  user: config.get('MYSQL_USER'),
  password: config.get('MYSQL_PASSWORD'),
  database: 'XXXXX'
};
if (config.get('INSTANCE_CONNECTION_NAME') && config.get('NODE_ENV') === 'production') {
  options.socketPath = `/cloudsql/${config.get('INSTANCE_CONNECTION_NAME')}`;
}
const connection = mysql.createConnection(options);

我要低于错误:

"在致命错误后无法加入查询。"

请提供有关它的任何反馈。

看起来错误"Cannot enqueue Query after fatal error."在您尝试查询创建过程中遇到致命错误的连接时发生的错误。如果我们查看MySQLJS文档,它建议使用以下内容:

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'example.org',
  user     : 'bob',
  password : 'secret'
});
connection.connect(function(err) {
  if (err) {
    console.error('error connecting: ' + err.stack);
    return;
  }
  console.log('connected as id ' + connection.threadId);
});

如您所见,您需要传递回调功能,以处理尝试连接时可能出现的任何错误。此回调函数将打印遇到的错误,以提供更多有关为什么无法连接的信息。

此外,您可能对处理错误的本节感兴趣。

相关内容

  • 没有找到相关文章

最新更新