MongoDB的连接数据库,创建、删除数据库,创建、删除集合命令

在这里插入图片描述

本文主要介绍MongoDB的连接数据库,创建、删除数据库,创建、删除集合命令。

目录

  • MongoDB连接数据库
    • 连接到本地 MongoDB 实例
    • 连接到远程 MongoDB 实例
  • MongoDB创建和删除数据库
  • MongoDB创建和删除集合
    • 创建集合
    • 删除集合

MongoDB连接数据库

连接 MongoDB 数据库是使用 MongoShell 或客户端库的第一步。
在这里,我将介绍如何使用 MongoShell 连接 MongoDB 数据库。

连接到本地 MongoDB 实例

默认情况下,MongoDB 在本地主机的 27017 端口上运行。要连接到本地 MongoDB 实例,请按照以下步骤进行操作:

  1. 打开终端或命令提示符。

  2. 运行“mongo”命令。如果 MongoDB 安装在本地主机上,并且已启动 MongoDB 服务,那么您会看到类似于以下内容的输出:

    MongoDB shell version v4.2.6
    connecting to: mongodb://127.0.0.1:27017/?	compressors=disabled&gssapiServiceName=mongodb
    Implicit session: session { "id" : UUID("d7c90de5-ac7c-47f5-a7c3-25dce77dde4f") }
    MongoDB server version: 4.2.6
    Welcome to the MongoDB shell.
    
  3. 如果您希望连接到非默认端口运行的 MongoDB 实例,则可以使用以下命令:

    mongo --port <port_number>
    

    例如,要连接到端口号为 27018 的 MongoDB 实例,可以使用以下命令:

    mongo --port 27018
    

连接到远程 MongoDB 实例

如果您想要连接到运行在其他服务器上的 MongoDB 实例,您需要知道以下信息:

  • 远程 MongoDB 实例的 IP 地址或域名。
  • 远程 MongoDB 实例正在运行的端口号。
  • 如果 MongoDB 实例是安全的,则需要用户名和密码。

使用 MongoDB 客户端库,您可以使用以下代码连接到远程 MongoDB 实例:

import pymongo

# 远程 MongoDB 实例的连接字符串
conn_str = "mongodb://<username>:<password>@<ip_address>:<port_number>/"

# 建立 MongoDB 连接
client = pymongo.MongoClient(conn_str)

请将代码中的 <username><password><ip_address><port_number> 替换为实际的值。

使用 MongoShell 连接远程 MongoDB 实例的方法与连接本地实例的方法类似。只需要将上面的命令替换为以下命令:

mongo "mongodb://<username>:<password>@<ip_address>:<port_number>/<database_name>"

请确保将 <username><password><ip_address><port_number><database_name> 替换为实际值。

这就是连接 MongoDB 数据库的基本步骤。请注意,在此之前,您需要确保已经安装了 MongoDB 并启动了 MongoDB 服务。

MongoDB创建和删除数据库

在MongoDB中,创建数据库非常简单。只需要使用MongoDB Shell中的命令即可完成。
以下是详细步骤:

  1. 打开MongoDB Shell。在命令行中输入mongo即可。

  2. 创建数据库。在MongoDB Shell中,使用以下命令来创建一个新的数据库:

    use <database_name>
    

    例如,假设要创建一个名为“my_database”的新数据库,可以使用以下命令:

    use my_database
    

    请注意,这个命令只是告诉MongoDB,我们想要使用一个名为“my_database”的数据库。如果该数据库不存在,MongoDB将自动创建它。

  3. 插入数据。在创建数据库后,您可以使用insert()命令向数据库中插入数据。例如,可以使用以下命令向“my_database”数据库中的“my_collection”集合中插入一个新文档:

    db.my_collection.insert({ name: "John", age: 30, email: "john@example.com" })
    
  4. 查看数据。您可以使用find()命令查看数据库中的数据。例如,以下命令将返回“my_collection”集合中的所有文档:

    db.my_collection.find()
    
  5. 删除数据库。如果您想要删除创建的数据库,可以使用以下命令:

    db.dropDatabase()
    

    请注意,这个命令会永久删除整个数据库及其所有集合和数据。因此,请谨慎使用该命令。

这就是MongoDB创建数据库的基本步骤。请记住,MongoDB是非关系型数据库,因此与传统关系型数据库(如MySQL或Oracle)不同,MongoDB没有表的概念,而是使用集合。在MongoDB中,集合是文档的分组。每个文档都是一条记录,这些记录可以存储在集合中。

MongoDB创建和删除集合

在 MongoDB 中,创建和删除集合非常简单。以下是详细步骤:

创建集合

在 MongoDB 中,当您向集合插入一条记录时,MongoDB 会自动创建集合(如果它不存在)。但是,如果您需要手动创建集合,可以使用以下命令:

