mongodb命令

03 存储库之MongoDB

浪尽此生 提交于 2019-12-06 00:30:35
03 存储库之MongoDB 一 简介 MongoDB是一款强大、灵活、且易于扩展的通用型数据库 1、易用性 MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库。 不采用关系型主要是为了获得更好得扩展性。当然还有一些其他好处,与关系数据库相比,面向文档的数据库不再有“行“(row)的概念取而代之的是更为灵活的“文档”(document)模型。 通过在文档中嵌入文档和数组,面向文档的方法能够仅使用一条记录来表现复杂的层级关系,这与现代的面向对象语言的开发者对数据的看法一致。 另外,不再有预定义模式(predefined schema):文档的键(key)和值(value)不再是固定的类型和大小。由于没有固定的模式,根据需要添加或删除字段变得更容易了。通常由于开发者能够进行快速迭代,所以开发进程得以加快。而且,实验更容易进行。开发者能尝试大量的数据模型,从中选一个最好的。 2、易扩展性 应用程序数据集的大小正在以不可思议的速度增长。随着可用带宽的增长和存储器价格的下降,即使是一个小规模的应用程序,需要存储的数据量也可能大的惊人,甚至超出 了很多数据库的处理能力。过去非常罕见的T级数据,现在已经是司空见惯了。 由于需要存储的数据量不断增长,开发者面临一个问题:应该如何扩展数据库,分为纵向扩展和横向扩展,纵向扩展是最省力的做法

MongoDB

走远了吗. 提交于 2019-12-06 00:17:57
介绍 MongoDB是一款强大、灵活、且易于扩展的通用型数据库 易用性 MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库。 不采用关系型主要是为了获得更好得扩展性。当然还有一些其他好处,与关系数据库相比,面向文档的数据库不再有“行“(row)的概念取而代之的是更为灵活的“文档”(document)模型。 通过在文档中嵌入文档和数组,面向文档的方法能够仅使用一条记录来表现复杂的层级关系,这与现代的面向对象语言的开发者对数据的看法一致。 另外,不再有预定义模式(predefined schema):文档的键(key)和值(value)不再是固定的类型和大小。由于没有固定的模式,根据需要添加或删除字段变得更容易了。通常由于开发者能够进行快速迭代,所以开发进程得以加快。而且,实验更容易进行。开发者能尝试大量的数据模型,从中选一个最好的。 易扩展 应用程序数据集的大小正在以不可思议的速度增长。随着可用带宽的增长和存储器价格的下降,即使是一个小规模的应用程序,需要存储的数据量也可能大的惊人,甚至超出 了很多数据库的处理能力。过去非常罕见的T级数据,现在已经是司空见惯了。 由于需要存储的数据量不断增长,开发者面临一个问题:应该如何扩展数据库,分为纵向扩展和横向扩展,纵向扩展是最省力的做法,但缺点是大型机一般都非常贵,而且 当数据量达到机器的物理极限时

MongoDB数据库

半世苍凉 提交于 2019-12-06 00:17:06
一、CRUD操作 1.数据库操作 #创建 use 数据库名字(有则进入,无责创建,如果新建的数据库没数据,show dbs 是不会显示新建的数据库的) #删除 use 数据库名字 # 先切换到需要删除的库下 db.dropDatabase() 2.集合操作(表操作) #创建 db user # user为库名 user # 这里会显示库名 db.user.insert({"name":"xy","age":18}) # 插入数据 3.数据行,文档操作 单条数据新增与查找 多条数据新增与查找 db.table1.find({name:"egon"}) # 查找名字等于egon的 db.table1.find({name:{"$ne":"egon"}}) # 查找名字不等于egon的 不等于:$ne 大于:$gt 小于:$lt 大于等于:$gte 小于等于::$lte # SQL:and,or,not # MongoDB:字典中逗号分隔的多个条件是and关系,"$or"的条件放到[]内,"$not" #1、select * from db1.user where id >= 2 and id < 4; db.user.find({'_id':{"$gte":2,"$lt":4}}) #2、select * from db1.user where id >= 2 and age < 40

MongoDB 4.2 的主要亮点(转载)

