位置: 编程技术 - 正文

通过node-mysql搭建Windows+Node.js+MySQL环境的教程

编辑:rootadmin

推荐整理分享通过node-mysql搭建Windows+Node.js+MySQL环境的教程,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

MySQL是一款常用的开源数据库产品,通常也是免费数据库的首选。查了一下NPM列表,发现Nodejs有库可以访问MySQL,felixge/node-mysql似乎是最受关注项目,我也决定尝试用一下。

要注意名字,”felixge/node-mysql”非”node-mysql”,安装部分会介绍这个小插曲!

目录

node-mysql介绍 建立MySQL测试库 node-mysql安装 node-mysql使用

1. node-mysql介绍

felixge/node-mysql是一个纯nodejs的用javascript实现的一个MySQL客户端程序。felixge/node-mysql封装了Nodejs对MySQL的基本操作,% MIT公共许可证。

项目地址: 建立MySQL测试库

本地创建MySQL测试库:nodejs

重新登陆MySQL

新建一个user表

3. node-mysql安装

我的系统环境

win7 bitNodejs:v0..5Npm:1.2.MySQL:Server version: 5.6. MySQL Community Server (GPL)创建工程:nodejs-node-mysql

这里有一个小插曲

安装“node-mysql”后,打开package.json文件发现,这个项目地址是

所以,我也不准备花时间测试了,重新安装felixge/node-mysql的包。

重新安装node-mysql

这回就对了,继续下面的开发!

创建node程序启动文件:app.js

第一个测试

运行node

这样我们就让Nodejs连接上了MySQL。

4. node-mysql使用

通过node-mysql搭建Windows+Node.js+MySQL环境的教程

下面我们要对node-mysql的API进行常用的测试。

表新删改查连接池配置MySQL断线重连连接池超时测试1). 表新删改查修改app.js

控制台输出:

由于node的异步的,上面是一个连续的操作,代码会被写的支离破碎。我们可以通过async库对上面代码进行封装,请参考文章:Nodejs异步流程控制Async

2). 连接池配置

增加文件:app-pooling.js

控制台输出:

3). MySQL断线重连

分别模拟3种错误

a.登陆密码错误b.数据库宕机c.数据库连接超时新增文件:app-reconnect.js

a. 模拟密码错误

修改password: ‘nodejs'

控制台输出。

b. 模拟数据库宕机正常启动node,然后杀掉mysqld的进程。

控制台输出。

这个异常,直接导致node程序被杀死!

c. 模拟连接超时,PROTOCOL_CONNECTION_LOST切换到root账户, 修改MySQL的wait_timeout参数,设置为毫秒超时。

修改文件:app-reconnection.js,在最后增加代码

程序会每融秒,做一次查询。

控制台输出

我们自己的程序捕获了“PROTOCOL_CONNECTION_LOST”异常,并自动的实现了数据库重连。

4). MySQL连接池的超时测试

针对wait_timeout问题,我们再对连接做一下测试。

修改app-pooling.js文件

控制台输出:

连接池,已经解决了自动重连的问题了,后面我们的开发,可以尽量使用pooling的方式。

Node.js中JavaScript操作MySQL的常用方法整理 一、建立数据库连接:createConnection(Object)方法该方法接受一个对象作为参数,该对象有四个常用的属性host,user,password,database。与php中链接数据库的

使用NodeJs 开发微信公众号(三)微信事件交互实例 微信公众号有个规则,一旦开启了开发者模式,其他的常规功能就都必须通过接口调用完成。比如说自定义菜单功能,必须通过发送post请求的方式生成

初步使用Node连接Mysql数据库 使用Node做Web页面开发,基本上是连接非关系型数据库mongodb,而这里我还是先尝试连接了一下mysql数据库,因为相对于mysql来说mongodb过于生疏,想着快速

标签: 通过node-mysql搭建Windows+Node.js+MySQL环境的教程

本文链接地址:https://www.jiuchutong.com/biancheng/370684.html 转载请保留说明!

上一篇:Node.js的MongoDB驱动Mongoose基本使用教程(node操作mongodb数据库)

下一篇:Node.js中JavaScript操作MySQL的常用方法整理(node.js详解)

  • 增值税留抵退税是什么意思
  • 公司垫付生育津贴凭证
  • 发票报销哪些要素不能少
  • 实用9%税率的
  • 化粪池合同书
  • 勘探费收费标准
  • 手工发票有没有期限
  • 年偿债基金和年金现值
  • 车辆购置税账务怎么处理流程
  • 房租怎么抵扣个税计算方法
  • 融资租赁营改增时间
  • 购买房产怎么确认收入
  • 公司股东可以自己买保险吗
  • 发票作废 费用
  • 装修增值税普通发票几个点
  • 金税盘全额抵扣分录怎么做
  • 小规模印花税减免性质代码和项目名称
  • 发出商品退回
  • 金税盘抄税报税清卡流程图
  • 教育附加税怎么退
  • 销售商品抹零需要怎么入账
  • 存货盘亏进项税额转出会计分录怎么做
  • 利润表中的其他综合收益
  • 询证函有法律效力吗
  • linux获取网络接口及ip命令
  • 华为mate50 pro
  • plugin.exe是什么进程
  • 移动硬盘通过软件改硬盘容量怎么改
  • 进程控制块PCB不包括( )
  • 股东分担债务
  • 房地产评估费计算公式
  • PHP:oci_fetch_array()的用法_Oracle函数
  • 当月认证了发票但没有进行增值税申报
  • 预防cpu被烧毁的办法
  • 混合成本的分解方法很多,通常有
  • 金银首饰零售业必须为一般纳税人吗
  • 夕阳下的大白鲨过山车,美国新泽西州 (© John Van Decker/Alamy)
  • php 格式化字符串
  • php pdo连接sqlserver
  • 借递延所得税资产贷以前年度损益调整
  • 设备租赁费怎么入账
  • 150讲轻松搞定python网络爬虫
  • 直线折旧法账务处理例题
  • 预缴税款表怎么打印出来
  • 对公账号可以绑定微信提现吗
  • mongodb时序
  • 个体工商户要开票吗
  • 权益工具是金融资产还是非金融资产
  • 含税与不含税的计算公式
  • 入库验收过程中可能出现哪些问题,该如何处理
  • 2021年废铁回收
  • 残保金如何做会计分录
  • 清算所得税计税基础
  • 捐赠支出税前扣除比例
  • 公司购买的办公楼怎么交房产税
  • 地方教育费附加从哪年开始征收的
  • 财务控制的方法和措施
  • 解决Win7 x64安装解压版mysql 5.7.18 winx64出现服务无法启动问题
  • task hots windows
  • centos5.3安装教程
  • win10阻止可能不需要的应用吗
  • 怎么彻底删除win11安全中心
  • 如何查看winxp系统的运行内存
  • 把mac屏幕切换到桌面desktop
  • mac光盘无法退出怎么解决
  • unity脚本模板
  • python 列表分片
  • 用shell脚本实现菜单页面
  • python调用cuda执行加法
  • 安卓手机怎么设置自动化
  • jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
  • won10安装
  • python中import导入模块的方法
  • 四川税务局发票下载
  • 广东省电子税务局官网登录入口
  • 青岛契税优惠
  • 电子税务局网上实名认证流程
  • 理财持有时间
  • 副局长是由局长任命的吗
  • 营业执照每个季度申报吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设