用Nodejs连接 mysql

安装mysql 和nodejs

我是用docker安装的mysql

$ docker pull mariadb  #下载mariadb镜像
$ sudo pacman -S npm #安装npm
$ docker run --name mariadb -v ~/Documents/msql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=qinjingfei -d mariadb #运行mariadb 

mariadb 是mysql 的社区版本, 可以用docker ps 来看mariadb是否在运行

建立连接

首先安装mysql module

$ npm install mysql

然后,再新建一个demo.js文件

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost", // 需要用`docker inspect mariadb` 来查看host
  user: "yourusername", // root
  password: "yourpassword"  //qinjingfei
});

con.connect(function(err) {
  if (err) throw err;
  console.log("Connected!");
});

因为,我是用docker 运行的mariadb。所以,我需要用docker inspect mariadb来查看host. 下面是部分截图

可以看到 ipaddress是172.17.0.3, 所以host 就是172.17.0.3.

然后,就可以运行这个文件了

$ node demo.js

如果,一切都没有错误的话会得到下面的结果

Connected!

至此,我们就用Nodejs成功的连接上mysql了