MongoDB Shell

MongoDB Shell 是 MongoDB 提供的官方交互式界面,允许用户与 MongoDB 数据库进行交互、执行命令和操作数据库。

MongoDB Shell 是基于 JavaScript 的,允许用户直接在命令行或者脚本中使用 JavaScript 语言来操作 MongoDB 数据库。


安装 MongoDB Shell

MongoDB Shell 是 MongoDB 数据库安装包的一部分,因此,安装 MongoDB 数据库也会自动安装 MongoDB Shell。

在 macOS 上安装 MongoDB Shell

使用 Homebrew 安装:

如果你使用 Homebrew 管理 macOS 上的软件包,可以通过以下命令安装 MongoDB:

brew tap mongodb/brew
brew install mongodb-community-shell

这将安装 MongoDB 的最新版本及其相关工具,包括 MongoDB Shell。

手动下载安装:

另一种方法是从 MongoDB 官网下载适用于 macOS 的 MongoDB Shell,下载地址 MongoDB Shell Download | MongoDB :

下载后,解压安装包,将 bin 目录中 mongosh 二进制文件复制到 PATH 变量中列出的目录中,例如 /usr/local/bin:

sudo cp mongosh /usr/local/bin/
sudo cp mongosh_crypt_v1.so /usr/local/lib/

安装完成后,MongoDB Shell 将可以在命令行中通过 mongosh 命令启动。

若 macOS 阻止运行 mongosh,打开"系统偏好设置"中的"安全与隐私"以允许其运行。

在 Linux 上安装 MongoDB Shell

在大多数 Linux 发行版中,可以通过包管理器来安装 MongoDB Shell。例如,在 Ubuntu 上可以使用 apt 包管理器:

为 Ubuntu 22.04 (Jammy) 创建 /etc/apt/sources.list.d/mongodb-org-7.0.list 文件:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
sudo apt update
sudo apt install mongodb-shell

安装完成后,MongoDB Shell 将可以在命令行中通过 mongosh 命令启动。

另一种方法是从 MongoDB 官网下载适用于 Linux 的 MongoDB Shell,下载地址 MongoDB Shell Download | MongoDB :

下载后,解压安装包,将 bin 目录中 mongosh 二进制文件复制到 PATH 变量中列出的目录中,例如 /usr/local/bin:

sudo cp mongosh /usr/local/bin/
sudo cp mongosh_crypt_v1.so /usr/local/lib/

安装完成后,MongoDB Shell 将可以在命令行中通过 mongosh 命令启动。

在 Windows 上安装 MongoDB Shell

访问 MongoDB 官网下载页面(MongoDB Shell Download | MongoDB),选择适合 Windows 的 MongoDB Shell 版本,并下载安装程序。

运行下载的安装程序,并按照指示进行安装。在安装过程中,确保选择安装 MongoDB Shell(默认情况下会包含在安装中)。

可以选择在安装过程中配置环境变量,这样可以在命令行中直接运行 mongosh 命令来启动 MongoDB Shell。


使用 MongoDB Shell

安装完成后,可以通过以下步骤来使用 MongoDB Shell 连接到 MongoDB 数据库并执行操作。

启动 MongoDB Shell:

在命令行中输入 mongosh 命令,启动 MongoDB Shell,如果 MongoDB 服务器运行在本地默认端口(27017),则可以直接连接。

mongosh

查看版本:

mongosh --version
2.2.9

连接到 MongoDB 服务器:

如果 MongoDB 服务器运行在非默认端口或者远程服务器上,可以使用以下命令连接:

mongosh --host <hostname>:<port>

其中 <hostname> 是 MongoDB 服务器的主机名或 IP 地址,<port> 是 MongoDB 服务器的端口号。

执行基本操作:

连接成功后,可以执行各种 MongoDB 数据库操作。例如:

  • 查看当前数据库:db
  • 显示数据库列表:show dbs
  • 切换到指定数据库:use <database_name>
  • 执行查询操作:db.<collection_name>.find()
  • 插入文档:db.<collection_name>.insertOne({ ... })
  • 更新文档:db.<collection_name>.updateOne({ ... })
  • 删除文档:db.<collection_name>.deleteOne({ ... })
  • 退出 MongoDB Shell:quit() 或者 exit

实例

以下是使用 MongoDB Shell 连接到本地 MongoDB 服务器,并执行一些基本操作的示例:

实例

# 启动 MongoDB Shell
mongosh

# 连接到本地 MongoDB 服务器
test> show dbs
admin   40.00 KiB
config  72.00 KiB
local   40.00 KiB
runoob  72.00 KiB
test> use runoob
switched to db runoob

# 插入文档
runoob> db.mycollection.insertOne({ name: "Alice", age: 30 })
{
  acknowledged: true,
  insertedId: ObjectId('667cd8789a69705686ed70f2')
}


# 查询文档
runoob> db.mycollection.find()
[
  { _id: ObjectId('667cd8789a69705686ed70f2'), name: 'Alice', age: 30 }
]

# 更新文档
runoob> db.mycollection.updateOne({ name: "Alice" }, { $set: { age: 31 } })
{
  acknowledged: true,
  insertedId: null,
  matchedCount: 1,
  modifiedCount: 1,
  upsertedCount: 0
}

# 删除文档
runoob> db.mycollection.deleteOne({ name: "Alice" })
{ acknowledged: true, deletedCount: 1 }

# 退出 MongoDB Shell
runoob> quit()

MongoDB ShellMongoDB数据库的官方命令行工具,它提供了一个交互式的环境,可以与MongoDB数据库进行交互和管理。通过MongoDB Shell,你可以执行各种数据库操作,如查询、插入、更新和删除数据,创建和管理集合、索引等。 MongoDB Shell使用JavaScript语言编写,因此你可以使用JavaScript语法来操作数据库。它提供了一些内置的命令和方法,用于执行各种数据库操作。以下是一些常用的MongoDB Shell命令和操作: 1. 连接到数据库:使用`mongo`命令可以连接到MongoDB数据库。例如,`mongo --host <hostname> --port <port>`可以连接到指定的主机和端口上的数据库。 2. 切换数据库:使用`use <database>`命令可以切换到指定的数据库。例如,`use mydb`可以切换到名为"mydb"的数据库。 3. 查询数据:使用`db.<collection>.find(<query>)`命令可以查询指定集合中符合条件的数据。例如,`db.users.find({ age: { $gt: 18 } })`可以查询年龄大于18岁的用户数据。 4. 插入数据:使用`db.<collection>.insert(<document>)`命令可以向指定集合中插入数据。例如,`db.users.insert({ name: "John", age: 25 })`可以插入一个名为"John"、年龄为25岁的用户数据。 5. 更新数据:使用`db.<collection>.update(<query>, <update>)`命令可以更新指定集合中符合条件的数据。例如,`db.users.update({ name: "John" }, { $set: { age: 30 } })`可以将名为"John"的用户的年龄更新为30岁。 6. 删除数据:使用`db.<collection>.remove(<query>)`命令可以删除指定集合中符合条件的数据。例如,`db.users.remove({ age: { $lt: 18 } })`可以删除年龄小于18岁的用户数据。 这些只是MongoDB Shell的一些基本操作,还有很多其他的命令和功能可以用于更复杂的数据库操作和管理。如果你想了解更多关于MongoDB Shell的信息,可以参考MongoDB官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值