mongodb命令

MongoDB使用固定集合

♀尐吖头ヾ 提交于 2019-12-01 09:56:44
MongoDB中的固定集合:大小是固定的,类似于循环队列,如果没有空间了,最老的文档会被删除以释放空间,新插入的会占据这块空间。 1、固定集合(oplog) oplog 是一个典型的固定集合,因为其大小的显示,可以用来短暂的恢复部分数据。 需要使用显示的创建方式 db.createCollection('my_collection', {"capped":true, "size": 100000}) 此命令创建一个名为my_collection,大小为100000字节的固定集合。 此外还可以定义集合中的文档数量 db.createCollection("my_collection2", {"capped": true, “size”:100000, "max": 100}); 固定集合创建之后就不能改变,如果需要修改固定集合的属性,只能将它删除之后再重建 为固定集合指定文档数量限制时,必须同时指定固定集合的大小,不管先达到哪一个限制,之后插入的新文档就会把最老的文档挤出集合:固定集合的文档数量不能超过文档数量限制,固定集合的大小也不能超过大小限制。 创建固定集合时,还有另一个选项,可以将已有的某个常规集合转换为固定集合,可以使用 convertToCapped 命令实现。 db.runCommand({'convertToCapped': 'test', 'size': 10000

MongoDB 走马观花(全面解读篇)

喜夏-厌秋 提交于 2019-12-01 09:32:28
目录 一、简介 二、基本模型 BSON 数据类型 分布式ID 三、操作语法 四、索引 索引特性 索引分类 索引评估、调优 五、集群 分片机制 副本集 六、事务与一致性 一致性 小结 一、简介 MongoDB 是一款流行的开源文档型数据库,从它的命名来看,确实是有一定野心的。 MongoDB 的原名一开始 来自于 英文单词"Humongous", 中文含义是指"庞大" ,即命名者的意图是可以处理大规模的数据。 但笔者更喜欢称呼它为 "芒果"数据库,除了译音更加相近之外,原因还来自于这几年使用 MongoDB 的两层感觉: 第一层感受是"爽",使用这个文档数据库的特点是几乎不受什么限制,一方面Json文档式的结构更容易理解,而无Schema约束也让DDL管理更加简单,一切都可以很快速的进行。 第二层感受是"酸爽",这点相信干运维或是支撑性工作的兄弟感受会比较深刻,MongoDB 由于入门体验"太过于友好",导致一些团队认为用好这个数据库是个很简单的事情,所以开发兄弟在存量系统上埋一些坑也是正常的事情。 所谓交付一时爽,维护火葬场.. 当然了,这句话可能有些过。 但这里的潜台词是:与传统的RDBMS数据库一样,MongoDB 在使用上也需要认真的考量和看护,不然的化,会遇到更多的坑。 那么,尽管文档数据库在选型上会让一些团队望而却步,仍然不阻碍该数据库所获得的一些支持,比如 DB

mongodb(1)

邮差的信 提交于 2019-12-01 09:06:16
目录 一、数据库操作 二、集合操作 文档操作 插入文档 更新文档 更新操作符 删除文档 查询文档 条件操作符 与和或 分页查询 聚合查询 参考 一、数据库操作 切换数据库 use database_name use school 注:如果数据库存在,则切换到该数据库下,如果此数据库还不存在,也可以切过来,但是并不能立刻创建该数据库 查看所有得数据库 show dbs 备注:刚创建的数据库shcool如果不在查询的列表中,如果要显示它,则需要向school中插入数据 db.students.insert({age:1}) 查看当前使用的数据库 db 删除数据库 db.dropDatabase() 二、集合操作 查看集合帮助 use demo db.demo.help() 创建集合 db.createCollection(collection_name) 创建集合并插入一个文档 db.collection_name.insert({document}) //例如 db.demo.insert({age:1}) 注:上图里的ObjectId是有规律的,规律如下 之前我们使用MySQL等关系型数据库时,主键都是设置成自增的。但在分布式环境下,这种方法就不可行了,会产生冲突。为此,MongoDB采用了一个称之为ObjectId的类型来做主键。ObjectId是一个12字节的 BSON

mongodb(2)

て烟熏妆下的殇ゞ 提交于 2019-12-01 09:05:49
目录 通过配置项启动数据库 导入导出数据 备份与恢复 锁定和解锁数据库 用户管理 数据库高级命令 什么是固定集合 gridfs 参考 通过配置项启动数据库 参数 含义 -dbpath 指定数据库文件的目录 --port 端口 默认是27017 28017 --fork 以后台守护的方式进行启动 --logpath 指定日志文件输出路径 --config 指定一个配置文件 --auth 以安全方式启动数据库,默认不验证 首先要建立一个mongo.conf文件,通过文件来启动mongodb服务器 为什么要这么做? 把常用配置写在一个文件里,这样不用每次都自己输入参数,提高易维护性 mongo.conf dbpath=F:\mongo\data logpath=F:\mongo port=50001 注意data目录要提前创建好 启动服务器 mongod --config mongo.conf 停止数据库 bin/mongod -shutdown -config data/mongodb.conf 启动客户端 mongo --port 50001 导入导出数据 这命令是保存了文件格式 mongoimport 导入数据 mongoexport 导出数据 参数 含义 -h [ --host ] 连接的数据库 --port 端口号 -u 用户名 -p 密码 -d 导出的数据库 -d

yum 安装 mongodb

女生的网名这么多〃 提交于 2019-12-01 08:24:36
1 .添加阿里源 vi /etc/yum.repos.d/mongodb.repo [mongodb-org] name=MongoDB Repository baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.2/x86_64/ gpgcheck=0 enabled=1 2 .使用命令安装 yum -y install mongodb-org 3 .设置开机启动 systemctl enable mongod systemctl start mongod 此博文来源于: https://blog.csdn.net/idwtwt/article/details/83716634 来源: https://www.cnblogs.com/Small-sunshine/p/11672888.html

MongoDB

╄→尐↘猪︶ㄣ 提交于 2019-12-01 08:20:49
一、下载安装   下载地址: https://www.mongodb.com/download-center/community 二、配置环境变量   1、找到下载之后MongoDB下的bin文件夹,复制其地址 C:\Program Files\MongoDB\Server\3.2\bin      2、打开计算机属性=>高级系统设置=>环境变量=>编辑系统变量=>将刚刚复制的地址追加到变量值里地址前加英文字符分号(;C:\Program Files\MongoDB\Server\3.2\bin)点击确定并重启计算机 三、使用MongoDB   1、在任意盘符下创建一个文件用于存储数据库文件   1、window+r 输入cmd 回车打开小黑窗口   2、挂载MongoDB 小黑窗口输入 mongod --dbpath C:\data\db(数据库地址)回车运行 注:看是否挂载成功在浏览器中访问127.0.0.1:27017,下图为访问成功   3、缩小cmd窗口打开一个新的cmd 输入 mongo 进入mongo环境,链接成功后即可运行mongo命令操作MongoDB 四、MongoDB命令   1、其他操作     1)show dbs : 显示当前的所有数据库列表     2)use 数据库名 : 切换到指定数据库     3)db : 查看当前数据库     4)show

mongodb的更新语句

依然范特西╮ 提交于 2019-12-01 08:14:05
MongoDB 使用 update() 和 save() 方法来更新集合中的文档: update()方法: update() 方法用于更新已存在的文档。语法格式如下: db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } ) 参数说明: query : update的查询条件,类似sql update查询内where后面的。 update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的 upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入(相当于插入)。 multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。 writeConcern :可选,抛出异常的级别。 实例 我们在集合 col 中插入如下数据: >db.col.insert({ title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库', by: '菜鸟教程', url:

Ubuntu下,解决mongod服务无法启动的问题

可紊 提交于 2019-12-01 07:52:01
Ubuntu下,解决mongod服务无法启动的问题 错误描述: 在启动MongoDB客户端时候,报以下错误: <ignore_js_op> 原因是mongod服务没开启,开启mongod服务命令:sudo service mongod start 可以通过命令 ps aux | grep mongod 查看,发现并没有开启成功 <ignore_js_op> 根本原因是在启动MongoDB服务端报错了,提示:Data directory /data/db not found <ignore_js_op> 这个是MongoDB数据库默认的存储位置,默认没有创建,需要我们手动创建,命令: sudo mkdir –p /data/db sudo chmod 777 /data/db 最后,依次启动MongoDB服务端、mongod服务,MongoDB客户端,问题解决了。 更多技术资讯可关注:gzitcas 来源: https://www.cnblogs.com/heimaguangzhou/p/11670676.html

分片集群

戏子无情 提交于 2019-12-01 07:25:21
目录 mongodb分片+副本集方式部署集群 介绍 一、配置准备 二、启动分片节点和配置节点 三、配置节点构成副本集 四、分片节点构成副本集 五、启动路由节点、并增加分片 六、设置数据库启用分片,启用索引。 七、写入数据测试。 七、手动预先分片 使用脚本的方式启动集群: mongodb分片+副本集方式部署集群 介绍 背景:mongodb集群搭建方式有三种,1、主从(官方已经不推荐),2、副本集,3、分片。这里介绍如何通过分片sharding方式搭建mongodb集群。sharding集群方式也基于副本集,在搭建过程中,需要对分片和配置节点做副本集。最后将做好的副本集的分片加入到路由节点,构成集群。 sharding方式的集群中,有三类角色,分别是shard,config,router。如下图所示。 一、配置准备 创建存放数据的文件夹 mkdir -p /usr/local/software/mongodb/mongo-cluster/data/shard01 mkdir -p /usr/local/software/mongodb/mongo-cluster/data/shard02 mkdir -p /usr/local/software/mongodb/mongo-cluster/data/shard21 mkdir -p /usr/local/software/mongodb

node.js操作数据库之MongoDB+mongoose篇

独自空忆成欢 提交于 2019-12-01 07:13:59
前言 node.js 的出现,使得用前端语法(javascript)开发后台服务成为可能,越来越多的前端因此因此接触后端,甚至转向全栈发展。后端开发少不了数据库的操作。 MongoDB 是一个基于分布式文件存储的开源数据库系统。本文为大家详细介绍了如何用 node.js + mongoose 玩转 MongoDB 。希望能帮到有需要的人。 由于我用Mac开发,以下所有操作都是在Mac下进行。 一、 环境搭建 安装Node.js 有 node 环境的可以跳过。 nodejs官网 提供了 macOS 安装包,直接下载安装即可。现在 nodejs 稳定版已经到了 12.11.1 。 安装MongoDB MongoDB 是为现代应用程序开发人员和云时代构建的基于文档的通用分布式数据库。 上个月(9月) macOS 包管理器 Homebrew 宣布移除 MongoDB 。原因是去年10月 MongoDB 宣布将其开源许可证从 GNU AGPLv3 切换到 SSPL(Server Side Public License) ,以此回应 AWS 等云厂商将 MongoDB 以服务的形式提供给用户而没有回馈社区的行为,MongoDB 希望从软件即服务上获取收入。Homebrew 认为 MongoDB 已经不再属于开源范畴... 言归正传,由于上述原因,我们不能直接使用 brew install