0

Windows 10 で NodeJS を mysql に接続しようとしましたが、継続的に失敗しました。以下は、 https://www.w3schools.com/nodejs/nodejs_mysql_create_db.aspからのコードです。

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost",
  user: "yourusername",
  password: "yourpassword"
});

con.connect(function(err) {
  if (err) throw err;
  console.log("Connected!");
  con.query("CREATE DATABASE mydb", function (err, result) {
    if (err) throw err;
    console.log("Database created");
  });
});

以下は、コードを実行したときのエラー メッセージです。

  if(err) throw err;
          ^

Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1134:16)
    --------------------
    at Protocol._enqueue (C:\Users\tete6\NodeJS\node_modules\mysql\lib\protocol\Protocol.js:144:48)
    at Protocol.handshake (C:\Users\tete6\NodeJS\node_modules\mysql\lib\protocol\Protocol.js:51:23)
    at Connection.connect (C:\Users\tete6\NodeJS\node_modules\mysql\lib\Connection.js:116:18)
    at Object.<anonymous> (C:\Users\tete6\NodeJS\demo_db_connection.js:9:5)
    at Module._compile (internal/modules/cjs/loader.js:955:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
    at Module.load (internal/modules/cjs/loader.js:811:32)
    at Function.Module._load (internal/modules/cjs/loader.js:723:14)
    at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
    at internal/main/run_main_module.js:17:11 {
  errno: 'ECONNREFUSED',
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '127.0.0.1',
  port: 3306,
  fatal: true
}

このエラーを解決するために、私は試しました...

  1. "localhost" -> "127.0.0.1" に変更しましたが、失敗しました。
  2. 「ポート: 3306」を追加しましたが、失敗しました。
  3. ポートが接続できるかどうかを確認してください。これは決して私のポートではなく、ファイアウォールの問題であることがわかりました。私の xampp の mysql はうまく動作します。
  4. mongoDB モジュールでさえ、この同じエラー メッセージをトリガーします。

このeconnrefusedエラー メッセージは主に NodeJS の問題であり、SQL モジュールの問題ではないという情報を収集しました。

これから銀色に輝くのを見せてくれる人はいますか?

4

1 に答える 1