nodejs的mysql模块学习(三)数据库连接配置选项详解
连接选项
当在创建数据连接的时候
第一种大多数人用的方法
let mysql = require('mysql');
let connection = mysql.createConnection({
host: "localhost",
post: 3306,
user: "user",
password: "pass"
});
第二种用url创建的方法 感觉比较奇怪
let connection = mysql.createConnection('mysql://user:pass@host/db?debug=true&charset=BIG5_CHINESE_CI&timezone=-0700');
可以配置的选项有一下
| 配置选项 | 配置作用 | 备注 |
|---|---|---|
| host | 将要连接到的数据库的主机名 | 默认为localhost |
| port | 数据库的端口号 | 默认为3306 |
| localAddress | 在TCP连接时的本地IP | 可选配置 |
| socketPath | 将要连接的UNIXDomain Socket的路径 | 在配置这个之后host 和port配置失效 |
| user | mysql的用户 | 必要的 |
| password | mysql用户的密码 | 必要的 |
| database | 连接到的数据库名称 | 可选配置 |
| charset | 用于连接的字符集,将用该字符集作为默认排序规则 | 默认'UTF8_GENERAL_CI' |
| timezone | 用于存放本地日期的时区 | 默认为"local" |
| connecTimeout | 连接超时毫秒数 | 默认10000 |
| stringifyObjects | 查询时的自动类型转换,详见 | 默认false |
| insecureAuth | 允许连接到采用旧的,不安全的身份验证方法的Mysql实例 | 默认: false |
| typeCast | 是否将列值转化为本地JavaScript类型值 | 默认为true |
| queryFormat | 自定义query语句格式化方法 | 以后详说 |
| supportBigNumber | 当数据库有bigint或decimal类型列时,需要设置为true 才能支持这种类型 | 默认false |
| bigNumberStrings | 当bigNumberStrings 和supportBigNumber都为true的时候bigint和decimal就会返回字符串对象;在bigNumberStrings为false supportBigNumber为true的时候 bigint和decimal在超出Number类型范围时会返回字符串对象 不超过返回Number对象 | 默认为false |
| dataStrings | 强制所有的日期类型都以字符串类型返回 而不是Date类型返回 | 默认 false |
| debug | 开启调试 将协议细节输出到标准输出 | 默认false |
| trace | 生成错误的堆栈跟踪,包括库入口的调用位置。有轻微的性能损失。 | 默认true |
| multipleStatements | 允许query中有多个mysql语句 | 默认为false |
| flags | 修改连接标志 | 可以去官网看,太长以后再说 |
| ssl | 用ssl参数(与crypto.createCredenitals参数格式一至)或一个包含ssl配置文件名称的字符串 然后只有一个"Amazon RDS" | 以后再看 |
nodejs的mysql模块学习(三)数据库连接配置选项详解的更多相关文章
- nodejs的mysql模块学习(五)数据库连接配置之SSL
SSL选项 在SSL连接选项中需要一个字符串 或者对象 当是字符串的时候 将使用预定义的SSL配置文件 "Amazon RDS" 只有这一个预定义配置文件 用来连接到亚马逊RDS服 ...
- nodejs的mysql模块学习(二)连接数据库
nodejs连接mysql的方式有两种 官方建议的第一种是 let mysql = require('mysql'); let connection = mysql.createConnection( ...
- mysql 5.5数据库主从配置步骤详解
上次给大家介绍了mysql 5.1主从搭建配置教程,这次我们来实现mysql 5.5的主从复制,其实大体上配置是差不多的,只有点细微的差别. 系统:centos 5.x 需要的软件包:mysql-5. ...
- logstash中关于Jdbc输入配置选项详解
Setting Input type Required clean_run boolean No columns_charset hash No connection_retry_attempts n ...
- nodejs的mysql模块学习(十)连接池集群配置选项
连接池集群选项 canRetry : 如果true ,连接池集群会在连接失败时尝试连接 默认true removeNodeErrorCount : 如果连接失败,节点的errCount增加.当erro ...
- nodejs的mysql模块学习(四)断开数据库连接
断开连接有两种方式 end()函数 在这种情况下 所有先前排队的查询 仍然可以继续继续发送到服务器,但是如果在执行到断开连接的命令之前发生了致命的错误,那么end()将不会被执行 connection ...
- Nodejs的mysql模块学习(一)
介绍 mysql npm包 是一个nodejs的模块,由JavaScript编写 安装 npm install mysql 建立连接 var mysql = require('mysql');//引用 ...
- nodejs的mysql模块学习(六)连接池的创建和使用
介绍 在 软件工程 , 连接池 是一个 高速缓存 的 数据库连接 维持,使得连接可以当需要将来向数据库请求重复使用. [ 来源请求 ] 连接池用于提高数据库上执行命令的性能. 打开并保持每个用户的数据 ...
- nodejs的mysql模块学习(九)连接池集群
连接池集群 连接池集群可以提供多个主机连接 创建连接池集群 //创建连接池集群 var poolCluster = mysql.createPoolCluster(); //添加配置 config是一 ...
随机推荐
- 直线相交 POJ 1269
// 直线相交 POJ 1269 // #include <bits/stdc++.h> #include <iostream> #include <cstdio> ...
- java集合框架复习(一)
数组类Array是java中最基本的一个存储结构,它用于存储 一组连续的对象或一组类型相同的基本类型的数据. Array特点:效率高,但容量固定且无法动态改变, 缺点:无法判断其中存有多少元素,len ...
- [HIve - LanguageManual] Union
Union Syntax select_statement UNION ALL select_statement UNION ALL select_statement ... UNION is use ...
- HDU-3864 D_num Miller_Rabin和Pollard_rho
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3864 题意:给定一个数n,求n的因子只有四个的情况. Miller_Rabin和Pollard_rho ...
- mount失败
又一次遇到mount失败,提示文件系统类型错误.选项错误.有坏超级块等.之前是在ubuntu 14.04 lts desktop上挂载windows下共享文件夹遇到的.这次具体的环境如下:CentOS ...
- Hellow world!
其实一年前开始就有了些许开篇技术博客的想法,一直觉得写这些的人都一定好牛×.现刚毕业,我也是时候朝牛×之路迈进了.当然,我才刚入门不久,前路漫漫,需一步一脚印,先打算把平常遇到的一些问题与关注的东西都 ...
- Spring+Quartz 整合一:常规整合
步骤一: 定时任务需要一个配置文件(spring-mvc-timeTask.xml 随便起名),将其在web.xml中加载 <context-param> <param-name&g ...
- DelphiXE8新建AVD
相关资料: 1.http://jingyan.baidu.com/article/ea24bc398576b3da62b33107.html
- [iOS基础控件 - 6.12.1] QQ菜单管理 UITabBarController 控制器管理
A.需求 1.类似QQ.微信顶部或者底部的窗口转换导航条 2.给每个页面添加相应内容 B.UITabBarController 1.基本概念: (1)内容高度 iOS7之前内容高度为:屏幕高度 - ...
- ASP.NET MVC- 使用PageList.Mvc分页
ASP.NET MVC中进行分页的方式有多种,在NuGet上有提供使用PagedList.PagedList.Mvc进行分页. 1. 通过NuGet引用PagedList.Mvc 在安装引用Paged ...