当前位置: 首页 > news >正文

python + mongodb使用入门

最近用了下mongodb ,简单做个记录:

1.启动系统mongo服务
mongod -f mongod.conf

其中 mongod.conf 是配置文件,示例如下:

dbpath=/youpath/data/db   #数据库保存位置
logpath=/youpath/data/mongod.log #日志
logappend=true  
fork=true  #后台
2. 如何使用 python 创建一个名为 ‘mydatabase‘ 的数据库,并在该数据库里面建一个子库 “mycollection”:

实际上用mongo命令创建数据库和子库也比较简单:

use mydatabase
db.createCollection("mycollection")  
show dbs

使用Python创建如下, 示例 python test.py

from pymongo import MongoClient  # 连接到MongoDB数据库  
client = MongoClient('mongodb://localhost:27017/')  # 创建一个新的数据库  
db = client['mydatabase']  # 创建一个新的集合  
collection = db['mycollection']  # 插入数据  
data = {  'name': 'John',  'age': 30,  'city': 'New York'  
}  
result = collection.insert_one(data)  # 打印插入的数据的ID  
print('Inserted data ID:', result.inserted_id)  

运行完上述可以看到数据库已经存在了,使用 db.mycollection.find() 也可以查看到我们插入的内容。
在这里插入图片描述

3. 如何使用Python插入数据到上面创建好的数据库中

示例: python insert.py

from pymongo import MongoClient  
# 要保存的数据  
data = [  {  'name': 'John',  'age': 30,  'city': 'New York'  },  {  'name': 'Jane',  'age': 25,  'city': 'Los Angeles'  }  
]  # 连接到MongoDB数据库  
client = MongoClient('mongodb://localhost:27017/')  # 选择数据库  
db = client['mydatabase']  # 选择集合  
collection = db['mycollection']  # 插入数据  
result = collection.insert_many(data)   #插入多条使用insert_many , 如果只有一条使用insert_one# 打印插入的数据的ID列表  
print('Inserted data IDs:', result.inserted_ids)  

可以运行Python代码可以看到结果已经插入到数据库中了
在这里插入图片描述

4.删除创建的mongo数据库

连接到MongoDB实例。在命令行中使用mongo命令连接到MongoDB实例。
选择要删除的数据库。使用以下命令选择要删除的数据库:

use mydatabase

请将"mydatabase"替换为实际的数据库名称。
删除数据库。使用以下命令删除数据库:

db.dropDatabase()  

运行此命令后,MongoDB将删除指定的数据库及其所有集合和数据。请注意,此操作是不可逆的,删除的数据无法恢复,所以请在执行此操作之前务必备份重要的数据。
确认数据库已成功删除。您可以使用以下命令列出所有的数据库,确认目标数据库已被删除:

show dbs  

如果目标数据库不再显示在列表中,表示数据库已成功删除。
在这里插入图片描述

5.创建管理员账号并设置用户密码

要给MongoDB数据库设置账号密码,您可以按照以下步骤进行操作:
启动MongoDB实例时,使用–auth选项启用身份验证。例如,使用以下命令启动MongoDB实例:

mongod --auth  
  1. 连接到MongoDB实例。在命令行中使用mongo命令连接到MongoDB实例:
mongo  
  1. 进入管理员数据库(admin)。使用以下命令切换到管理员数据库:
use admin  
  1. 创建一个管理员账号。使用以下命令创建一个管理员账号:
db.createUser(  {  user: "admin",  pwd: "admin_password",  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]  }  
)  

你也将"admin"替换为您想要设置的管理员账号名称,"admin_password"替换为您想要设置的管理员密码。
在这里插入图片描述

先记录到这吧,,

相关文章:

python + mongodb使用入门

最近用了下mongodb ,简单做个记录: 1.启动系统mongo服务 mongod -f mongod.conf其中 mongod.conf 是配置文件,示例如下: dbpath/youpath/data/db #数据库保存位置 logpath/youpath/data/mongod.log #日志 logappendtrue fo…...

