统信uos系统部署mongodb可采用在线apt源安装或离线tgz包手动部署两种方式:前者适用于联网的debian系uos(如desktop 20),通过导入gpg密钥、添加官方源、安装并启用mongod服务;后者适用于server 20等离线环境,需下载对应架构tgz包、解压配置、创建数据日志目录及配置文件。

如果您在统信UOS系统中需要部署MongoDB这一NoSQL数据库,则可能面临包源不兼容、依赖缺失或离线环境限制等问题。以下是多种可行的安装与部署方法,适用于不同场景下的UOS版本(如Server 20、Desktop 20、1050系列等)。
一、在线APT源安装(适用于Deepin/UOS基于Debian的发行版)
该方法利用系统原生包管理器,自动处理依赖,适合联网且系统为Debian系内核(如UOS Desktop 20、Deepin 23)的环境。需确保APT源配置正确,避免重复或冲突的mongodb-org源条目。
1、导入MongoDB官方GPG公钥:
sudo apt-get install -y gnupg wget
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
2、添加MongoDB官方APT仓库源:
echo "deb http://repo.mongodb.org/apt/debian bookworm/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
3、更新软件包索引:
sudo apt-get update
4、安装MongoDB社区版完整套件:
sudo apt-get install -y mongodb-org=6.0.26 mongodb-org-server=6.0.26 mongodb-org-shell=6.0.26 mongodb-org-mongos=6.0.26 mongodb-org-tools=6.0.26
5、重载systemd配置并启动服务:
sudo systemctl daemon-reload
sudo systemctl start mongod
sudo systemctl enable mongod
6、验证服务状态:
sudo systemctl status mongod
若显示active (running),表示服务已正常启动。
二、离线TGZ包手动部署(适用于UOS Server 20 Enterprise、无外网环境)
该方式绕过包管理器,直接解压二进制分发包,对系统版本适配性更强,尤其适合UOS Server 20、Hygon/Phytium平台等未预置MongoDB源的场景。所有路径需按实际权限与磁盘布局调整。
1、下载对应架构的MongoDB Linux压缩包(例如:mongodb-linux-x86_64-rhel8-8.2.3.tgz),推荐从官方https://www.mongodb.com/try/download/community 获取,Platform选RedHat/CentOS 8.0 x64。
2、创建部署目录并解压:
sudo mkdir -p /usr/local/mongodb
sudo tar -zxvf mongodb-linux-x86_64-rhel8-8.2.3.tgz -C /usr/local/mongodb --strip-components=1
3、创建数据与日志目录并赋权:
sudo mkdir -p /usr/local/mongodb/data /usr/local/mongodb/log
sudo chown -R $USER:$USER /usr/local/mongodb/data /usr/local/mongodb/log
4、配置mongod.conf文件:
sudo mkdir -p /usr/local/mongodb/conf
sudo tee /usr/local/mongodb/conf/mongod.conf storage:
dbPath: /usr/local/mongodb/data
systemLog:
destination: file
path: /usr/local/mongodb/log/mongod.log
logAppend: true
net:
port: 27017
bindIp: 0.0.0.0
processManagement:
fork: true
EOF
5、设置环境变量:
echo 'export MONGODB_HOME=/usr/local/mongodb' | sudo tee -a /etc/profile
echo 'export PATH=$MONGODB_HOME/bin:$PATH' | sudo tee -a /etc/profile
source /etc/profile
6、启动服务:
mongod -f /usr/local/mongodb/conf/mongod.conf
确认无报错后,执行ps aux | grep mongod查看进程是否存在。
三、Docker容器化部署(适用于已启用Docker的UOS Server或开发者环境)
该方式隔离运行时依赖,避免与宿主系统冲突,适合快速验证或测试用途。要求UOS已安装并启用Docker服务,且内核支持overlay2存储驱动。
1、确保Docker服务运行:
sudo systemctl start docker
sudo systemctl enable docker
2、拉取官方MongoDB镜像(指定稳定版本):
sudo docker pull mongo:6.0.26
3、创建持久化目录:
sudo mkdir -p /data/mongodb/db /data/mongodb/logs
4、运行容器并挂载目录与端口:
sudo docker run -d \
--name mongodb-uos \
-p 27017:27017 \
-v /data/mongodb/db:/data/db \
-v /data/mongodb/logs:/var/log/mongodb \
--restart unless-stopped \
mongo:6.0.26 \
--bind_ip 0.0.0.0 \
--logpath /var/log/mongodb/mongod.log
5、验证容器状态:
sudo docker ps -a | grep mongodb-uos
若STATUS列显示Up X minutes,表示容器已就绪。
四、配置Mongosh命令行工具(必需配套组件)
Mongosh是MongoDB官方推荐的现代Shell替代品,用于交互式操作数据库。其安装独立于mongod服务,但必须与服务端版本兼容(建议同主版本号)。
1、下载Mongosh Linux二进制包:
wget https://downloads.mongodb.com/compass/mongosh-1.10.6-linux-x64.tgz
2、解压至专用目录:
sudo mkdir -p /usr/local/mongosh
sudo tar -zxvf mongosh-1.10.6-linux-x64.tgz -C /usr/local/mongosh --strip-components=1
3、将mongosh加入PATH:
echo 'export PATH=/usr/local/mongosh/bin:$PATH' | sudo tee -a /etc/profile
source /etc/profile
4、连接本地MongoDB实例:
mongosh "mongodb://127.0.0.1:27017"
首次连接成功后,终端将显示Connected to MongoDB及当前服务器版本信息。










