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是一 ...
随机推荐
- lighttpd mod_status模块
用过nginx的status可以查看服务器的状态,之后就想lighttpd有没有这样的模块呢 之后看下配置文件,真的有,然后就试下 第一步, "mod_auth" 把这个前面的#号 ...
- Azure支持docker简介以及使用指南
Docker 是一个开源的项目,主要的特点是能将应用程序包装在一个 LXC (Linux Container) 容器中,当这些应用被包装进容器后,部署.迁移都变得更为简单.与传统的虚拟化技术相比,虚拟 ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
- 如何在安裝SELinux的环境执行Quartus II
(原創) 如何在安裝SELinux的環境執行Quartus II? (SOC) (Quartus II) (Linux) (RedHat) Abstract一般人安裝Linux時,也會同時安裝SELi ...
- pku3670 Eating Together
http://poj.org/problem?id=3670 DP,最长不降子序列,O(n*logn)解法 #include <stdio.h> #define N 30030 int n ...
- work8
使用裸指针: #include <iostream>#include <memory>#include <stdio.h>#include <cstring& ...
- Maven构建Web项目问题汇总
1.Dynamic Web Module 3.0 requires Java 1.6 or newer? 修改pom.xml文件,如下: <build> <plugins> & ...
- Win7下使Users数据与程序分离
大家知道,数据是用户最大的财富,但Windows系统默认的模式是将所有软件都安装在C盘,在Windows XP时代,数据文件夹会放在Document And Setting 目录下,在Win7时代,数 ...
- ocp 1Z0-051 23-70题解析
23. Examine thestructure proposed for the TRANSACTIONS table: name Null Type TRANS_ID NOT NULLNUMBER ...
- JSF 2 graphicImage example
In JSF, you can use <h:graphicImage /> tag to render a HTML "img" element. For examp ...