这篇文章直接指出node如何连接mysql数据库,node如何连接mongodb,node如何连接redis
mysql连接:
var mysql = require('mysql');
//mysql配置
var pool = mysql.createPool({
host:'192.168.1.1339', //主机
user:'index', //MySQL认证用户名
password:'123456',
port:'3306',
database:'ys_finance_dev'
});
/***使用案例****/
pool.getConnection(function(err,connection) {
if(err) {
console.log("建立连接失败",err);
}else{
//成功链接
}
connection.release();//释放,如果不释放链接累计会越来越多,最终导致服务器cpu过高或者瘫痪
}
redis连接:
var redis = require('redis'),
RDS_PORT = 6379, //端口号
RDS_HOST = '192.168.1.171', //服务器IP
RDS_OPTS = {}, //设置项
client = redis.createClient(RDS_PORT,RDS_HOST,RDS_OPTS);
client.on('ready',function(err){
if(err){
console.log(err)
}
console.log('ready')
})
//报错监控,以防万一
client.on("error", function (err) {
report('RedisError');
logger.error("Error " + err);
});
var client = redis.createClient({
retry_strategy: function (options) {
if (options.error.code === 'ECONNREFUSED') {
report('连接被拒绝');
}
if (options.times_connected > 10) {
report('重试连接超过十次');
}
// reconnect after
return Math.max(options.attempt * 100, 3000);
}
});
//捕获异常,防止node进程中断
function uncaughtExceptionHandler(err){
if(err && err.code == 'ECONNREFUSED'){
}else{
process.exit(1);
}
}
process.on('uncaughtException', uncaughtExceptionHandler);
/**使用案例***/
client.select('2', function(error){
client.set("some key", "some val");
}
MongoDB连接:
var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://localhost:27017/";
module.exports = {
mongoConnect: function(dbName,sucessCb,failCb){
MongoClient.connect(DB_CONN_STR + dbName,(err,db) => {
if(err){
// console.log(err)
failCb(err)
}else{
// console.log("数据库链接成功")
sucessCb(db)
}
})
}
}