MySQLのMySQLを使用して別のファイルへの接続を作成したいと考えています。私は、クエリをトリガするたびに接続変数またはプール変数をエクスポートすることを期待しています。現在の方法では、別のファイルを分けると、毎回接続が再作成されます。NPM MySql接続を別ファイルにする必要があります
//connection.js
'use strict';
var mysql = require('mysql');
var sys = require('util');
var exec = require('child_process').exec;
var config = require('config');
var db_config = {
host : config.get('databaseSettings.db_host'),
user : config.get('databaseSettings.db_user'),
password : config.get('databaseSettings.db_password'),
database : config.get('databaseSettings.database'),
port : config.get('databaseSettings.mysqlPORT'),
multipleStatements: true,
debug : ['ComQueryPacket']
};
var restart = function (callback) {
console.log('RESTART THE SERVER');
callback();
//exec("whoami; pm2 restart dashboard;", callback);
};
var handleDisconnect = function() {
connection = mysql.createConnection(db_config);
console.log('\n\n\t--In the handleDisconnect from connection to DB\n');
connection.connect(function (err) {
if (err) {
console.log('--DB CONNECTION ERROR - ');
setTimeout(handleDisconnect, 2000);
} else {
console.log('connection variable created ');
}
});
connection.on('error', function (err) {
console.log('--DB CONNECTION ERROR - ');
switch (err.code) {
case 'PROTOCOL_CONNECTION_LOST':
handleDisconnect();
break;
case 'PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR':
restart();
break;
default:
throw err;
}
});
};
handleDisconnect();
このように、私は、このファイルからの接続/プール接続をエクスポートします。
NPMのことを聞いたことはありません。 MySQLの接続性を説明しているWebページを教えてください。 –
https://www.npmjs.com/package/mysql – Sankalp