当前位置:首页 > 云服务器

python如何连接mongodb

游戏科技网2026年09月14日 23:46云服务器20
描述:Python连接MongoDB主要用pymongo库,步骤为安装→创建客户端→连接数据库→操作集合;支持本地默认连接、带认证的远程URI及TLS加密,需注意authSource、tls和超时参数配置。Python 连接 MongoDB 主要用 pymongo 库,这是官方推荐的驱动,支持同步操作(也…
Python连接MongoDB主要用pymongo库,步骤为安装→创建客户端→连接数据库→操作集合;支持本地默认连接、带认证的远程URI及TLS加密,需注意authSource、tls和超时参数配置。

python如何连接mongodb

Python 连接 MongoDB 主要用 pymongo 库,这是官方推荐的驱动,支持同步操作(也兼容异步 via motor)。核心步骤是:安装库 → 创建客户端 → 连接数据库 → 操作集合。

安装 pymongo

在终端或命令行中运行:

  • pip install pymongo

如需连接带身份验证或 TLS 的集群(比如 MongoDB Atlas),还需确保系统已安装 OpenSSL,并可能需要额外依赖(如 certifi)。

基础连接方式(本地默认端口)

最简连接示例:

立即学习Python免费学习笔记(深入)”;

1

2

3

4

5

6

7

8

9

10

11

12

13

from pymongo import MongoClient

<h1>连接本地 MongoDB(默认 host=localhost, port=27017)</h1><p>client = MongoClient()</p><div class="aritcle_card flexRow">

                                                        <div class="artcardd flexRow">

                                                                <a class="aritcle_card_img" href="/xiazai/skill2529" title="Python Sdk"><img

                                                                                src="https://img.php.cn/upload/skill/000/000/081/178917495943297.jpg" alt="Python Sdk"  onerror="this.onerror=;this.src=/static/lhimages/moren/morentu.png" ></a>

                                                                <div class="aritcle_card_info flexColumn">

                                                                        <a href="/xiazai/skill2529" title="Python Sdk">Python Sdk</a>

                                                                        <p>inference.sh 的 Python SDK:运行 AI 应用、构建智能体,并集成 150 多个模型。包名:inferencesh (pip install inferencesh)。支持同步/异步……</p>

                                                                </div>

                                                                <a href="/xiazai/skill2529" title="Python Sdk" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>

                                                        </div>

                                                </div><h1>或显式指定</h1><h1>client = MongoClient(mongodb://localhost:27017/)</h1><p>db = client[mydatabase]     # 选择数据库(不存在会自动创建)

collection = db[users]      # 选择集合(类似表)

注意:MongoDB 不会在连接时校验数据库是否存在,只有执行写入或查询时才真正触发。

带认证和远程地址的连接

连接云服务(如 Atlas)或启用了用户名密码的本地实例:

1

2

3

4

# 格式:mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]

uri = "mongodb+srv://user:pass@cluster.mongodb.net/?retryWrites=true&w=majority"

client = MongoClient(uri)

<h1>或普通 URI(非 srv)</h1><h1>uri = "mongodb://admin:123456@192.168.1.100:27017/admin?authSource=admin"</h1><p>

关键参数说明:

  • authSource:指定存储用户凭证的数据库(通常是 admin
  • tls=True?tls=true:启用 SSL/TLS(Atlas 必须)
  • serverSelectionTimeoutMS=5000:设置连接超时(毫秒),避免卡死

简单读写测试

连上后可以快速验证是否正常:

1

2

3

4

# 插入一条

collection.insert_one({"name": "Alice", "age": 30})

<h1>查询一条</h1><p>doc = collection.find_one({"name": "Alice"})

print(doc)  # {_id: ObjectId(...), name: Alice, age: 30}</p><h1>关闭连接(脚本结束前建议调用)</h1><p>client.close()

注意:_id 字段会由 MongoDB 自动添加,类型是 ObjectId;如需自定义主键,插入时可显式指定字符串或整数。

基本上就这些。不复杂但容易忽略认证参数和超时设置,尤其上线时务必加上 serverSelectionTimeoutMStls 配置。

“python如何连接mongodb” 的相关文章

5元云服务器:入门级新手首选

5元云服务器:入门级新手首选 我是一名刚毕业的大学生,对编程充满了热情,但现实总是骨感一些。刚踏入职场,我梦想着能独立开发一个网站或应用,却苦于没有足够的资源。买一台实体服务器太贵,租个虚拟空间又觉得…

6元服务器租用,高性价比VPS主机推荐

6元服务器租用,高性价比VPS主机推荐 记得去年我刚开始创业,做了一个小型网站来展示我的产品。那时,我手头紧,预算有限,却急着需要一个可靠的服务器来托管网站。作为一个普通上班族,我对技术懂得不多,但我…

2021年云服务器优惠套餐推荐

2021年云服务器优惠套餐推荐 嗨,朋友们!你是否曾经在深夜里,面对一堆代码和服务器错误,感叹说:“为什么我的项目老是卡顿?”如果是这样的话,那你可能正在寻找2021年云服务器优惠套餐的解决方案。作为…

云服务器市场增长

云服务器市场增长 大家好,作为一个每天依赖云服务器的开发者,我亲身感受到市场的飞速膨胀。想象一下,几年前我还得在办公室的老旧电脑前苦苦挣扎,处理数据时总是卡顿不堪,但现在,只需轻轻一点,就能在云端获得…

1元买走一台云服务器,这种天上掉馅饼的事存在吗?

1元买走一台云服务器,这种天上掉馅饼的事存在吗? 那天,我在咖啡馆里刷手机,偶然看到一个广告:“只需1元,就能买走一台高性能云服务器!容量无限,稳定快速,适合创业和学习。”我的心跳突然加速了。作为一个…

实惠低价云服务器f2g评测

实惠低价云服务器f2g评测 实惠低价云服务器F2G评测 随着云计算技术的快速发展,云服务器已经成为企业和个人开发者的重要选择。相比传统的物理服务器,云服务器在灵活性、可扩展性和成本上具有显著优势。然而…