mongodb安装使用

https://docs.mongodb.com/mongodb-shell/install/ 官网教程

 来来来快和我一起get新技能

安装brew

brew 安装

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

 

  • 问题1

 

发现一个通过修改hosts解决此问题的办法

https://www.ipaddress.com/查询http://raw.githubusercontent.com的真实IP 199.232.28.133 。

修改hosts,添加如下内容:

199.232.28.133 raw.githubusercontent.com

 

 

开始安装mongsh

brew install mongosh

 

报错了吧。命好没报错的略过;

尝试解决

进入homebrew文件夹

 cd /usr/local/Homebrew/Library/Taps/homebrew

首先尝试删除homebrew-core

rm -rf homebrew-core

 

 git clone git://mirrors.ustc.edu.cn/homebrew-core.git/ /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core --depth=1

报错中.....

 

最后尝试升级

brew updata

继续报错哈哈哈哈

git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow

到这里是成功了。

然后再执行

brew install mongosh

 

 

 

进入正题吧实用mongo

 

monggo用法

 

 

连接数据库

mongosh "mongodb://mongodb0.example.com:28015" --username alice --authenticationDatabase admin

mongosh [远程MongoDB] --username 用户名

输入密码连接成功

当前默认数据库

db

列出用户可用的数据库

 show dbs 

创建数据库

use [dbName]  

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

插入文档

db.[COLLECTION_NAME].insert(document)  

例如

db.user.insert({
name: '张老三',
age: 18,
id: 1
})

显示一下内容表示插入成功

DeprecationWarning: Collection.insert() is deprecated. Use insertOne, insertMany, or bulkWrite. { acknowledged: true, insertedIds: { '0': ObjectId("6172541074c2636cbbabfd0e") } }

 

删除数据库

db.dropDatabase()  

删除当前数据库

 

更新文档

db.[COLLECTION_NAME].upadate(
<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 :可选,抛出异常的级别。

例子

db.user.updata({age:18},{$set:{age:19}})

 

删除文档

db.collection.remove( 
<query>,    
<justOne>
)  

 

参数说明:

  • query :(可选)删除的文档的条件。

  • justOne : (可选)如果设为 true 或 1,则只删除一个文档。

  • writeConcern :(可选)抛出异常的级别。

 

db.user.remove({name:'张老三'})

 

 

查询文档

非结构化的方式来显示所有文档。

db.[COLLECTION_NAME].find()

 

以格式化的方式来显示所有文档。

db.[COLLECTION_NAME].pertty()

 

   

原文地址:https://www.cnblogs.com/zshno1/p/15439501.html