MongoDB(14)如何修改MongoDB的默认端口?

修改MongoDB的默认端口(27017)可以通过编辑配置文件或在启动命令中指定自定义端口号。以下是详细的步骤,分别针对Ubuntu(及其他基于systemd的Linux系统)、Windows和macOS三种操作系统。

在Ubuntu(及其他基于systemd的Linux系统)上

修改配置文件

MongoDB的默认配置文件通常位于 /etc/mongod.conf。可以通过编辑该文件来修改默认端口。

  1. 打开配置文件

    使用文本编辑器(如nanovim)打开配置文件:

    bash 复制代码
    sudo nano /etc/mongod.conf
  2. 修改端口

    找到net部分,修改port为你想要的端口号,例如:

    yaml 复制代码
    net:
      port: 28017
  3. 保存并退出

    保存文件并退出编辑器。

  4. 重启MongoDB服务

    使更改生效,重启MongoDB服务:

    bash 复制代码
    sudo systemctl restart mongod

验证

使用netstatss命令确认MongoDB是否监听新的端口:

bash 复制代码
sudo netstat -plnt | grep 28017

bash 复制代码
sudo ss -plnt | grep 28017

在Windows上

修改配置文件

MongoDB的默认配置文件通常位于 C:\Program Files\MongoDB\Server\<version>\bin\mongod.cfg。可以通过编辑该文件来修改默认端口。

  1. 打开配置文件

    使用文本编辑器(如Notepad或Notepad++)打开配置文件:

    cmd 复制代码
    notepad "C:\Program Files\MongoDB\Server\<version>\bin\mongod.cfg"
  2. 修改端口

    找到net部分,修改port为你想要的端口号,例如:

    yaml 复制代码
    net:
      port: 28017
  3. 保存并退出

    保存文件并退出编辑器。

  4. 重启MongoDB服务

    使更改生效,重启MongoDB服务:

    cmd 复制代码
    net stop MongoDB
    net start MongoDB

验证

使用netstat命令确认MongoDB是否监听新的端口:

cmd 复制代码
netstat -ano | findstr :28017

在macOS上

修改配置文件

MongoDB的默认配置文件通常位于 /usr/local/etc/mongod.conf。可以通过编辑该文件来修改默认端口。

  1. 打开配置文件

    使用文本编辑器(如nanovim)打开配置文件:

    bash 复制代码
    sudo nano /usr/local/etc/mongod.conf
  2. 修改端口

    找到net部分,修改port为你想要的端口号,例如:

    yaml 复制代码
    net:
      port: 28017
  3. 保存并退出

    保存文件并退出编辑器。

  4. 重启MongoDB服务

    使更改生效,重启MongoDB服务:

    bash 复制代码
    brew services restart mongodb/brew/mongodb-community

验证

使用netstatlsof命令确认MongoDB是否监听新的端口:

bash 复制代码
netstat -an | grep 28017

bash 复制代码
sudo lsof -i :28017

使用命令行参数修改端口

除了通过配置文件修改端口,还可以直接通过命令行参数指定服务端口启动MongoDB实例。

启动MongoDB实例

使用自定义端口启动MongoDB实例:

bash 复制代码
mongod --port 28017 --dbpath /path/to/your/db --logpath /path/to/your/log --fork

示例

创建一个新的存储路径 /custom/data/mongodb 并使用新的端口 28017 启动MongoDB实例:

bash 复制代码
sudo mkdir -p /custom/data/mongodb
sudo chown -R mongodb:mongodb /custom/data/mongodb

mongod --port 28017 --dbpath /custom/data/mongodb --logpath /custom/data/mongodb/mongod.log --fork

使用Node.js连接到修改后的端口

以下是使用Node.js和MongoDB驱动程序连接到修改后的端口 28017 的示例代码:

  1. 安装MongoDB Node.js驱动

    bash 复制代码
    npm install mongodb
  2. 连接到MongoDB并执行操作

    javascript 复制代码
    const { MongoClient } = require('mongodb');
    
    async function main() {
        const uri = "mongodb://localhost:28017";
        const client = new MongoClient(uri, { useUnifiedTopology: true });
    
        try {
            await client.connect();
            console.log("Connected to MongoDB on custom port 28017");
    
            const db = client.db('exampledb');
            const collection = db.collection('examplecoll');
    
            // 插入数据
            const insertResult = await collection.insertOne({ name: "Alice", age: 30 });
            console.log('Insert Result:', insertResult);
    
            // 查询数据
            const findResult = await collection.findOne({ name: "Alice" });
            console.log('Find Result:', findResult);
    
        } finally {
            await client.close();
        }
    }
    
    main().catch(console.error);

总结

修改MongoDB的默认端口可以通过以下步骤:

  1. 修改配置文件 :找到net部分,修改port为你想要的端口号。
  2. 重启MongoDB服务:使更改生效,重启MongoDB服务。
  3. 验证:使用系统命令确认MongoDB是否监听新的端口。

这些步骤和代码示例可以帮助你在不同操作系统上配置和验证MongoDB的端口设置,确保MongoDB实例正常运行在指定的端口上。

相关推荐
ltl1 天前
Transformer 整体架构:一张图看懂
后端
ltl1 天前
Decoder 详解:为什么它天生适合生成
后端
ltl1 天前
Encoder 详解:6 层堆叠到底在做什么
后端
程序员cxuan1 天前
微信读书官方发了 skills,把我给秀麻了。
人工智能·后端·程序员
未若君雅裁1 天前
Spring AOP、日志切面与声明式事务原理
java·后端·spring
zhangxingchao1 天前
AI应用开发六:企业知识库
前端·人工智能·后端
红尘散仙1 天前
一个 `#[uniffi::export]`,把 Rust 接进 React Native
前端·后端·rust
红尘散仙1 天前
一行 `#[specta::specta]`,让 Tauri IPC 有类型
前端·后端·rust
XinZong1 天前
OpenClaw 中最经典的 6 款skill,真正能进工作流的 skills
javascript·后端
zhangxingchao1 天前
AI Agent 基础问题系统整理:从 LangChain、LangGraph、MCP 到 Agent 架构、记忆、工具调用与评估体系
前端·人工智能·后端