mongodb 的服务启动和基本操作命令
由于在dos 下操作mongodb 很不方便 所以我推荐大家使用mongodb 的可视化工具robomongo 这个是robomongo的下载网址
https://robomongo.org/download
不过关于dos 下的操作 还是希望大家了解一下
在操作前需要启动mongodb数据库服务
1.首先打开dos窗口,然后选择路径到你的安装路径下的bin目录(我的路径是的D:mongo\mongodb\bin)
2.然后输入启动命令(D:mongo\data\db 是我的数据库文件的目录前边两个 – 不能少) mongod --dbpath D:mongo\data\db
3.回车dos界面出现 12701 的字样说明服务启动成功了如图所示
服务启动成功后 就需要操作了。这时候我们需要再打开一个dos窗口(服务启动的窗口不要关闭)找到安装路径(我的安装路径 为 D:mongo\mongodb\bin) 执行 mongo 此时第一个dos窗口(也就是启动服务的窗口会显示)
#1 <1 connectionnow open> 字样说明此时链接数据库成功
操作数据库的dos 窗口就可以继续进行操作 ,例如查看所有数据库结果如图
也可以创建一个bat文件,不用每次都要敲击这些命令。创建***.bat,在里面输入
start mongod --dppath="F:\MongoDB\Server\3.2\db"
就可以了,双击它就相当于在DOS下输入命令。
我们在启动MySQL的时候是通过net start mysql和net stop mysql来开启和关闭的,那么是否能使用net start MongoDB和net stop MongoDB来启动和关闭呢?是可以的
首先,目录logs和mongod.cfg,如

