麒麟系统部署MongoDB有四种方法:一、官方压缩包手动安装,适用于离线及信创场景;二、系统源安装,适合联网快速部署;三、Docker容器化,用于隔离测试环境;四、统一配置与验证,确保权限、资源限制及安全认证到位。

如果您在麒麟操作系统上需要部署MongoDB数据库,则可能面临系统架构适配、依赖缺失或服务启动失败等问题。以下是多种可行的安装与配置方法:
一、官方压缩包手动安装(离线/信创场景)
该方法适用于离线环境、ARM/x86架构定制化部署,不依赖系统软件源,可控性强,适合信创场景下的严格版本管理。
1、确认系统架构与版本:执行uname -a && cat /etc/os-release获取内核版本及麒麟具体发行版(如V10 SP2、openKylin 2.0等)。
2、下载对应架构的MongoDB二进制包:根据uname -m输出结果选择x86_64或aarch64版本,从官网或可信镜像站获取MongoDB 7.0.x或4.4.x压缩包。
3、解压并重命名:将压缩包上传至/usr/local/,执行tar -zxvf mongodb-linux-*.tgz -C /usr/local/,再运行sudo mv mongodb-linux-* mongodb。
4、创建数据与日志目录:执行sudo mkdir -p /usr/local/mongodb/data /usr/local/mongodb/log,并确保当前用户对目录有读写权限。
5、配置环境变量:编辑~/.bashrc,追加export PATH=$PATH:/usr/local/mongodb/bin,然后执行source ~/.bashrc。
6、验证二进制可用性:运行mongod --version与mongosh --version(若无mongosh,需单独下载其ARM64/x86_64对应版本)。
二、通过系统软件源安装(联网/快速验证)
该方法适用于联网环境且麒麟系统已启用兼容Ubuntu或RHEL生态的软件源,可自动解决依赖,适合快速验证部署。
1、更新系统包索引:对基于Debian系的麒麟(如openKylin),执行sudo apt update;对基于RHEL系的(如Kylin V10 SPx),执行sudo yum makecache。
2、添加官方软件源: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\nenabled=1\ngpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-7.0.repo。
3、导入GPG密钥:Debian系执行wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -;RHEL系密钥已在上步配置中指定。
4、安装MongoDB:Debian系执行sudo apt-get install -y mongodb-org;RHEL系执行sudo yum install -y mongodb-org。
5、启动服务并设为开机自启:执行sudo systemctl daemon-reload,再运行sudo systemctl start mongod与sudo systemctl enable mongod。
三、Docker容器化部署(隔离/测试环境)
该方法利用容器技术实现环境隔离,避免与宿主机系统库冲突,适用于开发测试或临时验证场景。
1、确认Docker已安装并运行:执行docker --version与sudo systemctl is-active docker,若未启用则运行sudo systemctl start docker。
2、拉取官方MongoDB镜像:执行docker pull mongo:7.0(x86_64)或docker pull arm64v8/mongo:7.0(ARM64)。
3、创建持久化目录:运行sudo mkdir -p /data/mongodb/db /data/mongodb/conf,并复制默认配置到本地以便修改。
4、编写自定义配置文件/data/mongodb/conf/mongod.conf,至少包含storage.dbPath: /data/db与net.port: 27017。
5、启动容器:执行docker run -d --name mongodb -p 27017:27017 -v /data/mongodb/db:/data/db -v /data/mongodb/conf:/etc/mongod.conf -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=123456 mongo:7.0 --config /etc/mongod.conf。
6、验证容器状态:运行docker ps | grep mongodb,确认STATUS为healthy且PORTS显示27017映射成功。
四、统一基础配置与验证
无论采用何种安装方式,均需完成标准化配置以确保服务稳定可用,包括目录权限、系统资源限制及基础安全设置。
1、设置数据目录所有权:执行sudo chown -R $USER:$USER /usr/local/mongodb/data(手动安装)或sudo chown -R 999:999 /data/mongodb/db(Docker)。
2、调整系统资源限制:编辑/etc/security/limits.conf,追加* soft nofile 64000与* hard nproc 64000,保存后重新登录生效。
3、创建最小化配置文件/usr/local/mongodb/etc/mongod.conf,内容包含:storage.dbPath: /usr/local/mongodb/data、systemLog.path: /usr/local/mongodb/log/mongodb.log、net.port: 27017、security.authorization: enabled。
4、初始化管理员用户:启动mongod后,用mongosh --port 27017连接,执行use admin,再运行db.createUser({user:"admin",pwd:"StrongPass123!",roles:["root"]})。
5、启用认证启动服务:使用mongod --config /usr/local/mongodb/etc/mongod.conf启动,或修改systemd服务文件,在ExecStart行末尾添加--config /usr/local/mongodb/etc/mongod.conf。
6、验证服务连通性:执行mongosh "mongodb://admin:StrongPass123!@127.0.0.1:27017/admin?authMechanism=SCRAM-SHA-256",确认返回shell提示符而非认证错误。

















