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" | 以后再看 |

浙公网安备 33010602011771号