MongoDB(16)如何在MongoDB中创建数据库?

在MongoDB中,数据库的创建是隐式的。当你插入数据到指定的集合时,MongoDB会自动创建相应的数据库。如果你想手动创建数据库,可以选择插入一个文档来实现。以下是详细的步骤和代码示例,展示如何在不同操作系统上创建数据库。

创建数据库的步骤

  1. 启动MongoDB Shell
  2. 选择或创建数据库
  3. 插入数据
  4. 验证数据库创建

下面是详细的步骤和代码示例:

在Ubuntu(及其他基于systemd的Linux系统)、Windows和macOS上使用MongoDB Shell

1. 启动MongoDB Shell

根据你的操作系统,打开终端或命令提示符来启动MongoDB Shell:

bash 复制代码
mongo

2. 选择或创建数据库

MongoDB在你选择一个不存在的数据库时会自动创建一个新的数据库。

javascript 复制代码
use myNewDatabase

上面的命令会切换到myNewDatabase数据库。如果该数据库不存在,MongoDB会创建一个新的数据库,尽管此时它是空的。

3. 插入数据

要真正创建数据库并确保它被保存,你需要向该数据库的集合中插入至少一个文档。

javascript 复制代码
db.myNewCollection.insertOne({ name: "Alice", age: 30 })

上面的命令将在myNewDatabase数据库中创建一个名为myNewCollection的集合,并向其中插入一个文档。

4. 验证数据库创建

要确认数据库和集合是否创建成功,可以使用以下命令:

javascript 复制代码
show dbs

javascript 复制代码
show collections

show dbs命令会列出所有数据库,show collections命令会列出当前数据库中的所有集合。

使用Node.js连接并创建数据库

以下是使用Node.js和MongoDB驱动程序连接到MongoDB并创建数据库的示例代码。

1. 安装MongoDB Node.js驱动

bash 复制代码
npm install mongodb

2. 创建并运行Node.js脚本

创建一个新的Node.js脚本文件(如createDatabase.js)并添加以下代码:

javascript 复制代码
const { MongoClient } = require('mongodb');

async function main() {
    const uri = "mongodb://localhost:27017";
    const client = new MongoClient(uri, { useUnifiedTopology: true });

    try {
        // 连接到MongoDB服务器
        await client.connect();
        console.log("Connected to MongoDB");

        // 选择或创建数据库
        const db = client.db('myNewDatabase');

        // 插入数据
        const collection = db.collection('myNewCollection');
        const insertResult = await collection.insertOne({ name: "Alice", age: 30 });
        console.log('Insert Result:', insertResult);

        // 验证数据库和集合的创建
        const databasesList = await client.db().admin().listDatabases();
        console.log('Databases:');
        databasesList.databases.forEach(db => console.log(` - ${db.name}`));

    } finally {
        // 关闭连接
        await client.close();
    }
}

main().catch(console.error);

运行这个脚本:

bash 复制代码
node createDatabase.js

使用Python连接并创建数据库

以下是使用Python和PyMongo驱动程序连接到MongoDB并创建数据库的示例代码。

1. 安装PyMongo

bash 复制代码
pip install pymongo

2. 创建并运行Python脚本

创建一个新的Python脚本文件(如create_database.py)并添加以下代码:

python 复制代码
from pymongo import MongoClient

def main():
    client = MongoClient('mongodb://localhost:27017/')

    # 选择或创建数据库
    db = client['myNewDatabase']

    # 插入数据
    collection = db['myNewCollection']
    insert_result = collection.insert_one({ 'name': 'Alice', 'age': 30 })
    print('Insert Result:', insert_result.inserted_id)

    # 验证数据库和集合的创建
    databases = client.list_database_names()
    print('Databases:')
    for database in databases:
        print(f' - {database}')

    # 关闭连接
    client.close()

if __name__ == '__main__':
    main()

运行这个脚本:

bash 复制代码
python create_database.py

总结

在MongoDB中创建数据库的步骤如下:

  1. 启动MongoDB Shell :使用mongo命令启动MongoDB Shell。
  2. 选择或创建数据库 :使用use myNewDatabase命令选择或创建数据库。
  3. 插入数据 :使用db.myNewCollection.insertOne({ name: "Alice", age: 30 })命令插入数据。
  4. 验证数据库创建 :使用show dbsshow collections命令验证数据库和集合的创建。

此外,还可以使用Node.js或Python编写脚本来连接MongoDB并创建数据库。以上步骤和代码示例可以帮助你在不同操作系统上创建并验证MongoDB数据库。

相关推荐
维克兜率天8 小时前
【维克】ARMA模型:AR与MA的完美结合
后端·restful
是未才9 小时前
从输入 URL 到页面返回:DNS、路由、TLS 与 HTTP 完整链路
java·后端·计算机网络
上海安当技术9 小时前
半天接入:USBKey RESTful API + C 动态库,Web 和 C/S 两套集成路径实战
前端·后端·restful·集成·usbkey
DevUI团队10 小时前
从“即兴创作”到“规格先行”,华为云码道(CodeArts)代码智能体持续深耕企业级规范驱动开发能力
前端·人工智能·后端
weixin_4316004411 小时前
NestJS 入门(3):Guard 如何挡住未登录请求?
前端·后端·学习·nest.js
IT_陈寒12 小时前
JavaScript类型转换把我坑惨了,这破玩意真该早点搞明白
前端·人工智能·后端
用户9385156350712 小时前
手写一个 LLM Harness 框架:用工程化手段把大模型幻觉踩在脚下
javascript·人工智能·后端
wei_shuo13 小时前
KES 云原生部署与弹性扩展:容器化、Kubernetes编排与自动伸缩
后端
一木之林13 小时前
Python.五.(一)--1. 并发编程、异步IO与多进程
后端
feng尘13 小时前
# 彻底搞懂 ReentrantLock 与 tryLock:从秒杀实战到 AQS 独占模式源码剖析
后端