焊接专业个人简历(通用25篇)

如果大家想在焊接行业的求职中脱颖而出,轻松斩获心仪职位,参考这25篇通用的焊接专业个人简历案例,无论您是初学者还是资深焊工,都能从中找到适合自己的简历内容。参考这些简历,让您的求职之路更加顺畅。 焊接专业个人…...

c++学习第四讲---函数提高

1.函数默认参数&#xff1a; 在&#xff08; &#xff09;中将参数赋值&#xff0c;如果传值了&#xff0c;则用传入值&#xff0c;否则才用函数中默认参数。 例&#xff1a; int func(int a, int b 3, int c 3) {return a b c; } int main() {cout << func(1, 2)…...

如何使用cpolar+Plex在Windows系统上搭建私人媒体影音站点公网可访问

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频&#xff0c;已经算是生活中稀松平常的场景了&#xff0c;特别是各…...

FreeRTOS-软件定时器

软件定时器 在FreeRTOS中可以设置无数个软件定时器&#xff0c;都是基于系统滴答中断。 使用软件定时器需要指定时间&#xff1a;启动定时器和运行回调函数。启动定时器和运行回调函数的间隔为定时器的周期。 使用软件定时器需要指定类型&#xff1a;一次性&#xff08;回调函数…...

Lab 3: Recursion, Tree Recursion(CS61A 2020)

在网上没有lab3相应的答案&#xff0c;作者也卡蛮久 &#xff08;就此补充一下答案&#xff09; Q2: WWPD: Journey to the Center of the Earth Use Ok to test your knowledge with the following "What Would Python Display?" questions: python3 ok -q sr-ww…...

GVIM 配置 for begin/end class/endclass 等配对

有时候我们的代码很长&#xff0c;或者结构比较复杂&#xff0c;多个if/else 或者begin/end 快嵌套&#xff0c;为了阅读方便&#xff0c;利用gvim插件实现块跳转还是很有实用性的&#xff0c;下面的.vimrc的配置&#xff0c;简单方便。 使用方式&#xff1a; 将光标定位到块头…...

2024不收费的数据恢复软件EasyRecovery16

EasyRecovery2024是一款操作安全、用户可自主操作的数据恢复方案&#xff0c;它支持从各种各样的存储介质恢复删除或者丢失的文件&#xff0c;其支持的媒体介质包括&#xff1a;硬盘驱动器、光驱、闪存、硬盘、光盘、U盘/移动硬盘、数码相机、手机以及其它多媒体移动设备。能恢…...

【每日一题】找出叠涂元素

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;哈希表 写在最后 Tag 【哈希表】【数组】【2023-12-01】 题目来源 2661. 找出叠涂元素 题目解读 从左往右遍历 arr 给矩阵 mat 上色&#xff0c;在上色的过程中矩阵的某一行或者某一列的全部被上色了&#xff0c;返回…...

Qt面试题

1.QT信号槽机制的优缺点 优点&#xff1a; 1.类型安全&#xff1a;需要关联的信号槽的签名必须是等同的&#xff0c;即信号的参数类型和参数个数和接受该信号的槽的参数类型和参数个数相同。&#xff08;PS:信号函数的参数个数必须大于等于槽函数的参数个数&#xff09; 2.松…...

LeetCode:1038. 从二叉搜索树到更大和树(反向中序遍历 C++、Java)

目录 1038. 从二叉搜索树到更大和树 题目描述&#xff1a; 实现代码与解析&#xff1a; dfs 原理思路&#xff1a; 1038. 从二叉搜索树到更大和树 题目描述&#xff1a; 给定一个二叉搜索树 root (BST)&#xff0c;请将它的每个节点的值替换成树中大于或者等于该节点值的所…...

【文末送书】Python OpenCV从入门到精通

