[toc]
## pre
mongodb数据库不用提前创建,不像mysql,mongodb如果发现数据库不存在会帮我们自动创建,这种特性**不仅**表现在创建数据库上,集合、文档上也是
## 命令行(原生)连接数据库
命令窗体中输入 mongo --host=127.0.0.1 或者 mongo 按回车键
```
mongo //一般直接敲回车即可
```
如果出现类似waiting for connections on port 27017就表示启动成功,已经在27017端口上监听了客户端的请求
## mongoose连接数据库
### 安装
```
npm i mongoose
```
### 利用mongoose连接数据库
- user 用户名
- pass 密码
- ip IP地址
- port 端口号
- database 数据库
格式
```
var mongoose = require("mongoose");
mongoose.connect("mongodb://user:pass@ip:port/database");
```
usage
```
let mongoose = require('mongoose');
let conn = mongoose.createConnection('mongodb://localhost/ahhh');
```
>[warning] 一般都使用createConnection来创建链接,因为调用它后会将链接给返回,以便我们创建模型
### 连接事件
```
//如果说打开数据库失败,那么会触发error事件
conn.on('err',function(err){
console.error('err:',err);
});
//如果数据库连接成功,成功的打开了数据库,那么会触发open事件
conn.on('open',function(err){
console.error('open',err);
})
```