db.createCollection("<collection_name>")

例如,要创建一个名为“my_collection”的集合,请使用以下命令:

db.createCollection("my_collection")

在 MongoDB 中,集合是动态的,因此在创建集合后,只要向它添加一条记录,它就会被自动创建。

您还可以使用以下选项来创建集合:

  • capped:如果集合是“capped”(固定大小),则创建的集合将是固定大小的集合,当容量达到限制时,最旧的记录将被删除。
  • size:指定集合的初始大小(以字节为单位)。
  • max:指定集合可以容纳的最大记录数。

例如,要创建一个大小为 1000000 字节的固定大小的集合,可以使用以下命令:

db.createCollection("my_capped_collection", { capped: true, size: 1000000 })

删除集合

删除集合也很简单。您可以使用以下命令来删除集合:

db.<collection_name>.drop()

例如,要删除名为“my_collection”的集合,请使用以下命令:

db.my_collection.drop()

请注意,这个命令会永久删除集合及其所有文档。因此,请谨慎使用该命令。

这就是 MongoDB 创建和删除集合的基本步骤。请记住,在 MongoDB 中,集合类似于关系型数据库中的表。每个集合包含多个文档,这些文档类似于表中的记录。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/226330.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SuperMap iObject.NET三维场景拖拽框选实现详解及完整源代码(一)——环境准备及项目配置

作者&#xff1a;超图研究院技术支持中心-于丁1 SuperMap iObject.NET三维场景拖拽框选实现详解及完整源代码&#xff08;一&#xff09;——环境准备及项目配置   三维场景框选是一种在三维空间中进行选择和操作的功能&#xff0c;它可以让使用者通过鼠标拖动来创建一个矩形…

kafka C++实现消费者

文章目录 1 Kafka 消费者的逻辑2 Kafka 的C API2.1 RdKafka::Conf2.2 RdKafka::Event2.3 RdKafka::EventCb2.4 RdKafka::TopicPartition2.5 RdKafka::RebalanceCb2.6 RdKafka::Message2.7 RdKafka::KafkaConsumer&#xff08;核心&#xff09; 3 Kafka 消费者客户端开发3.1 必要…

springboot监听器模式源码精讲

1.前言 很多时候我们看源码的时候看不下去&#xff0c;其中一个原因是系统往往使用了许多设计模式&#xff0c;如果你不清楚这些设计模式&#xff0c;这无疑增加了你阅读源码的难度。 springboot中就大量使用了设计模式&#xff0c;本文主要介绍其中的一种监听器模式&#xf…

谈谈 .NET8 平台中对 LiteDB 的 CRUD 操作

哪个啥&#xff01;纯 C# 编写的 LiteDB 你还不会操作&#xff1f; LiteDB 简介LiteDB 安装1、同步版 LiteDB2、异步版 LiteDB.Async LiteDB StudioLiteDB CRUD 操作举例1、.net cli 命令创建项目2、项目添加相关 nuget 包3、改造项目结构4、改造项目代码 LiteDB vs SQLite 对比…

泳道图绘制全攻略,一图胜千言,快速上手

泳道图是一种流程图的形式&#xff0c;通过在不同的泳道中展示不同的参与者&#xff0c;帮助我们更好地理解和分析流程。它是一种非常有用的工具&#xff0c;可以帮助我们在团队协作、流程管理和问题解决等方面取得更好的效果。 1. 泳道图的定义 泳道图是一种以泳道为基础的流程…

postgresql从入门到精通 - 第37讲:postgres物理备份和恢复概述

PostgreSQL从小白到专家&#xff0c;是从入门逐渐能力提升的一个系列教程&#xff0c;内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容&#xff0c;希望对热爱PG、学习PG的同学们有帮助&#xff0c;欢迎持续关注CUUG PG技术大讲堂。 第37讲&#…

提高工厂能源效率的关键:工厂能耗监测平台

工业做为能源消耗的重要场所&#xff0c;所以节能减排对工业来讲是一个亟需解决的问题。除了对设备进行更新换代外&#xff0c;还需要能源管理消耗监测平台&#xff0c;帮助企业实现节能减排的目标。 工厂能源消费量非常庞大&#xff0c;能源比较难以监测与控制。传统能源的管…

路径规划之RRT算法

系列文章目录 路径规划之Dijkstra算法 路径规划之Best-First Search算法 路径规划之A *算法 路径规划之D *算法 路径规划之PRM算法 路径规划之RRT算法 路径规划之RRT算法 系列文章目录前言一、RRT算法1.起源2.流程3. 优缺点3.1 优点3.2 缺点 4. 实际效果 前言 PRM方法相比于传…

正则表达式(3):入门

