当前位置: 首页 > 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"替换为您想要设置的管理员密码。
在这里插入图片描述

先记录到这吧,,

http://www.lryc.cn/news/252242.html

相关文章:

  • 焊接专业个人简历(通用25篇)
  • c++学习第四讲---函数提高
  • 如何使用cpolar+Plex在Windows系统上搭建私人媒体影音站点公网可访问
  • FreeRTOS-软件定时器
  • Lab 3: Recursion, Tree Recursion(CS61A 2020)
  • GVIM 配置 for begin/end class/endclass 等配对
  • 2024不收费的数据恢复软件EasyRecovery16
  • 【每日一题】找出叠涂元素
  • Qt面试题
  • LeetCode:1038. 从二叉搜索树到更大和树(反向中序遍历 C++、Java)
  • 【文末送书】Python OpenCV从入门到精通
  • RabbitMQ 的七种消息传递形式
  • 开源免费跨平台数据同步工具-Syncthing
  • java语言中受检异常和非受检异常的区别是什么?
  • vue3 element-plus el-table表头冻结,表头吸顶
  • mysql中删除数据后,新增数据时id会跳跃,主键自增id不连续
  • todesk连接ubuntu显示当前系统并无桌面环境,或无显示器,无法显示远程桌面,您需要自行安装X11桌面环境,或者使用终端文件功能
  • webpack学习-1.起步
  • GNU Radio 教程
  • Linux 下命令行启动与关闭WebLogic的相关服务
  • 模型量化相关知识汇总
  • yum 操作,出现Cannot retrieve metalink for repository: epel/x86_64
  • MySQL 8.2 Command Line Client闪退
  • 【Geoserver】SLD点位样式(PointSymbolizer)设计全通
  • 大数据基础设施搭建 - 数据装载
  • 医药行业:轻松学会超低温冰箱技能
  • 信息化系列——企业信息化建设(2)
  • php爬虫去抓取京东优惠券代码,事半功倍
  • 电子书制作神器!错过等十年
  • 文献速递:机器学习在超声非破坏性评估中的合成和增强训练数据综述(第二部分)— 合成数据生成方法用于超声波测试