文章目录 &#x1f354;简介opencv&#x1f339;内容简介&#x1f6f8;编辑推荐&#x1f384;导读&#x1f33a;彩蛋 &#x1f354;简介opencv OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉库&#xff0c;提供了丰富的图像处理和…...

RabbitMQ 的七种消息传递形式

文章目录 一、RabbitMQ 架构简介二、准备工作 三、消息收发1. Hello World2. Work queues3. Publish/Subscrite3.1. Direct3.2. Fanout3.3. Topic3.4. Header 4. Routing5. Topics 大部分情况下&#xff0c;我们可能都是在 Spring Boot 或者 Spring Cloud 环境下使用 RabbitMQ&…...

开源免费跨平台数据同步工具-Syncthing

Syncthing是一款开源免费跨平台的文件同步工具&#xff0c;是基于P2P技术实现设备间的文件同步&#xff0c;所以它的同步是去中心化的&#xff0c;即你并不需要一个服务器&#xff0c;故不需要担心这个中心的服务器给你带来的种种限制&#xff0c;而且类似于torrent协议&#x…...

java语言中受检异常和非受检异常的区别是什么?

在Java语言中&#xff0c;异常可以分为两种类型&#xff1a;受检异常&#xff08;Checked Exception&#xff09;和非受检异常&#xff08;Unchecked Exception&#xff09;。 受检异常&#xff08;Checked Exception&#xff09;&#xff1a;这是编译器要求必须进行处理的异常…...

vue3 element-plus el-table表头冻结,表头吸顶