mongod.cfg里面为:
logpath=F:\MongoDB\Server\3.2\logs\mongod.log
dbpath=F:\MongoDB\Server\3.2\db
然后在DOS命令里输入:
sc.exe create MongoDB binPath= "\"F:\MongoDB\Server\3.2\bin\mongod.exe\" --service --config= \"F:\MongoDB\Server\3.2\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"
回车就会看到
[sc] Create Service 成功
这个时候就可以使用net start MongoDB和net stop MongoDB来启动跟关闭mongo服务了。
下边是
基本操作:显示所有数据库:show dbs 用数据库:use xxx
创建集合 db.createCollection("集合名称",{capped:true,size:100000})
基本步骤:
新建数据库(db) :use student
新建集合(Collection) db.createCollection("集合名称");
可以新建文档:(document) document={"1":"2","3":"4"}
查看所有数据库:show dbs;
查看当前数据库下的所有集合:db.printCollectionStats();
三.插入操作
可以先定义一个文档document ,后将文档插入到集合中。或者直接将输入插入到集合中。
db.集合名称.insert(已定义的文档);
db.集合名称.insert(数据);
四.查询:
db.集合名称.find();显示文档
db.集合名称.find(where);
查询姓名为字符类型的数据记录
:$type操作符是基于BSON类型来检索集合中匹配的结果。
db.集合名称.find({"name":{$type:2}});
Double 1
String 2
Object 3
Array 4
Binary data 5
Object id 7
Boolean 8
Date 9
Null 10
Regular expression 11
JavaScript code 13
Symbol 14
JavaScript code with scope 15
32-bit integer 16
Timestamp 17
64-bit integer 18
Min key 255
Max key 127
db.集合名称.find({条件}).limit(10); // 满足条件的,取10条
五.更新操作
db.集合名称.update(where,set,未找到插入新的为true,更新多条为true);
db.集合名称.update({"id":"1"},{"$set":{"name":"yuan","sex":"男"}},false,true);
更新添加字段:$push
---db.student.update({"sno":2},{$push:{"classes":"san"}})
六.删除
db.集合名称.remove(where);
db.集合名称.remove();删除全部记录
db.集合名称.drop();删除全部文档(document)
七.操作符
(>) 大于 - $gt ---db.student.find({"sno":{"$gt":2}})
(<) 小于 - $lt---db.student.find({"sno":{"$lt":2}})
(>=) 大于等于 - $gte --示例:db.student.find({"sno":{"$gte":2}});
(<= ) 小于等于 - $lte --
八.一些操作
db.集合名称.Count(where); ---显示满足条件的条数---db.student.count({"sno":{$type:1}});
db.集合名称.distinct("key"); ---得到所有key的value(去掉重复的)---db.student.distinct("sno");
九.管理
查看collection数据的大小
db.集合名称.dataSize()
#查看colleciont状态
db.集合名称.stats()
#查询所有索引的大小
db.集合名称.totalIndexSize()
.与SQL对照
|
MongoDB |
||
|
查询全部 |
movies.find(new Document()) |
SELECT * FROM movies |
|
条件查询 |
movies.Find(new Document { { "title", "Hello Esr" } }); |
SELECT * FROM movies WHERE title= 'foobar' |
|
查询数量 |
movies.Find(new Document { { "title", "测试2" } }).Documents.Count(); |
SELECT COUNT(*) FROM movies WHERE `title` = 'foobar' |
|
数量范围查询 |
1, movies.Find(new Document().Add("$where", new Code("this.num > 50"))); |
select * from movies where num > 50 |
|
分页查询 |
movies.Find(new Document()).Skip(10).Limit(20); |
SELECT * FROM movies limit 10,20 |
|
查询排序语句 |
movies.Find(new Document()).Sort(new Document() { { "num", -1 } }); |
SELECT * FROM movies ORDER BY num DESC |
|
查询指定字段 |
movies.Find(new Document().Add("num", new Document().Add("$gt", 50)), 10, 0, new Document() { { "title", 1 } }); |
select title from movies where num > 50 |
|
插入语句 |
movies.Insert(new Document() { { "title", "测试" }, { "resuleData", DateTime.Now } }); |
INSERT INOT movies (`title`, `reauleDate`) values ('foobar',25) |
|
删除语句 |
movies.Remove(new Document() { { "title", "Hello Esr" } }); |
DELETE * FROM movies |
|
更新语句 |
movies.Update(new Document() { { "title", "测试2" } } |
UPDATE movies SET `title` = ‘测试1111’ WHERE `title` = '测试1111' |
|
Linq查询 |
(from item in db.GetCollection("movies").Linq() |
select * from movies where title like ‘%Esr’ |
mongodb 的服务启动和基本操作命令的更多相关文章
- 1.MongoDB之服务启动
1. 编写docker-compose.yaml文件 version: "3" services: mongo: image: mongo:4.2.6 ports: - 27017 ...
- 安装mongodb后服务启动不了的问题
安装mongodb后,在命令行进入mongoDB安装目录执行如下: mongod --dbpath [数据存放的本地路径] 提示如下错误: ERROR: dbpath (数据存放的本地路径) does ...
- MongoDB做为一项windows服务启动
MongoDB做为一项windows服务启动 Windows版本安装 MongoDB的官方下载站是http://www.mongodb.org/downloads,可以去上面下载最新的对应版本,有32 ...
- pm2命令,端口查询,mongodb服务启动,nginx服务启动,n模块的使用,搭建nodejs服务器环境,搭建oracledb服务器环境 linux的环境搭建
pm2命令 pm2 ls //查询pm2 启动的列表 pm2 start app.js //启动文件 pm2 restart app //重启项目 pm2 logs app //监控项目执行日志打印 ...
- MongoDB注册Windows服务启动
下载MongoDB安装到:E:\Work_App\MongoDB 这个目录 安装:E:\Work_App\MongoDB (安装在专门的目录中) 配置: 1.在E:\Work_App\MongoDB\ ...
- mongodb配置windows服务启动
第一步 下载MongoDB http://www.mongodb.org/downloads 第二步 解压到D:\mongodb\目录下,为了命令行的方便,可以把D:\mongodb\bin加到系统环 ...
- windows8系统安装MongoDB 2.6.3配置服务启动
转自:http://winfan.net/655.html 1. 下载mongodb包2. 解压zip至 D:\MongoDB3. 创建目录 D:\MongoDB\data\db4. 创建日志目录 D ...
- MongoDB 安装,启动与基本使用
一.MongoDB简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种.它在许多场景下可用于替代传统的关系型数据库或键/值存储方式.Mongo使用C++ ...
- 《Pro Express.js》学习笔记——Express服务启动常规七步
Express服务启动常规七步 1. 引用模块 var express=require('express'), compression=require('compression'), bo ...
随机推荐
- swift3.0 CoreGraphics绘图-实现画板
swift3.0对绘图的API进行了优化,看起来更swift了. 看下UI的构造.设置画笔粗细.清空面板和保存到本地 下面直接看画板文件 这里我做的比较复杂,记录触摸到的每个点,再连成路径,其实直接用 ...
- Storm源码阅读之SpoutOutputCollector
不得不说storm是一个特别棒的实时计算框架.为了对后文理解的方便,先说几个storm中的术语: Topology:拓扑图或者拓扑结构.在storm中它通过消息分组的分式连接Spout和Bolt节点定 ...
- Verilog HDL常用综合语法
前面已经记录了一些组成Verilog的基本组成,可以用这些基本组成来构成表达式.这一节,就来记录一下把这些表达式构成一个文件的各种行为描述语句. ①这里用Verilog基本要素进行的行为描述主要是针对 ...
- POJ 3669 Meteor Shower (BFS+预处理)
Description Bessie hears that an extraordinary meteor shower is coming; reports say that these meteo ...
- Hibernate学习总汇
Hibernate的基础知识 什么是框架? 什么是Hibernate框架? |--1.应用在javaee三层结构中的dao层 |--2.在dao层里面做对数据库进行crud操作,使用hibernate ...
- 在webpack中使用Code Splitting--代码分割来实现vue中的懒加载
当Vue应用程序越来越大,使用Webpack的代码分割来懒加载组件,路由或者Vuex模块, 只有在需要时候才加载代码. 我们可以在Vue应用程序中在三个不同层级应用懒加载和代码分割: 组件,也称为异步 ...
- CentOS编译PHP过程中常见错误信息的解决方法
原文链接:http://www.linuxidc.com/Linux/2014-05/102327.htm ********************************************** ...
- UITableView移除某行的分割线和让分割线宽度为cell的宽度
1.移除 UITableView 某一行的分割线 所谓移除,其实就是使其偏移出 cell 的显示范围,看不到即移除. 方法1: 移除系统的分割线,自己定义每行的分割线 self.tableView.s ...
- 一个UITableViewCell的简单动画效果
实现下面UITableViewDelegate的方法: forRowAtIndexPath:(NSIndexPath *)indexPath{ CATransform3D rotation; rota ...
- angular学习(四)-- Controller
1.4 控制器:Controller ng 中的控制器用来对 scope 进行操作 包括初始化数据和定义事件响应函数等 ng 用来解耦业务逻辑层和视图层的关键 controller 操作 scope, ...