时间:2021-07-01 10:21:17 帮助过:1人阅读
安装依赖库
- npm install mysql
创建数据库连接
- var mysql = require(‘mysql‘);
- //定义连接参数
- var mysqlConn = {
- host:‘127.0.0.1‘,
- user:‘user‘,
- password:‘password‘,
- database:‘nodejs‘,
- port:‘3306‘
- };
- //创建连接
- var conn = mysql.createConnection(mysqlConn);
- conn.connect();
- //执行sql
- conn.query(‘select 1+1 as solution ‘,function(err,rows,fields){
- if (err) {throw err;}
- console.log(‘select result is ‘+ rows[0].so);
- })
- //关闭连接?
- conn.end();
使用数据库连接池
- var mysql = require(‘mysql‘);
- var mysqlConn = {
- host:‘127.0.0.1‘,
- user:‘root‘,
- password:‘jt123456‘,
- database:‘nodejs‘,
- port:‘3306‘
- };
- var pool = mysql.createPool(mysqlConn);
- // 从连接池获取connection
- pool.getConnection(function(err,conn){
- if (err) {
- console.log(‘err when getConnection from pool:‘+err);
- }
- conn.query(‘select 1+1 as solution‘,function(err,rows){
- if (err) {
- consloe.log(‘err when query sql :‘+err);
- }
- console.log(‘solution is ‘+rows[0].solution);
- // 释放当前connection
- conn.release();
- });
- });
处理连接时的异常
- var mysql = require(‘mysql‘);
- var mysqlConn = {
- host:‘127.0.0.1‘,
- user:‘root‘,
- password:‘jt123456‘,
- database:‘nodejs‘,
- port:‘3306‘
- };
- // 重连
- function handleError(){
- var conn = mysql.createConnection(mysqlConn);
- //连接时发生异常就打印错误并在2秒后重连
- conn.connect(function(err){
- if (err) {
- console.log(‘err when connect with mysql server:‘+err);
- };
- setTimeout(handleError,2000);
- });
- //监听连接中的异常
- conn.on(‘error‘,function(err){
- console.log(‘err:‘+err);
- //断开连接时自动重连
- if (err.code ===‘PROTOCOL_CONNECTION_LOST‘) {
- handleError();
- }else{
- throw err;
- }
- });
- }
- handleEror();
参考资料:用Nodejs连接MySQL
使用node连接mysql
标签: