MongoDB Shell的使用

下载地址:https://www.mongodb.com/try/download/shell

以下是关于如何使用 MongoDB Shell 的一些基本步骤和常见操作:

前提条件:确保已经安装并启动了 MongoDB 服务。

启动 MongoDB Shell:在命令行终端中输入mongosh命令。如果 MongoDB 服务器运行在非默认端口或远程服务器上,可以使用以下命令连接:mongosh --host <hostname>:<port>(其中 <hostname> 是服务器的主机名或 IP 地址,<port> 是服务器的端口号)。

连接成功后,就可以在 MongoDB Shell 中执行各种操作了。

常见操作示例

  • 显示当前正在使用的数据库:db
  • 查看所有数据库:show dbsshow databases
  • 切换到另一个数据库:use <database_name> 。如果数据库不存在,当创建集合时,该数据库会被自动创建。
  • 插入一条数据:db.<collection_name>.insertOne({<document>})db.<collection_name>.insert({<document>}) 。例如,在名为 emp 的集合中插入一条数据:db.emp.insertOne({x: 1})
  • 查看当前数据库中所有集合:show collections
  • 查看集合中的数据:db.<collection_name>.find() 。若要格式化打印结果,可以添加 .pretty() 方法,如:db.emp.find().Pretty()
  • 退出 shell:可以输入 quit() 或者按下 ctrl+c 组合键。

另外,还可以通过设置变量 prompt 的值来自定义提示符的内容,显示更多信息,例如显示操作数、数据库和主机名、Mongo 服务的启动时间以及文档数等。示例代码如下:

  • 显示当前 shell 的操作数量:

    javascript 复制代码
    cmdcount = 1;
    prompt = function() {
      return (cmdcount++) + ">";
    }
  • 显示数据库和主机名:

    javascript 复制代码
    host = db.serverStatus().host;
    prompt = function() {
      return db + "@" + host + "$";
    }
  • 显示 mongo 服务的启动时间以及文档数:

    javascript 复制代码
    prompt = function() {
      return "uptime:" + db.serverStatus().uptime + " documents:" + db.stats().objects + ">";
    }

更多关于 MongoDB Shell 的详细功能和操作,可以参考 MongoDB 的官方文档或相关教程。同时,Shell 中还支持各种查询、更新、删除等操作,其语法和具体用法可以根据实际需求进行学习和使用。

请注意,上述示例中的命令和操作是基于 MongoDB 的一般用法,实际使用中可能会因具体的数据库结构和需求而有所不同。此外,MongoDB Shell 的功能非常丰富,还包括创建索引、执行聚合操作、管理用户和角色等,你可以根据具体的需求进一步探索和学习。如果你使用的是较新版本的 MongoDB,可能会有一些新的特性和语法,建议查阅相应版本的官方文档以获取最准确的信息。

相关推荐
今天AI了吗1 小时前
Python 基础语法(一):常量、变量、输入输出与运算符
开发语言·数据库·人工智能·python·sql·深度学习·机器学习
lilian2332 小时前
Harmony os 技术实战|拼豆制图27:用单字符编码承载 50 张 70×70 图纸
前端·数据库·华为·harmonyos
皮卡丘不断更2 小时前
手机优先的 Personal Ledger:把账目、学习和复盘放到同一个入口
数据库·sqlite·fastapi·开源项目·个人效率
保卫大狮兄3 小时前
设备管理从台账到报废,完整生命周期一次讲清
数据库·设备管理·设备
数据安全技术观察4 小时前
数据动态脱敏:让脱敏策略跟着数据目录走
大数据·网络·数据库
小席是个热心肠4 小时前
Redis的自我学习
数据库·redis·学习
2601_965798475 小时前
Salient Theme Setup Guide for Fast Creative WordPress Sites
数据库·web3·php·wordpress
@Mike@5 小时前
09-数据库学习笔记(数据库索引与过滤器)
数据库·笔记
程序员夏洛6 小时前
MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
数据库·mysql
Wang's Blog7 小时前
PostgreSQL笔记34:索引优化策略全景解析——从B-tree到HOT的核心原理与实践
数据库·笔记·postgresql