北慕城南 提交于 2019-12-05 23:58:50
在6月份召开的MongoDB全球用户大会上, MongoDB官宣了MongoDB Server 4.2,在经过100,000多个运行实例的测试后,MongoDB 4.2表现强劲。现在4.2版本正式上线,并为生产环境的部署做好了准备。 “MongoDB 4.2经受了100,000多个运行实例的考验,表现强劲。” ——Eliot Horowitz,MongoDB CTO & Co-Founder MongoDB 4.2 的主要亮点 分布式事务 扩展了MongoDB对多文档ACID【原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)】的支持保障能力,从复制集到共享集群,使客户能够用于更加广泛的应用场景。【通过观看Eliot在MongoDB全球大会主题发言中播放的 演示片 ,可以了解分布式事务的运行方式。】 按需式物化视图 使用了新的$merge运算符。在集合中对大型聚合操作的输出结果进行缓冲是一种普遍使用的模式,而新的$merge运算符可以帮助你高效地更新这些结果,从而替代对这些结果进行全部重新计算的旧有模式。【阅读这篇 博文 可以对该功能有一个初步了解。】 通配符索引功能 使高度异构集合(例如,产品目录)的建模工作变得简单自然,同时,不会对索引支持功能造成很大破坏。你可以简单定义一个过滤器

MongoDB的安装和使用

妖精的绣舞 提交于 2019-12-05 22:11:45
这里介绍MongoDB的安装和使用方法,包括安装Mongo、使用Shell命令操作MongoDB以及Java API编程实例等。 安装MongoDB ​ 首先,在Linux系统中打开一个终端,执行如下命令导入公共秘钥到包管理器中: $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 ​ 然后,创建MongoDB的文件列表,命令如下: $ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb.list ​ 执行如下命令来更新包管理器: $ sudo apt-get update ​ 最后,执行如下命令安装MongoDB: $ sudo apt-get install -y mongodb-org ​ 安装完成后,在终端输入以下命令查看MongoDB版本: $ mongo -version ​ 安装成功以后,启动MongoDB的命令如下: $ systemctl daemon-reload

MongoDB分片及副本集配置说明

人走茶凉 提交于 2019-12-05 20:42:47
MongoDB 分片及副本集配置说明 目录 MongoDB 分片及副本集配置说明 ... 1 第一部分 副本集 ... 2 第一步 副本集部署 ... 3 第二步 副本集初始化 ( 在哪个端口下初始化都行 ) . 4 第三步 启动仲裁服务器 ... 4 第二部分 分片 ... 5 第一步 开启 config 服务器 ... 5 第二步 开启 mongos 服务器 ... 5 第三步 启动 mongod 服务器 ... 5 第四步 分片配置 ... 6 第三部分 附录 ... 7 一、分片介绍 ... 7 二、试验配置说明 ... 8 第一步 开启 config 服务器 ... 8 第二步 开启 mongos 服务器 ... 8 第三步 启动 mongod 服务器 ... 9 第四步 服务配置 ... 9 第五步 查看效果 ... 10 第一部分 分片 图例说明:本例用三台机器作为示例,他们的ip分别为192.168.2.196、192.168.2.197、192.168.2.198, 每台服务器上分别存放着config服务器(端口为:20001)、 mongos服务器(端口为:20000)、mongod服务器(端口为:30001)、副本集服务器(端口:30002)。 在MongoDB里面存在另一种集群,就是分片技术,跟sql server的表分区类似

mongod

