MongoDB(12)如何启动和停止MongoDB服务?

启动和停止MongoDB服务的方式因操作系统的不同而有所不同。下面我们分别介绍在Ubuntu(及其他基于systemd的Linux系统)、Windows和macOS上的具体操作。

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

启动MongoDB服务

  1. 启动服务

    使用systemctl命令启动MongoDB服务:

    bash 复制代码
    sudo systemctl start mongod
  2. 验证服务是否启动

    使用以下命令检查MongoDB服务的状态:

    bash 复制代码
    sudo systemctl status mongod

    示例输出:

    bash 复制代码
    ● mongod.service - MongoDB Database Server
       Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
       Active: active (running) since Mon 2023-10-02 12:34:56 UTC; 10s ago
         Docs: https://docs.mongodb.org/manual

停止MongoDB服务

  1. 停止服务

    使用systemctl命令停止MongoDB服务:

    bash 复制代码
    sudo systemctl stop mongod
  2. 验证服务是否停止

    使用以下命令检查MongoDB服务的状态:

    bash 复制代码
    sudo systemctl status mongod

    示例输出:

    bash 复制代码
    ● mongod.service - MongoDB Database Server
       Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
       Active: inactive (dead) since Mon 2023-10-02 12:36:56 UTC; 10s ago
         Docs: https://docs.mongodb.org/manual

重新启动MongoDB服务

  1. 重新启动服务

    使用systemctl命令重新启动MongoDB服务:

    bash 复制代码
    sudo systemctl restart mongod

在Windows上

启动MongoDB服务

  1. 通过命令提示符启动服务

    打开命令提示符,以管理员身份运行以下命令启动MongoDB服务:

    cmd 复制代码
    net start MongoDB
  2. 验证服务是否启动

    使用以下命令检查MongoDB服务的状态:

    cmd 复制代码
    sc query MongoDB

    示例输出:

    cmd 复制代码
    SERVICE_NAME: MongoDB
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 4  RUNNING

停止MongoDB服务

  1. 通过命令提示符停止服务

    打开命令提示符,以管理员身份运行以下命令停止MongoDB服务:

    cmd 复制代码
    net stop MongoDB
  2. 验证服务是否停止

    使用以下命令检查MongoDB服务的状态:

    cmd 复制代码
    sc query MongoDB

    示例输出:

    cmd 复制代码
    SERVICE_NAME: MongoDB
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED

重新启动MongoDB服务

  1. 通过命令提示符重新启动服务

    打开命令提示符,以管理员身份运行以下命令重新启动MongoDB服务:

    cmd 复制代码
    net stop MongoDB
    net start MongoDB

在macOS上

启动MongoDB服务

  1. 使用Homebrew启动服务

    如果通过Homebrew安装的MongoDB,可以使用以下命令启动MongoDB服务:

    bash 复制代码
    brew services start mongodb/brew/mongodb-community
  2. 验证服务是否启动

    使用以下命令检查MongoDB服务的状态:

    bash 复制代码
    brew services list

    示例输出:

    bash 复制代码
    Name              Status  User  Plist
    mongodb-community started user  ~/Library/LaunchAgents/homebrew.mxcl.mongodb-community.plist

停止MongoDB服务

  1. 使用Homebrew停止服务

    使用以下命令停止MongoDB服务:

    bash 复制代码
    brew services stop mongodb/brew/mongodb-community
  2. 验证服务是否停止

    使用以下命令检查MongoDB服务的状态:

    bash 复制代码
    brew services list

    示例输出:

    bash 复制代码
    Name              Status  User  Plist
    mongodb-community stopped

重新启动MongoDB服务

  1. 使用Homebrew重新启动服务

    使用以下命令重新启动MongoDB服务:

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

使用命令行参数启动MongoDB实例

除了使用服务管理器(如systemd、Windows服务或Homebrew服务)管理MongoDB服务外,还可以直接使用mongod命令启动MongoDB实例。

启动MongoDB实例

使用默认设置启动MongoDB实例:

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

停止MongoDB实例

可以使用从db.shutdownServer()命令在MongoDB shell中停止实例:

bash 复制代码
mongo --eval "db.shutdownServer()"

总结

启动和停止MongoDB服务的步骤如下:

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

    • 启动:sudo systemctl start mongod
    • 停止:sudo systemctl stop mongod
    • 重新启动:sudo systemctl restart mongod
  • Windows

    • 启动:net start MongoDB
    • 停止:net stop MongoDB
    • 重新启动:net stop MongoDB && net start MongoDB
  • macOS

    • 启动:brew services start mongodb/brew/mongodb-community
    • 停止:brew services stop mongodb/brew/mongodb-community
    • 重新启动:brew services restart mongodb/brew/mongodb-community

这些命令和代码示例可以帮助你在不同操作系统上管理MongoDB服务的启动和停止,从而确保MongoDB服务的正常运行。

相关推荐
To_OC36 分钟前
手写 AI 编程 Agent 的命令执行工具:我被 child_process 坑出来的实战经验
后端·node.js·agent
逝水无殇3 小时前
C# 异常处理详解
开发语言·后端·c#
考虑考虑5 小时前
Sentinel安装
java·后端·微服务
IT_陈寒5 小时前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端
碎碎念_4925 小时前
SpringBoot + Vue 前后端分离从 0 到 1 完整环境配置流程
vue.js·spring boot·后端
逝水无殇6 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
YIAN6 小时前
从手写 Agent 工具到 MCP 协议:一文搞懂大模型跨进程跨语言工具调用
后端·agent·mcp
小兔崽子去哪了7 小时前
Docker 删除镜像后磁盘空间没有释放?
后端·docker·容器
高明珠7 小时前
麒麟 V10 SP1 排查实录:ttyS5 每 10 秒莫名收到一批报文,元凶是 eGTouchD
后端
卷无止境7 小时前
Python FFI 技术深度解析:ctypes、cffi 与 pybind11 的性能差异与实践挑战
后端·python