使用 Node.js 和 MongoDB 进行协作
本次将简单介绍Node.js和MongoDB的协作方法。
MongoDB的特点
首先,我会解释一下MongoDB的特点。
MongoDB的特点如下:
1. 支持半结构化的数据存储和灵活的数据模型。
2. 强大的查询语言和索引功能,能够高效地检索和分析数据。
3. 提供水平扩展和复制功能,支持处理大规模数据。
4. 支持地理空间数据和图数据的存储和查询。
5. 具有可靠性和高可用性,能够自动处理故障和故障转移。
6. 开放源代码,拥有活跃的社区和丰富的生态系统。
(1)作为无模式文档导向数据库的特点
– 数据以无模式文档的形式存储,可以随时添加任意字段
– 可以通过检索条件进行对数值进行搜索,实现排序和聚合
(2)具备作为标准功能的可扩展性功能
– 具备复制功能,自动故障转移功能
– 具备范围分区功能,自动平衡功能
(3) 与RDB相比,在读写性能方面表现更好
– 减少了事务和关系限制,能够发挥类键值存储(KVS)的性能水平。
(4) 开发便利性
– 开发者可以使用主要编程语言提供的基于原生套接字协议开发驱动程序,以确保在任何环境下都能发挥性能。
– 基于标准的REST接口,使用广泛普及的JSON格式进行数据传输和接收。
有如上所述的特点。
安装MongoDB。
那么现在我们开始安装MongoDB吧。
這次我們將使用Homebrew進行安裝。
如果尚未安裝Homebrew,請先進行安裝。
我们将使用以下命令进行安装:
brew tap mongodb/brew
接下来,使用以下命令安装软件包:
brew 安装 mongodb-community
安装已经完成了。
我们来确认一下是否能够实际启动。
启动
brew服务启动mongodb-community
停止MongoDB社区版本的brew服务。
如果没有问题的话,就可以了。
我们来详细确认一下,请查看这里的官方资料。
与Node.js的连接
让我们来实际从Node.js连接到MongoDB。首先,请创建一个名为Sample/index.js的文件。
接下来,使用以下命令创建package.json文件。
npm init
接下来,使用以下命令安装MongoDB包:
npm install mongodb –save
现在准备工作已经完成了。
那么,我来写代码了。
var MongoClinet = require('mongodb').MongoClient;//MongoClient取得
var url = 'mongodb://localhost:27017/'; //今回はlocalhostなのでこの表記
MongoClinet.connect(url, (error, client) => {
var db = client.db('sample');//どのDBを使用するか
client.close();//操作を行った後に切断
});
以上就是必需的最低代码。
现在准备好操作 MongoDB 中的名为 “sample” 的数据库了。
然而,我无法确定目前是否已经成功连接,所以我们可以尝试写下一些实际指示。
var MongoClinet = require('mongodb').MongoClient;
var url = 'mongodb://localhost:27017/';
MongoClinet.connect(url, (error, client) => {
var db = client.db('sample');
db.createCollection('test', (error, collection) => {
client.close();
});
});
以上的代码是对名为sample的DB创建名为test的collection的指令。
让我们来执行一下吧,运行 index.js 节点。
在执行之前,请确保在本地上启动了MongoDB(如果没有启动,将会出现”TypeError: Cannot read property ‘db’ of undefined” 错误)。
接下来我们将确认执行结果。
在终端上连接到MongoDB并进行确认。
[步骤]
1. 使用mongo命令连接到MongoDB。
2. 使用show dbs命令查看数据库列表。
3. 使用use sample命令访问名为sample的数据库。
4. 使用show collection命令查看其中内容。
如果已经创建了名为”test”的集合,则说明成功。
这样就成功地通过Node.js连接到了MongoDB,并成功地创建了集合。