mondb 常用命令学习记录

一、MongoDB 下载安装

MongoDB官网 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https://www.mongodb.com/download-center#community

  • MongoDB for Windows 64-bit 适合 64 位的 Windows Server 2008 R2, Windows 7 , 及最新版本的 Window 系统。
  • MongoDB for Windows 32-bit 适合 32 位的 Window 系统及最新的 Windows Vista。 32 位系统上 MongoDB 的数据库最大为 2GB。
  • MongoDB for Windows 64-bit Legacy 适合 64 位的 Windows Vista, Windows Server 2003, 及 Windows Server 2008 。

创建数据目录

MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在根目录下((如: C:\ 或者 D:\ 等 )。

二、命令行下运行 MongoDB 服务器

  1.打开dos命令行 win + r   输入 cmd

2.进入mongodb安装目录

cd D:\MongoDB\Server\4.0\bin

  

 3.运行mongo.exe

D:\MongoDB\Server\4.0\bin>mongo.exe

  运行成功

三、常用命令

1.MongoDB 创建数据库的语法格式如下

use DATABASE_NAME

如果数据库不存在,则创建数据库,否则切换到指定数据库。

2.查看有哪些数据库

> show dbs;
admin 0.000GB
cars 0.301GB
config 0.000GB
local 0.000GB
rundb 0.000GB

3.进入rundb数据库

> use rundb
switched to db rundb
>

4.展示db库数据表列表

> show tables;
admin
col
rundb
test
users

5.在admin表中添加一条数据

db.admin.insert({"id":"1","username":"zhangsan","password":"123456","sex":"1"});

语法如下:

db.COLLECTION_NAME.insert(document)

6.修改数据(注意修改会覆盖原本所有数据字段)

db.admin.update({'id':'1'},{'username':'fffffffffffffffffff'});
语法如下:

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 :可选,抛出异常的级别。

7.删除数据

db.table_name.remove({'username':'fffffffffffffffffff'});

  

语法如下:

db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)

参数说明:

  • query :(可选)删除的文档的条件。
  • justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
  • writeConcern :(可选)抛出异常的级别。

8.分组group

db.getCollection('table').aggregate([{$group : {_id : "$ziduanming"}}])

9.查询数据

db.admin.find({'username':'zhangsan'}).pretty() //根据条件查询

MongoDB 条件操作符

条件操作符用于比较两个表达式并从mongoDB集合中获取数据。

在本章节中,我们将讨论如何在MongoDB中使用条件操作符。

MongoDB中条件操作符有:

  • (>) 大于 - $gt
  • (<) 小于 - $lt
  • (>=) 大于等于 - $gte
  • (<= ) 小于等于 - $lte

操作符查询

db.table.find({id: {$gt : }}).pretty();

AND 条件

db.table.find({key1:value1, key2:value2}).pretty()

OR条件

{
$or: [
{key1: value1}, {key2:value2}
]
}

AND 和 OR 联合使用