正则表达式&#xff08;3&#xff09;&#xff1a;入门 小结 本博文转载自 从这篇文章开始&#xff0c;我们将介绍怎样在Linux中使用”正则表达式”&#xff0c;如果你想要学习怎样在Linux中使用正则表达式&#xff0c;这些文章就是你所需要的。 在认识”正则表达式”之前&am…

图像处理之把模糊的图片变清晰

1.图片如果是有雾化效果的对图像产生影响的,要先进行图形增强,Retinex是基于深度神经网络了,我在之前图形处理的文章一路从神经网络(概率统计)—>积卷神经网络(对区域进行概率统计,对图片进行切割多个识别对象)–>深度积卷神经网络(RetinexNet也是模拟人脑的处理过程,增加…

挑选分支中某一个提交进行合并

复制提交的哈希(sha-1)值 挑选提交 git cherry-pick 复制过来的哈希值 若有冲突&#xff0c;解决冲突&#xff0c;没有冲突&#xff0c;即合并完成

C语言普里姆(Prim)算法实现计算国家建设高铁运输网最低造价的建设方案

背景&#xff1a; 描述&#xff1a;为促进全球更好互联互通&#xff0c;亚投行拟在一带一路沿线国家建设高铁运输网&#xff0c;请查阅相关资料 画出沿线国家首都或某些代表性城市的连通图&#xff0c;为其设计长度最短或造价最低的高铁建设方案。 要求&#xff1a;抽象出的图…

Linux-进程之间的通信

目录 ​编辑 一.什么是进程之间的通信 二.进程之间的通信所访问的数据 三.进程之间的通信是如何做到的 四.基于内存文件级别的通信方式——管道 1.什么是管道 2.管道的建立过程——匿名管道 a.什么是匿名管道 b.匿名管道特点&#xff1a; c.使用匿名管道的…

Peter算法小课堂—贪心算法

课前思考&#xff1a;贪心是什么&#xff1f;贪心如何“贪”&#xff1f; 课前小视频&#xff1a;什么是贪心算法 - 知乎 (zhihu.com) 贪心 贪心是一种寻找最优解问题的常用方法。 贪心一般将求解过程分拆成若干个步骤&#xff0c;自顶向下&#xff0c;解决问题 太戈编程第…

邮政单号查询,邮政快递物流查询,并进行提前签收分析

批量查询邮政快递单号的物流信息&#xff0c;并将提前签收件分析筛选出来。 所需工具&#xff1a; 一个【快递批量查询高手】软件 邮政快递单号若干 操作步骤&#xff1a; 步骤1&#xff1a;运行【快递批量查询高手】软件&#xff0c;第一次使用的朋友记得先注册&#xff0c…

关于svn如何上传一个完整的项目

注意&#xff1a;请一定要按照该步骤进行操作&#xff0c;请上传新项目时将项目名称进行规范命名 例如原始文件是arrange_v2 将此项目需要注入新的医院 则命名为 arrange_某医院名称_门诊或者医技或者药房_v2 重新命名文件夹名称快捷键 &#xff08;F12&#xff09; 一 &…

【Linux】公网远程访问AMH服务器管理面板

目录 1. Linux 安装AMH 面板2. 本地访问AMH 面板3. Linux安装Cpolar4. 配置AMH面板公网地址5. 远程访问AMH面板6. 固定AMH面板公网地址 AMH 是一款基于 Linux 系统的服务器管理面板&#xff0c;它提供了一系列的功能&#xff0c;包括网站管理、FTP 管理、数据库管理、DNS 管理、…

UI自动化测试工具的定义及重要性

UI自动化测试工具在现代软件开发中起着不可或缺的作用。它们能够提高测试效率、减少人为错误、提供全面的测试覆盖&#xff0c;并支持持续集成。通过有效使用UI自动化测试工具&#xff0c;开发团队可以提高软件质量&#xff0c;提供更可靠的应用程序&#xff0c;满足用户的需求…

Jsoup爬取HTTPS页面数据资源,并导入数据库(Java)

一、实现思路 示例页面&#xff1a; 2020年12月中华人民共和国县以上行政区划代码 忽略https请求的SSL证书通过Jsoup获取页面标签遍历行标签&#xff0c;分别获取每个行标签的第二个和第三个列标签将获取到的行政代码和单位名称分别插入sql语句占位符执行sql语句&#xff0c…

掌汇云 | 全场景数据追踪,多维了解用户偏好,提高运营效率

掌汇云拥有黄金“三件套”&#xff1a;掌头条、汇互动、云品牌。群硕借助这些功能套件&#xff0c;面向细分领域如&#xff1a;会展&#xff0c;食品饮料、医药以及工业等&#xff0c;定制综合性信息服务平台&#xff0c;提供资讯、商机、企业人脉、上下游资源、活动等高质量服…