银河麒麟部署MongoDB有四种方法:一、官方压缩包手动安装,适用于离线及信创场景;二、APT/YUM源安装,适合联网快速部署;三、Docker容器化,用于隔离测试与多版本共存;四、统一配置与安全加固,确保生产环境稳定与最小攻击面。

如果您在银河麒麟操作系统上需要部署MongoDB数据库,则可能面临系统架构适配、依赖库版本不匹配或服务管理方式差异等问题。以下是针对银河麒麟系统安装MongoDB数据库的多种可行方法:
一、通过官方压缩包手动安装
该方法适用于离线环境、ARM/x86架构定制化部署,不依赖系统软件源,可控性强,适合信创场景下的严格版本管理与安全合规要求。
1、确认系统架构与版本:执行uname -a && cat /etc/os-release获取内核版本及麒麟具体发行版(如Kylin V10 SP3、openKylin 2.0等),并使用getconf LONG_BIT验证为64位系统。
2、下载匹配架构的MongoDB安装包:访问https://www.mongodb.com/try/download/community,选择对应麒麟系统的版本(例如mongodb-linux-x86_64-ubuntu2004-7.0.5.tgz用于x86_64平台,或mongodb-linux-aarch64-amazon2-v7.0-latest.tgz用于飞腾/鲲鹏ARM64平台)。
3、创建安装目录并解压:执行sudo mkdir -p /usr/local/mongodb,然后运行sudo tar -zxvf mongodb-linux-*.tgz -C /usr/local/mongodb/,解压后将子目录重命名为bin(如sudo mv /usr/local/mongodb/mongodb-linux-*/ /usr/local/mongodb/bin)。
4、配置环境变量:编辑~/.bashrc,追加export PATH=$PATH:/usr/local/mongodb/bin,保存后执行source ~/.bashrc使配置生效。
5、验证二进制可用性:运行mongod --version检查主服务程序;若提示command not found,需确认bin目录路径是否正确,或单独下载mongosh作为交互式Shell工具。
二、基于APT/YUM源的包管理安装
该方法适用于联网环境且麒麟系统已启用兼容Ubuntu或RHEL生态的软件源,可自动解决基础依赖,适合快速验证部署与标准化运维场景。
1、更新系统包索引:对基于Debian系的麒麟(如openKylin),执行sudo apt update;对基于RHEL系的(如Kylin V10 SPx),执行sudo yum makecache或sudo dnf makecache。
2、导入MongoDB公钥:Debian系执行wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -;RHEL系执行sudo rpm --import https://www.mongodb.org/static/pgp/server-7.0.asc。
3、添加官方软件源:Debian系执行echo "deb [arch=amd64,arm64] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list;RHEL系执行echo "[mongodb-org-7.0]\nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/7.0/x86_64/\ngpgcheck=1" | sudo tee /etc/yum.repos.d/mongodb-org-7.0.repo。
4、安装MongoDB套件:Debian系执行sudo apt install -y mongodb-org;RHEL系执行sudo yum install -y mongodb-org或sudo dnf install -y mongodb-org。
5、启动并启用服务:执行sudo systemctl start mongod与sudo systemctl enable mongod,随后用sudo systemctl status mongod确认状态为active (running)。
三、使用Docker容器化部署
该方法通过容器隔离运行时依赖,避免与宿主机系统库冲突,便于多版本共存、快速启停与环境一致性保障,尤其适用于测试、开发及微服务集成场景。
1、安装Docker引擎:执行sudo apt install -y docker.io(openKylin)或sudo yum install -y docker(Kylin V10),启动服务并加入开机自启:sudo systemctl start docker && sudo systemctl enable docker。
2、拉取官方MongoDB镜像:运行sudo docker pull mongo:7.0,确保镜像标签与目标版本一致。
3、创建持久化目录:执行sudo mkdir -p /opt/mongo/data /opt/mongo/conf,并创建配置文件/opt/mongo/conf/mongod.conf,内容包含storage.dbPath: /data/db与net.bindIp: 0.0.0.0等必要项。
4、运行容器实例:执行sudo docker run -d --name mongodb -p 27017:27017 -v /opt/mongo/data:/data/db -v /opt/mongo/conf:/etc/mongo -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password mongo:7.0 --config /etc/mongo/mongod.conf。
5、验证容器运行状态:运行sudo docker ps | grep mongodb,确认容器状态为Up;再使用mongo "mongodb://admin:password@localhost:27017/"连接测试。
四、配置基础数据库服务与安全加固
该步骤聚焦于生产就绪的关键配置,包括数据路径定制、日志管理、网络绑定控制与基础身份认证启用,确保服务稳定与最小攻击面。
1、创建专用数据与日志目录:执行sudo mkdir -p /var/lib/mongodb /var/log/mongodb,并赋予mongod用户所有权:sudo chown -R mongodb:mongodb /var/lib/mongodb /var/log/mongodb。
2、编辑主配置文件:修改/etc/mongod.conf,设置storage.dbPath: /var/lib/mongodb、systemLog.path: /var/log/mongodb/mongod.log、net.bindIp: 127.0.0.1(限制本地访问)。
3、启用访问控制:取消security.authorization行注释并设为enabled: true,保存后重启服务:sudo systemctl restart mongod。
4、初始化管理员账户:使用mongo连接本地实例,执行use admin后运行db.createUser({user:"admin",pwd:"StrongPass2026!",roles:["root"]})。
5、关闭非必要端口与防火墙策略:执行sudo ufw disable(openKylin)或sudo systemctl stop firewalld && sudo systemctl disable firewalld(Kylin V10),若需保留防火墙,则仅开放27017端口并限制源IP。


















