下面我来详细讲解“node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】”的完整攻略。
环境准备
在阿里云服务器上,我们首先需要安装好 Node 和 MongoDB。在 Ubuntu 下,安装命令如下:
- 安装 Node.js
$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
$ sudo apt-get install -y nodejs
- 安装 MongoDB
$ sudo apt-get install -y mongodb
连接 MongoDB 数据库
在 Node.js 中,我们可以使用第三方库 Mongoose 来连接 MongoDB 数据库。下面是连接 MongoDB 数据库的几个步骤:
- 安装 Mongoose
$ npm install mongoose --save
- 编写代码
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test', { useNewUrlParser: true, useUnifiedTopology: true });
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log('Connected to MongoDB!');
});
上面的代码中,我们首先引入了 Mongoose 模块,然后使用 mongoose.connect()
方法连接到 MongoDB 数据库。在连接时,我们传入了两个参数,第一个参数是数据库的 URL,这里的 URL 是 mongodb://localhost/test
,其中 localhost
是数据库服务器的地址,test
是数据库的名称。第二个参数是一个配置选项的对象,这里我们向其中传入了 { useNewUrlParser: true, useUnifiedTopology: true }
,这是为了使用最新的 MongoDB 驱动程序。注意:这里我们假设 MongoDB 数据库运行在本地服务器上。
- 测试连接
运行以上代码后,如果没有出现任何错误,就说明我们已经成功连接到了 MongoDB 数据库。我们可以在回调函数中输出一些提示信息,例如:
console.log('Connected to MongoDB!');
示例说明
接下来,我将给出两个在 Node.js 中使用 Mongoose 连接到 MongoDB 数据库的示例。
示例一:创建一条数据
在这个示例中,我们将使用 Mongoose 插入一条数据到 MongoDB 数据库中。
- 编写代码
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test', { useNewUrlParser: true, useUnifiedTopology: true });
const Cat = mongoose.model('Cat', { name: String });
const kitty = new Cat({ name: 'Garfield' });
kitty.save().then(() => console.log('Saved a cat to MongoDB!'));
上面的代码中,我们首先定义了一个 Cat
模型,用于操作数据库中名为 cats
的集合。然后我们创建了一条数据,命名为 kitty
,并将其保存到数据库中。在保存时,我们使用了一个 Promise,来在保存完成后输出一条提示信息。
- 运行代码
在终端中运行上面的代码:
$ node app.js
如果没有出现任何错误,就说明我们已经成功将数据保存到了 MongoDB 数据库中。你可以在 MongoDB 的命令行终端中输入以下命令来查看此时的数据:
> use test
> db.cats.find()
示例二:查询数据
在这个示例中,我们将使用 Mongoose 从 MongoDB 数据库中查询一条数据。
- 编写代码
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test', { useNewUrlParser: true, useUnifiedTopology: true });
const Cat = mongoose.model('Cat', { name: String });
Cat.findOne({ name: 'Garfield' }).then(cat => console.log(cat));
上面的代码中,我们通过 Cat.findOne()
方法查询了一条数据,该数据中 name
属性为 Garfield
。在查询完成后,我们输出了查询结果。
- 运行代码
在终端中运行上面的代码:
$ node app.js
如果没有出现任何错误,就说明我们已经成功从 MongoDB 数据库中查询到了一条数据。可以在命令行终端中查看查询结果。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】 - Python技术站