Error: connect ECONNREFUSED 127.0.0.1:3306 when using cloud sql for MYSQL from NodeJS app

Error: connect ECONNREFUSED 127.0.0.1:3306 when using cloud sql for MYSQL from NodeJS app

我遵循了本文 sample app link. GitHubLink 中提到的所有步骤。当 运行 使用脚本 (npm 运行 init-cloudsql) 初始化 mysql 数据库时,出现以下错误:

D:\gcloud\nodejs-getting-started-structured-data\books\model-cloudsql.js:143
    throw err;
    ^
Error: connect ECONNREFUSED 127.0.0.1:3306
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1090:14)
--------------------
at Protocol._enqueue (D:\gcloud\nodejs-getting-started-structured- data\node_modules\mysql\lib\protocol\Protocol.js:145:48)                                                                                                          
at Protocol.handshake (D:\gcloud\nodejs-getting-started-structured-data\node_modules\mysql\lib\protocol\Protocol.js:52:23)                                                                                                                
at Connection.connect (D:\gcloud\nodejs-getting-started-structured-data\node_modules\mysql\lib\Connection.js:130:18)                                                                                                                
at Connection._implyConnect (D:\gcloud\nodejs-getting-started-structured-data\node_modules\mysql\lib\Connection.js:461:10)                                                                                                                
at Connection.query (D:\gcloud\nodejs-getting-started-structured-data\node_modules\mysql\lib\Connection.js:206:8)                                                                                                               
at createSchema (D:\gcloud\nodejs-getting-started-structured-data\books\model-cloudsql.js:126:14)                                                                                                              
at prompt.get (D:\gcloud\nodejs-getting-started-structured-data\books\model-cloudsql.js:117:5)                                                                                                              
at D:\gcloud\nodejs-getting-started-structured-data\node_modules\prompt\lib\prompt.js:336:32                                                                                                            
at D:\gcloud\nodejs-getting-started-structured-data\node_modules\utile\node_modules\async\lib\async.js:154:25                                                                                                            
at assembler (D:\gcloud\nodejs-getting-started-structured-data\node_modules\prompt\lib\prompt.js:333:9)  

我错过了什么?我无法解决此错误。有人可以帮我解决这个问题吗?

您需要将您的 IP 列入白名单才能访问 Cloud SQL。 https://cloud.google.com/sql/docs/mysql/instance-access-control

您分享的错误消息表明您的机器无法连接到端口 3307(由代理使用)上的实例 IP 地址。我在自己的机器上测试了这个,它在那里听。这可能表明您的计算机或本地网络上的防火墙阻止了端口 3307 上的出站连接。尝试在防火墙中打开它,看看是否可以连接。

当您 运行 PopSQL 实例或 Node.js 并且 MySQL 服务器未 运行 在您的本地计算机上时,会发生此错误。 尝试以下步骤

  1. 按键盘上的 Windows 键和 R。这将打开命令提示符
  2. 输入 services.msc 然后点击确定。
  3. 在弹出的服务中,检查 MYSQL57。如果不是运行ning状态,点击对话框左栏运行这个服务
  4. 一旦服务运行正在从连接window
  5. 连接到 POPSQL