db.table.find({"likes": {$gt:}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()

分页排序条件联合查询

db.table.find({likes : {$gt : }}).skip().limit().sort({"likes":-});
skip 开始行数
limit 查询多少条
sort({key:val}) val 正序 val - 倒序

备份db库

mongodump   //备份所有库至bin/dump/目录

--host :要导出数据库 ip
--port :要导出的实例节点端口号
--username :数据库用户名
--password :数据库用户密码
--collection :要导出的表名
--db :要导出的表所在数据库名
--out :要导出的文件路径(默认为当前文件夹)


mongoexport --collection ai_session_conversa --db ai_xbot --out ai_session_conversa.json

 

还原导入mongodb库

mongorestore -d upkeep --dir=D:/text    //test库MongoDB数据恢复

--host :要导入的数据库 ip
--port :要导入的实例节点端口号
--username :数据库用户名
--password :数据库用户密码
--collection :要导入的表名
--db :要导入的表所在数据库名
--file :要导入的源文件路径(默认为当前文件夹)

mongoimport --collection ai_session_conversa --db ai_xbot --file ai_session_conversa.json

php中mongodb使用方法(使用前请安装对应版本的php_mongodb.dll扩展)

<?php

	$m = new MongoClient();    // 连接到mongodb
$db = $m->test; // 选择一个数据库
$collection = $db->runoob; // 选择集合
$document = array(
"title" => "MongoDB",
"description" => "database",
"likes" => 100,
"url" => "http://www.runoob.com/mongodb/",
"by", "菜鸟教程"
); $collection->insert($document); //数据插入 $collection->update(array("title"=>"MongoDB"), array('$set'=>array("title"=>"MongoDB 教程"))); // 更新文档 $collection->remove(array("title"=>"MongoDB 教程"), array("justOne" => true)); // 移除文档 $collection->find(); //数据查询 ?>

  

参考文档:

  mongodb安装 http://www.runoob.com/mongodb/mongodb-window-install.html

  mongodb手册 http://www.runoob.com/mongodb/mongodb-tutorial.html

mondb 常用命令学习记录的更多相关文章

  1. Linux常用命令学习记录

    兄弟连Linux培训 ,小编整理了常用的Linux学习命令: 1 cp 拷贝命令 参数:-p 文件属性一起拷贝 -r 拷贝文件夹 -d 软链信息等一起拷贝 -a 是-rdp的简写 2 find 文件查 ...

  2. linux 常用命令学习记录

    rm -f *.sh 2.grep -rn "enng" * 查找文件内容包含enng的文件(注意:文件名有xian的不会查询出) find . ! -name "*.s ...

  3. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

  4. mongodb常用命令学习笔记

    mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...

  5. Linux的几个概念,常用命令学习

    Linux的几个概念,常用命令学习---------------------------------设备名装载点// 通过装载点访问设备-------------------------------- ...

  6. # Linux 命令学习记录

    Linux 命令学习记录 取指定文件夹下的任意一个文件,并用vim打开 vi $(ls -l|grep "^-"|head -n 1|awk '{print $9}') 统计给定文 ...

  7. npm常用命令学习(npm install -D,semver版本规范, npm进行版本管理的最佳实践用法)

    什么是npm npm有两层含义.一层含义是Node的开放式模块登记和管理系统,网址为npmjs.org.另一层含义是Node默认的模块管理器,是一个命令行下的软件,用来安装和管理Node模块. npm ...

  8. liunx 常用命令学习笔记

    通过linux 命令pwd:显示当前所在的目录ls:显示当前目录下的文件cd:切换路径 cd..返回上一级路径mkdir:新建目录rmdir:删除目录 touch:新建文件rm:删除文件 gedit: ...

  9. windows下docker的安装及常用命令学习

    docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...

随机推荐

  1. 程序员从宏观、微观角度浅析JVM虚拟机!

    1.问题 1.JAVA文本文件如何被翻译成CLASS二进制文件? 2.如何理解CLASS文件的组成结构? 3.虚拟机如何加载使用类文件的生命周期? 4.虚拟机系列诊断工具如何使用? 5.虚拟机内存淘汰 ...

  2. Java Spring MVC框架搭建(一)

    环境准备 >>>>>>java JDK和tomcat,eclipse 1.创建项目 2.项目名称自定义,这边为demo 3.我们已经创建完一个动态网站的项目,还得下 ...

  3. Vue基于vue-quill-editor富文本编辑器使用心得

    vue-quill-editor的guthub地址,现在市面上有很多的富文本编辑器,我个人还是非常推荐Vue自己家的vue-quill-deitor,虽然说只支持IE10+,但这种问题,帅给别人吧! ...

  4. java内存溢出的情况解决方法

    内存溢出虽然很棘手,但也有相应的解决办法,可以按照从易到难,一步步的解决. 第一步,就是修改JVM启动参数,直接增加内存.这一点看上去似乎很简单,但很容易被忽略.JVM默认可以使用的内存为64M,To ...

  5. 爸爸又给Spring MVC生了个弟弟叫Spring WebFlux

    情景引入 很早之前,Java就火起来了,是因为它善于开发和处理网络方面的应用. Java有一个爱好,就是喜欢制定规范标准,但自己又不善于去实现. 反倒是一些服务提供商使用它的规范标准来制造应用服务器而 ...

  6. 版本控制工具——Git常用操作(上)

    本文由云+社区发表 作者:工程师小熊 摘要:用了很久的Git和svn,由于总是眼高手低,没能静下心来写这些程序员日常开发最常用的知识点.现在准备开一个专题,专门来总结一下版本控制工具,让我们从git开 ...

  7. LeetCode矩阵题型

    以三角形遍历矩阵 ; i < matrix.size(); ++i) { ; j < matrix[i].size(); ++j) swap(matrix[i][j], matrix[j] ...

  8. 【1】Asp.Net Core2.2从环境配置到应用建立

    作者:Eleven 来源:公众号[软谋net] [前言] .Net Core开源&跨平台,已经肉眼可见将成为.Net平台的未来,在企业招聘需求上已经频频见到,接触到很多公司内部都已经开始尝试C ...

  9. .net 配置swagger

    第一步: 在nuget.org中查找Swashbuckle并下载 在nuget.org中查找Swagger.net.UI,并下载 第二步: 下载完之后,App_Start多了三个文件 Swagger. ...

  10. Activiti(一) activiti数据库表说明

    activiti介绍: activiti是一个业务流程管理(BPM)框架.它是覆盖了业务流程管理.工作流.服务协作等领域的一个开源的.灵活的.易扩展的可执行流程语言框架.开发人员可以通过插件直接绘画出 ...