mondb 常用命令学习记录

Posted 克洛克达尔丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mondb 常用命令学习记录相关的知识,希望对你有一定的参考价值。

 

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 : 100}}).pretty();

 


AND 条件

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

 

OR条件

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

 

AND 和 OR 联合使用

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

 

分页排序条件联合查询

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

 

备份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 常用命令学习记录的主要内容,如果未能解决你的问题,请参考以下文章

mondb基础

记录C#常用的代码片段

IOS开发-OC学习-常用功能代码片段整理

学习centos中记录的常用命令

常用python日期日志获取内容循环的代码片段

Linux常用命令学习记录