一.使用方式 在main.ts页面创建 vue指令 import { createSticky } from /utils/stickyconst app createApp(App)createSticky(app)...app.mount(#app);在el-table标签上使用 v-sticky <div class"table-box"><!--此处的 .table-box 是会出现滚动条的DOM元…...

mysql中删除数据后,新增数据时id会跳跃,主键自增id不连续

引言&#xff1a; 在使用MySQL数据库时&#xff0c;有时候我们需要删除某些记录&#xff0c;但是删除记录后可能会导致表中的id不再连续排序。 如何实现删除记录后让id重新排序的功能。 如图&#xff1a; 删除数据后&#xff0c;中间的id不会自动连续。 下面有两种方法进行重…...

todesk连接ubuntu显示当前系统并无桌面环境,或无显示器,无法显示远程桌面,您需要自行安装X11桌面环境,或者使用终端文件功能

ToDesk远程遇到的问题如上图&#xff0c;换向日葵直接黑屏&#xff1b; 问题原因 截止发文时间&#xff0c;Todesk只支持X11协议&#xff0c;没有适配最新的Wayland协议&#xff0c;所以我们需要把窗口系统调整为X11才可以。 解决方法 修改配置文件&#xff0c;关闭wayland su…...

webpack学习-1.起步

webpack学习-1.起步 1.基础设置2.配置文件的引入3.总结 1.基础设置 首先 webpack是干嘛的呢&#xff0c;用官网的一张图 Webpack 是一个现代的静态模块打包工具。它主要用于将前端应用程序中的各种资源&#xff08;例如 JavaScript、CSS、图片等&#xff09;打包成一个或多个…...

GNU Radio 教程

初学者教程 GNU 无线电简介 什么是 GNU 无线电&#xff1f;安装 GNU 无线电你的第一个流程图 流程图基础知识 GRC 中的 Python 变量流程图中的变量运行时更新变量信号数据类型转换数据类型包装位流和向量层次块和参数 创建和修改 Python 块 创建你的第一个块带向量的 Pyt…...

边缘计算那些事儿——从协同视角看卸载策略

1. 边缘计算卸载技术入门指南 第一次听说"边缘计算卸载"这个概念时&#xff0c;我正被一个智能家居项目搞得焦头烂额。当时需要在摄像头端做人脸识别&#xff0c;但嵌入式设备的算力根本跑不动深度学习模型。直到同事提醒&#xff1a;"为什么不试试把计算任务卸…...

CogVideoX-2b效果实测:中文vs英文提示词生成质量差异分析

CogVideoX-2b效果实测&#xff1a;中文vs英文提示词生成质量差异分析 1. 引言&#xff1a;当AI导演遇到不同语言 想象一下&#xff0c;你有一个能听懂你说话、并把你描述的场景变成视频的AI导演。你告诉它&#xff1a;“一个宇航员在月球上漫步&#xff0c;远处是蓝色的地球。…...

PyFluent:3大核心场景实现CFD仿真全流程自动化

PyFluent&#xff1a;3大核心场景实现CFD仿真全流程自动化 【免费下载链接】pyfluent 项目地址: https://gitcode.com/gh_mirrors/pyf/pyfluent 计算流体动力学&#xff08;CFD&#xff09;仿真作为工程设计的关键环节&#xff0c;长期面临流程繁琐、迭代低效、跨学科协…...

Web开发环境快速搭建:Miniconda-Python3.11镜像实战应用

Web开发环境快速搭建&#xff1a;Miniconda-Python3.11镜像实战应用 1. 为什么选择Miniconda-Python3.11 Python作为Web开发的主流语言之一&#xff0c;环境配置一直是新手面临的第一个挑战。Miniconda-Python3.11镜像提供了一种开箱即用的解决方案&#xff0c;相比传统安装方…...

[技术突破]obs-multi-rtmp:解决多平台直播资源浪费问题的高效分发方案

[技术突破]obs-multi-rtmp&#xff1a;解决多平台直播资源浪费问题的高效分发方案 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 行业痛点诊断 直播行业正面临多平台分发的严峻挑战&a…...

GTSAM编译避坑:为什么你的Eigen版本总是不匹配?详细排查与修复教程

GTSAM编译中的Eigen版本冲突&#xff1a;从根源到解决方案的深度指南 引言 在机器人学和计算机视觉领域&#xff0c;GTSAM&#xff08;Georgia Tech Smoothing and Mapping Library&#xff09;作为因子图优化的标杆工具&#xff0c;其重要性不言而喻。然而&#xff0c;许多开发…...

家庭实验室:树莓派控制OpenClaw调用远程Qwen3-32B

家庭实验室&#xff1a;树莓派控制OpenClaw调用远程Qwen3-32B 1. 为什么选择树莓派OpenClaw组合 去年冬天&#xff0c;我在整理家庭实验室设备时发现一个闲置的树莓派4B。这台信用卡大小的电脑曾经用来跑Home Assistant控制智能家居&#xff0c;但后来换了NUC主机就被束之高阁…...

手把手教你用LVGL特殊符号打造炫酷UI界面

手把手教你用LVGL特殊符号打造炫酷UI界面 在嵌入式设备开发中&#xff0c;UI设计往往面临资源受限的挑战。LVGL&#xff08;Light and Versatile Graphics Library&#xff09;作为一款轻量级开源图形库&#xff0c;通过其丰富的特殊符号系统&#xff0c;让开发者能够在有限资…...

XML Notepad:免费高效的XML编辑器终极指南

XML Notepad&#xff1a;免费高效的XML编辑器终极指南 【免费下载链接】XmlNotepad XML Notepad provides a simple intuitive User Interface for browsing and editing XML documents. 项目地址: https://gitcode.com/gh_mirrors/xm/XmlNotepad XML Notepad是一款由微…...

从ADC的‘胃口’说起:深入浅出解析电平移位电路中基准源VREF与滤波电容的选型玄学

从ADC的"胃口"说起&#xff1a;深入浅出解析电平移位电路中基准源VREF与滤波电容的选型玄学 在模拟电路设计中&#xff0c;ADC&#xff08;模数转换器&#xff09;就像一位挑剔的美食家&#xff0c;对输入信号的"口味"有着严苛的要求。而电平移位电路则如同…...