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是一 ...
随机推荐
- Python闭包与javascript闭包比较
实例一 python def line_conf(): def line(x): return 2*x+1 print(line(5)) # within the scope line_con ...
- URAL-1982 Electrification Plan 最小生成树
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1982 题意:无向图,给n个点,n^2条边,每条边有个一权值,其中有k个点有发电站,给出这 ...
- NodeJs 开源
iwebpp.io - 运行P2P Node.js web 服务,穿透防火墙,NAT https://github.com/InstantWebP2P/iwebpp.io pm 是一个轻量级的Node ...
- MySQL 大表优化方案探讨
当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑.部署.运维的各种复杂度,一般以整型 ...
- Spark生态之Spark Graphx
- Spring Auto-Wiring Beans with @Autowired annotation
In last Spring auto-wiring in XML example, it will autowired the matched property of any bean in cur ...
- C#枚举数值与名称的转换
在应用枚举的时候,时常需要将枚举和数值相互转换的情况.有时候还需要转换成相应的中文.下面介绍一种方法. 首先建立一个枚举: /// <summary> /// 颜色 /// </su ...
- Android中回调接口的使用
MainActivity如下: package cn.testcallback; import android.os.Bundle; import android.app.Activity; /** ...
- PostgreSQL中,如何查表属于哪个数据库
db1=# \x Expanded display is on. db1=# SELECT * FROM information_schema.tables WHERE table_name='tab ...
- Codeforces Round #172 (Div. 2) B. Nearest Fraction 二分
B. Nearest Fraction Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/281/p ...