• 精创网络
  • 精创网络
  • 首页
  • 产品优势
  • 产品价格
  • 产品功能
  • 关于我们
  • 在线客服
  • 登录
  • DDoS防御和CC防御
  • 精创网络云防护,专注于大流量DDoS防御和CC防御。可防止SQL注入,以及XSS等网站安全漏洞的利用。
  • 免费试用
  • 新闻中心
  • 关于我们
  • 资讯动态
  • 帮助文档
  • 白名单保护
  • 常见问题
  • 政策协议
  • 帮助文档
  • 在Ubuntu22中安装与配置MongoDB数据库
  • 来源:www.jcwlyf.com更新时间:2024-12-04
  • MongoDB是一种开源的、面向文档的NoSQL数据库,广泛应用于各种大数据、分布式存储场景。由于其高效的存储方式和灵活的查询能力,MongoDB已经成为开发者在构建高并发、高可用应用时的首选数据库之一。本文将详细介绍如何在Ubuntu 22.04操作系统中安装与配置MongoDB数据库,并提供一些优化配置的建议,帮助你更好地管理和使用MongoDB。

    一、安装MongoDB

    在Ubuntu 22中安装MongoDB相对简单,我们可以通过官方提供的MongoDB安装包来进行安装。下面我们将逐步介绍安装过程。

    1. 更新系统软件包列表

    首先,确保你的系统是最新的,运行以下命令更新系统软件包列表:

    sudo apt update

    2. 导入MongoDB公钥

    为了确保我们安装的软件包的安全性,需要从MongoDB官方网站导入公钥。执行以下命令来导入公钥:

    wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -

    3. 添加MongoDB源

    接下来,需要将MongoDB的官方源添加到Ubuntu的APT源列表中。运行以下命令:

    echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

    4. 更新APT包列表

    再次更新APT包列表,以确保新的MongoDB源被正确加载:

    sudo apt update

    5. 安装MongoDB

    现在可以安装MongoDB了。运行以下命令安装MongoDB的最新版本:

    sudo apt install -y mongodb-org

    上述命令会安装MongoDB的主要软件包,包括"mongod"守护进程、"mongo" shell以及相关的库文件。

    二、启动与验证MongoDB服务

    MongoDB安装完成后,我们需要启动MongoDB服务,并确保它在系统重启后自动启动。

    1. 启动MongoDB服务

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

    sudo systemctl start mongod

    2. 设置MongoDB开机自启

    如果希望MongoDB在系统启动时自动启动,可以使用以下命令启用MongoDB开机自启:

    sudo systemctl enable mongod

    3. 验证MongoDB是否启动成功

    验证MongoDB是否成功启动,可以使用以下命令检查MongoDB服务的状态:

    sudo systemctl status mongod

    如果MongoDB正在运行,你应该看到类似以下的输出:

    ● mongod.service - MongoDB Database Server
       Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
       Active: active (running) since Thu 2024-11-30 14:00:00 UTC; 1min 30s ago
       ...

    此外,你还可以通过连接MongoDB的shell来验证是否能够正常使用MongoDB:

    mongo

    如果成功进入MongoDB shell,你就可以开始执行MongoDB命令了。

    三、MongoDB常见配置

    MongoDB的默认配置适用于大多数情况下,但根据不同的使用场景,可能需要对MongoDB进行一些优化配置。

    1. 修改MongoDB配置文件

    MongoDB的默认配置文件位于"/etc/mongod.conf"。你可以编辑该文件来调整MongoDB的配置,例如更改绑定IP地址、调整内存缓存大小等。

    sudo nano /etc/mongod.conf

    例如,如果你希望MongoDB接受远程连接,可以在配置文件中修改"bindIp"字段。默认情况下,MongoDB只绑定到"127.0.0.1"(即仅允许本地连接),你可以将其修改为"0.0.0.0",以允许来自任何IP的连接:

    net:
      bindIp: 0.0.0.0
      port: 27017

    修改后,保存并退出文件,重启MongoDB服务使配置生效:

    sudo systemctl restart mongod

    2. 配置MongoDB认证

    在生产环境中,为了保证数据库的安全性,强烈建议启用MongoDB的认证机制。默认情况下,MongoDB并没有启用认证,任何人都可以连接到数据库并执行操作。

    启用认证后,你需要创建管理员账户来管理数据库。首先,修改MongoDB配置文件,启用认证:

    security:
      authorization: "enabled"

    保存并退出文件后,重启MongoDB服务:

    sudo systemctl restart mongod

    然后,连接到MongoDB并创建一个管理员用户:

    mongo
    use admin
    db.createUser({
      user: "admin",
      pwd: "password123", // 使用强密码
      roles: [{ role: "root", db: "admin" }]
    })

    创建管理员账户后,你就可以使用用户名和密码连接MongoDB了。例如:

    mongo -u admin -p password123 --authenticationDatabase admin

    3. 调整存储引擎配置

    MongoDB支持不同的存储引擎,如WiredTiger和MMAPv1。WiredTiger是MongoDB的默认存储引擎,但在某些场景下,可能需要调整或切换存储引擎。在"/etc/mongod.conf"文件中,你可以修改"storage"部分来配置存储引擎。

    storage:
      engine: wiredTiger

    如果需要切换到MMAPv1引擎,只需将"engine"字段更改为"mmapv1"即可。

    四、管理MongoDB服务

    MongoDB提供了一些常见的管理命令,可以帮助你更好地管理数据库。

    1. 停止MongoDB服务

    如果需要停止MongoDB服务,可以使用以下命令:

    sudo systemctl stop mongod

    2. 查看MongoDB日志

    MongoDB的日志文件位于"/var/log/mongodb/mongod.log"。你可以使用以下命令查看MongoDB的日志文件:

    sudo tail -f /var/log/mongodb/mongod.log

    3. 升级MongoDB

    为了确保MongoDB始终保持最新版本,可以定期检查并升级MongoDB。升级MongoDB的命令如下:

    sudo apt update
    sudo apt upgrade mongodb-org

    五、总结

    本文介绍了如何在Ubuntu 22中安装和配置MongoDB数据库,涉及安装步骤、启动与验证、常见配置调整及数据库管理命令等内容。通过本教程,你应该能够顺利地在Ubuntu系统上部署和管理MongoDB,并根据实际需求对其进行优化和配置。如果你希望在生产环境中使用MongoDB,记得启用认证、配置防火墙以及定期备份数据,确保数据库的安全性和可靠性。

  • 关于我们
  • 关于我们
  • 服务条款
  • 隐私政策
  • 新闻中心
  • 资讯动态
  • 帮助文档
  • 网站地图
  • 服务指南
  • 购买流程
  • 白名单保护
  • 联系我们
  • QQ咨询:189292897
  • 电话咨询:16725561188
  • 服务时间:7*24小时
  • 电子邮箱:admin@jcwlyf.com
  • 微信咨询
  • Copyright © 2025 All Rights Reserved
  • 精创网络版权所有
  • 皖ICP备2022000252号
  • 皖公网安备34072202000275号