偶尔善良 提交于 2019-12-05 19:24:25
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库。 它和我们使用的关系型数据库最大的区别就是约束性,可以说文件型数据库几乎不存在约束性,理论上没有主外键约束,没有存储的数据类型约束等等* *关系型数据库中有一个 "表" 的概念,有 "字段" 的概念,有 "数据条目" 的概念** MongoDB中也同样有以上的概念,但是名称发生了一些变化,严格意义上来说,两者的概念即为相似,但又有些出入,不过无所谓,我们就当是以上概念就好啦 优势: 由于数据保存在单一文件中,数据库的部署和发布都比较简单,适用于内嵌在应用程序中。 数据量不是太大时,速度比传统数据库要快。 缺点: 由于数据保存在单一文件中,数据库打开时,该文件会被整个load到内存,因此数据库不能过大(100M以内,个人测试)。 MongoDB的数据结构 User: [ {id:1,name:"蔡文姬",age:16,gender:"女"}, {id:2,name:"嫦娥",age:16,gender:"女"}, { id:3, name:"孙悟空", age:16, gender:"女" }, { id:"四", name:123, age:"十六

前端开发小斋--Mongodb篇

霸气de小男生 提交于 2019-12-05 17:25:48
安装和启动 安装 官方安装文档 本地mac Os推荐使用Homebrew ⚠️ 目前直接使用~~brew install mongodb~~ 安装 mongodb 时提示: Error: No available formula with the name 'mongodb' ;那是因为MongoDB不再是开源的了,并且已经从Homebrew中移除 #43770 最新安装方式: brew install mongodb-community 最新安装方式参考文章 配置 配置文件:`/usr/local/etc/mongod.conf` 日志目录路径:`/usr/local/var/log/mongodb` 数据目录路径:`/usr/local/var/mongodb` 启动 本地终端输入 mongod --config /usr/local/etc/mongod.conf 启动后另开终端输入 mongo mongod 是用来连接到mongodb数据库服务器的,即服务器端。 mongo 是用来启动MongoDB shell的,是mongodb的命令行客户端。 验证 按照默认的配置文件启动 mongod --config /usr/local/etc/mongod.conf 通过浏览器访问http://localhost:27017/ 也可以验证是否安装成功,如果出现 It looks

MongoDB(四):数据类型、插入文档、查询文档

陌路散爱 提交于 2019-12-05 14:27:46
1. 数据类型 MongoDB支持许多数据类型。 字符串 - 这是用于存储数据的最常用的数据类型。MongoDB中的字符串必须为 UTF-8 。 整型 - 此类型用于存储数值。 整数可以是 32 位或 64 位,具体取决于服务器。 布尔类型 - 此类型用于存储布尔值( true / false )值。 双精度浮点数 - 此类型用于存储浮点值。 最小/最大键 - 此类型用于将值与最小和最大 BSON 元素进行比较。 数组 - 此类型用于将数组或列表或多个值存储到一个键中。 时间戳 - ctimestamp ,当文档被修改或添加时,可以方便地进行录制。 对象 - 此数据类型用于嵌入式文档。 对象 - 此数据类型用于嵌入式文档。 Null - 此类型用于存储 Null 值。 符号 - 该数据类型与字符串相同; 但是,通常保留用于使用特定符号类型的语言。 日期 - 此数据类型用于以UNIX时间格式存储当前日期或时间。您可以通过创建日期对象并将日,月,年的日期进行指定自己需要的日期时间。 对象ID - 此数据类型用于存储文档的ID。 二进制数据 - 此数据类型用于存储二进制数据。 代码 - 此数据类型用于将JavaScript代码存储到文档中。 正则表达式 - 此数据类型用于存储正则表达式。 2. 插入文档 2.1 insert()和save方法插入文档 引导数据插入到MongoDB集合中

【MongoDB】用Docker安装一个MongoDB最新版玩玩

给你一囗甜甜゛ 提交于 2019-12-05 12:43:37
1 安装 本文假设大家已经安装好了 docker 并能正常使用,所以不讲解如何安装 docker 了。用 docker 安装 MongoDB 最新版本如下: # 从repository查找mongo的相关镜像,结果很多,其中第一条为官方的镜像 $ docker search mongo # 下载官方镜像的最新版本 $ docker pull mongo:latest # 完成后,检查是否下载成功 $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos 7 5e35e350aded 12 days ago 203MB mongo latest 965553e202a4 3 weeks ago 363MB hello-world latest fce289e99eb9 10 months ago 1.84kB 仅需要简单几个命令,我们就拥有了MongoDB的最新镜像了,后续就可以使用了。 2 启动 完成MongoDB的镜像下载后,启动就非常简单了,一个命令即可: $ docker run -itd --name mongo -p 27017:27017 mongo --auth 305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c (1) -