node-mysql-libmysqlclient

Asynchronous MySQL binding for Node.js

Github stars Tracking Chart

Node-mysql-libmysqlclient Build status

Asynchronous MySQL binding for Node.js using libmysqlclient.

This module has been tested with Node.js versions 0.8.26, v0.10.25 and 0.11.10

Overview

These bindings provides all general connection/querying functions from the MySQL C API,
and partial support for prepared statements. Connect, query and fetchAll are asynchronous.
This module also includes support for asynchronous querySend from internals of libmysqlclient.

I started this project in 2010 when Node.js was growing. Ryan had plans to write this binding as part of GSoC.
It is now used by many projects and has more than 10 contributors,
who are listed in the AUTHORS file.
I also maintain the Node.js MySQL bindings benchmark which shows how mysql-libmysqlclient performs.

Node-mysql-libmysqlclient's source code is available in the Github repo and you can report issues at the project tracker.
Visit the module site for API docs and examples. You can also read some extra information in wiki.

Dependencies

To build this module you must install the libmysqlclient library and the development files for it.
mysql_config is used to determine the paths to the library and header files.
To install these dependencies, execute the commands below for the OS you're running.

For CentOS:

#> yum install mysql-devel

For openSUSE:

#> zypper install libmysqlclient-devel

For Debian-based systems/Ubuntu:

#> apt-get install libmysqlclient-dev

Alternatively, you can use aptitude for Debian-based systems.

Please refer to your system's documentation for more information and feel free to send me a patch for this readme.

Installation

You can install this module via NPM:

$> npm install mysql-libmysqlclient

You can also build latest source code from repository.
Please refer to the developers documentation for more information.

Contributing

This module is written in collaboration with many peoples listed on GitHub contributors page.
List of authors ordered by first contribution also available.

If you are interested in wide MySQL usage in Node.JS applications,
leave your comments to the code.
To contribute any patches, simply fork this repository using GitHub
and send a pull request to me. Thanks!

All information about development use and contribution is placed in the DEVELOPMENT file.

This module is used by Taobao guys
for their distributed MySQL proxy Myfox-query module.
There is long time developed Node.js ORM library called noblerecord.
It is inspired by Rails and widely used by Noblesamurai.
If you are looking for lightweight Node.js ORM on top of this module,
try mapper by Mario Gutierrez.

License

Node-mysql-libmysqlclient itself is published under MIT license.
See license text in LICENSE file.

Main metrics

Overview
Name With OwnerSannis/node-mysql-libmysqlclient
Primary LanguageJavaScript
Program languageShell (Language Count: 4)
Platform
License:Other
所有者活动
Created At2010-03-03 00:17:39
Pushed At2017-01-21 23:10:09
Last Commit At2017-01-03 23:19:50
Release Count37
Last Release Namev1.6.0 (Posted on )
First Release Namev0.0.2 (Posted on 2010-09-13 00:00:37)
用户参与
Stargazers Count229
Watchers Count16
Fork Count47
Commits Count832
Has Issues Enabled
Issues Count167
Issue Open Count14
Pull Requests Count18
Pull Requests Open Count0
Pull Requests Close Count15
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private