小知识,大挑战!本文正在参与「程序员必备小知识」创作活动
MongoDB 是一个文档型数据库,支持的数据结构非常松散,可以存储比较复杂的数据类型,查询语句可以使用 JavaScript 编写,其支持的 JSON 数据模型对 Node.js/JavaScript 开json怎么读发者很友好。
MongoDB 最大的java编译器特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表安全期计算器查询的绝大部分功能,而且还支持对数据建立索引,它的特点还有很多,请看下面介绍。
MongoDB 特点
- JSON 数据模型:MongoDB 的 JSON 数据模型,支安全持在一个文档中嵌套存安全期计算器储一个或多个对象,对应关系型数据库需要设计多个表来关联之间的关系,可能会产生一个误点 “Mong事务性工作oDB 是无模式的” 但Java其实 MongoDB 也是有模式设计的,在大多数简单的场景下我们只是省略json解析了安全教育平台登录入口它。
- 灵活性:在 MongoDB 的文档模型中需要安全教育手抄报增加或减少字段时,只需要在应用层插入数据时操作就可以了,无需下线数据库服务更改 Schema 来完成。这种灵事务活性折射出来的不好的地方就是随意增加、删除字段也会造成数据脏乱,在它的灵活性基础之上,可以自己定义一个规则来对数据操作做一个约json格式怎么打开束。
- 高可用:MongoDB 复制集(Replica Set)最大化的保证节点的高可用性,在java环境变量配置一个节点挂掉之后,其它节点可以正常的工作,其还有自恢复的能力,支持多中心容灾能力,至少要保证 3 个节点,可以在 3 ~ 50 之间,节点数量太多也不好,毕竟节点之间的心跳也是消耗资源的。
- 事务支持(保证数据一致):MongoDB 单表、单文档原生支持,4.0 支持了复制集多表、多行事务操作,4.2 支持了分片集的多表、多行事务操作。
- 分片技术:Mongjson解析oDB 的分片技术满足了在事务性工作数据量大幅增长时候的业务需求,大的数据集查询会导致服务器 CPU 被占用,分片的概念可以将数据拆分到不同的实例中。
本地版数据库
MongoDB 分为社区版本、企业版本两种类型,学习使用选择社区版本就够了 www.mongodb.com/download-ce… 这是 MongoDB 的下java编译器载中事务性工作是什么意思心,数据结构有哪些选择需要下载的版本和操作系统。MongoDB 的稳定版本都是偶数的,生产环境选择要注意。
Mac 系统下安装
Mac 系统可通过 Homebrew 安装 MongoDB 还是相对较简单的,如果 Homebrew 遇到被墙无法安装的,可尝试下 MacPorts 这个工具。
$ brew update # 更新 Homebrew 数据包
$ brew install mongodb # 安装 MongoDB
Linux 系统安装
下面是下载安json是什么意思装包解压的方式安装,Mac 上也可通过这种方式,下载相对应的json解析 Mac 系统的 tgz 版本即可。
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-4.2.2.tgz
$ tar -xvf mongodb-linux-x86_64-ubuntu1604-4.2.2.tgz
$ mv mongodb-linux-x86_64-ubuntu1604-4.2.2 mongodb-4.2.2
$ export PATH=$PATH:./data/soft/mongodb-4.2.2/bin # 注意,这个是你自己电脑上的安装路径
mongo 全局Java环境变量配置
上面 export PATH=
这个命令在关闭当前终端之后就无效了,这个时候你java语言网上搜索 Mong数据结构c语言版严蔚敏第二版答案oDB 安装后如何配置全局环境变量
大多会得到事务所类似以下答案安全教育平台作业登录:
vim ~/.bash_profile
export PATH=$PATH:./data/soft/mongodb-4.2.2/bin # 这个还是你自己电脑上的 mongodb 路径
source ~/.bash_profile
完事数据结构与算法之后,也许很幸运成功了,但也可能失败了,原因是一些系统默认的终端是 bash 所以按照上面的配置是没问题的,但是如果你使用的是 zsh 那就要对 .zshrc 的配置文件做修改javaee,按照上面流程,再json格式来一遍:
vim ~/.zshrc
export PATH=$PATH:./data/soft/mongodb-4.2.2/bin # 这个还是你自己电脑上的 mongodb 路径
source ~/.zshrc
检查版本
查看 MongoDB 版本,初步校验是否安装成功,出现以下信息则是正确的。
$ mongo --version
MongoDB shell version v4.2.2
启事务所所长npc动 MongoDB 服务
通过 --dbpath
参数自定义java环境变量配置目录路径,若省略 --dbpath
参数,将会使用系统默认的数据目录 (/djson格式怎么打开atjava编译器a/db
),–dbpath 指定的目录是用来存放 MongoDB 数据库的地方。
$ mongod --dbpath <自定义的目录路径>
执行完以上命令之后,会开启 MongoDB 服务安全工程师,默认监听的端口为 27017 看到类似以下日志信息,启动成功。
$ mongod --dbpath ./data
YYYY-MM-DDTHH:mm:ss.943+0800 I NETWORK [listener] Listening on 127.0.0.1
YYYY-MM-DDTHH:mm:ss.943+0800 I NETWORK [listener] waiting for connections on port 27017
YYYY-MM-DDTHH:mm:ss.944+0800 I SHARDING [LogicalSessionCacheReap] Marking collection config.transactions as collection version: <unsharded>
YYYY-MM-DDTHH:mm:ss.023+0800 I SHARDING [ftdc] Marking collection local.oplog.rs as collection version: <unsharded>
以上我们搭建的是一个单事务所机版的数据库,后面的文章中会介绍使用复制集搭建 MongoDB 服务器集群,下面还有一种更简单的方案在事务所所长npc云端快速的开启一个 MongoDB 集群。json数据
云端数据库
MongoDB Atlas cloud 是一个运行在云端的数据库,事务所无需安装、配置,也无需在java怎么读我们的机器上安全教育日安装 Mongo 服务,只需要一个 URL事务所所长的委托任务 即可访问数据库,数据结构c语言版还提供了非常酷的 UI 界面,易于使用。最重要的一点对于我们事务性工作初学者来说它提供了免费使用,最大限制为 512 MB,这对于小型项目是足够的。安全教育平台登录
之前在一篇 Serverless 的文章中有介绍如何开启一个 MongoDB Atlas cloud 集群,有详细的步骤介绍,可以看看这篇文章 使用 ServerLesjson格式怎么打开s, Njava语言odejs, MongoDB Atlas cloud 构建 REST API。
以下是一个创建好的数据库集群,标注了几个地java怎么读方可以看到有说明是 Replica Set 3 节点的,提供了链接方式,可以注册一个账号体验下。
终端链接 MongoDB Serjson数据ver
终端链接事务的四个特性到 MongoDB Server 主要通过客户端的 mongo 命令事务性工作链接,在安装数据结构实验报告好 MongoDB 服务器之事务性工作是什么意思后,客户端的 mongo 命令通常就已经安装了。安全
如果本地没有该命令,也可安装 brew install mongosh
使用 mongosh
替代 mongo
。
链接至本地 MongoDB Server
打开本地控制台输入命令 mongo 连接到 mongodb 服务器,也可以指定 IP 和 PORT
$ mongo --host 127.0.0.1 --port 27017
看到以下信数据结构教程第5版李春葆答案息链接成功,会显示 mongodb 的版本号、链接地址,默认端口号为 27017
$ mongo --host 127.0.0.1 --port 27017
MongoDB shell version v4.2.6
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("8e2f9799-473f-48e9-84cf-3515480f084f") }
MongoDB server version: 4.2.6
链接至 MongJavaoDB Atlas
MongoDB Atlas cloud 可以生成一段终端的链接字符串,为了安全,需要配置 IP 白名单和创建一个用户,链接安全成功如下所示:
$ mongo "mongodb+srv://cluster0.******.mongodb.net/test" --username admin
MongoDB shell version v4.2.6
Enter password:
connecting to: mongodb://cluster0-shard-00-02.******.mongodb.net:27017,cluster0-shard-00-00.******.mongodb.net:27017,cluster0-shard-00-01.******.mongodb.net:27017/test?authSource=admin&compressors=disabled&gssapiServiceName=mongodb&replicaSet=Cluster0-shard-0&ssl=true
Implicit session: session { "id" : UUID("bfe6c53b-accb-4f51-93e1-d849c099a9c4") }
MongoDB server version: 4.4.8
MongoDB Enterprise Cluster0-shard-0:PRIMARY>
数据库的jsonp一些基础命令操作
- 展示所有数据库: show dbs
- 查看当前所连接的数据库: db
- 查看当前数据库下的所有集合(数据表): show collections
- 切换/创建数据库: use demo 切换数据库,使用 use 之前我们不需要对数据库进行额外事务局是什么单位的创建,在 mongo 中会在需要的时候自己创建。
图形化工具链接
在客户端想快速的查看或检索一些数据,图形化工具有很多事务所的便利之处的,推荐一个工具 Robo 3T,官网地址:robomongo.org/ 自行下载,链接示例如下所示,上面是复制集json是什么意思的链接方式,下面是直链方式。 还有一个工具是 MongoDB 自带的 www.mongodb.com/try/downl事务性工作是什么意思oa…。
应用程序链接
应用程序以 Node.js 为例,可以使用 MongoDB 的 Node.js 驱动 mongodb
或 mongoose
这个模块,都可以。
我们在客户端每创建一个链接,Mong数据结构知识点总结oDB 的 Node.js 驱动都会在后json文件是干什么的台维护一个链接池数据结构知识点总结,在应用层我们创建一个实例就可以了,可采用单例模式防止创建过多链接。
const MongoClient = require("mongodb").MongoClient;
const dbConnectionUrl = 'mongodb+srv://:<password>@cluster0-xxx.mongodb.net/test?retryWrites=true&w=majority';
// const dbConnectionUrl = 'mongodb://localhost:27017/test';
let dbInstance = null
async function getMongoInstance() {
try {
if (dbInstance) {
return dbInstance;
}
dbInstance = await MongoClient.connect(dbConnectionUrl);
console.log("[MongoDB connection] SUCCESS");
return dbInstance;
} catch (err) {
console.log(`[MongoDB connection] ERROR: ${err.message}`);
throw err;
}
}
getMongoInstance()
怎么学习 MongoDB?
推荐几个 MongoDB 学习资源,可以做为学习过程中的参考资料,有收费的也有免费的,也都是笔者在学习、工作中看过的一些资料,如果你有其它的学习资源欢java培训迎留言区推荐。
- docs.mongodb.com/manual:MongoDB 官方文档,这是一手的学习资料,API 很多不需要完全都记住,使用时可以在这上面查找,经常使用的 API 时间长了慢慢也就记住了。
- mongoing.com:Mongo事务的四个特性DB 中文社区,上面有 Monjson数据goDB 中文手册 docs.mongoing.com,还有一些社区大咖博客,会发布安全期计算器一些 MongoDjava语言B 文章和一些实践等,遇到的大多数疑问,在这上面也都可以找到答案。每年也都有一些线下的沙龙大会,之前和同事也去过几期挺好的。
- MongoDB 高手课:极客时间上的事务局是什么单位一门收费课程,课程质量还是挺好的,有需求的可以先看看课程介绍 gk.java模拟器link/a/1事务所所长npc0xdw。
- github.comjava培训/qufei1993/blog/la安全教育平台作业登录bels事务所所长的委托任务/Mong数据结构c语言版严蔚敏第二版答案oDB:笔者最jsonp近正在写的一个 MongoDB 系列文章,记录了学习、工作中关于 MongoDB 的一些总结实践,欢迎关注。
- MongoDB 书籍:例如,MongoDBjson格式怎么打开 权威指南、MongoDB 实战等,不要贪多,看多少买多少,java编译器书籍可以帮助我们系统的掌握知识,但是也有不好的一点是容易java环境变量配置过时。
- university.mongodb.com:MongoDB 提供的在线免费课程,算是json是什么意思很权威的了。