当前位置: 首页 > news >正文

Ubuntu20系统上离线安装MongoDB

Ubuntu20系统上离线安装MongoDB

准备工作:下载安装包及依赖​

下载MongoDB二进制包​

在联网环境中访问MongoDB官网,选择以下配置:
下载地址:https://www.mongodb.com/try/download/community

  • ​Version​:需与目标系统兼容(如Ubuntu 20.04) ​
  • Platform​:Linux x86_64
  • Package​:TGZ格式(例如mongodb-linux-x86_64-ubuntu2004-6.0.12.tgz)
    在这里插入图片描述

​传输安装包到目标服务器
在这里插入图片描述

安装与配置​

解压安装包​

登录目标服务器后执行:

cd /tmp
tar -zxvf mongodb-linux-*.tgz -C /opt  # 解压到/opt目录
mv /opt/mongodb-linux-* /opt/mongodb   

配置环境变量​

将MongoDB二进制路径加入系统环境变量:

echo 'export PATH=/opt/mongodb/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

​创建数据与日志目录

sudo mkdir -p /data/db              # 数据存储目录
sudo mkdir -p /var/log/mongodb      # 日志目录
sudo chown -R `whoami` /data/db /var/log/mongodb  # 赋权当前用户

启动MongoDB服务

创建配置文件/etc/mongod.conf:

systemLog:destination: filepath: /var/log/mongodb/mongod.loglogAppend: true
storage:dbPath: /data/dbjournal:enabled: true
net:bindIp: 0.0.0.0port: 27017
processManagement:fork: true
security: # 启用身份验证authorization: enabled

启动服务

mongod -f /etc/mongod.conf

重启服务

pkill mongod
mongod -f /etc/mongod.conf

查看进程

sudo lsof-i:27017

在这里插入图片描述

创建用户

​创建管理员用户

mongo
use admin
db.createUser({user: "admin",pwd: "password",     roles: ["root"],mechanisms: ["SCRAM-SHA-256"], passwordDigestor: "server" 
})

创建数据库用户

const USER="user";
const PASSWORD= "password"; //Randomly generated passworddb.createUser({user: USER,pwd: PASSWORD,roles: [{"role":"dbOwner","db":"zking"}],/* All built-in Roles Database User Roles: read|readWriteDatabase Admin Roles: dbAdmin|dbOwner|userAdminCluster Admin Roles: clusterAdmin|clusterManager|clusterMonitor|hostManagerBackup and Restoration Roles: backup|restoreAll-Database Roles: readAnyDatabase|readWriteAnyDatabase|userAdminAnyDatabase|dbAdminAnyDatabaseSuperuser Roles: root */// authenticationRestrictions: [ {//       clientSource: ["192.0.2.0"],//       serverAddress: ["198.51.100.0"]// } ],mechanisms: ["SCRAM-SHA-256"], passwordDigestor: "server",}
)const URI= mb.getUserConnectionURI({user:USER, password: PASSWORD, authDb: "zking"});
mb.writeTextToClipboardAndNotify(URI);print("URI for "+USER,":", URI)

备份和还原

更新MongoDB工具链

wget https://fastdl.mongodb.org/tools/db/mongodb-database-tools-ubuntu2004-x86_64-100.7.4.deb
sudo dpkg -i mongodb-database-tools-*.deb

还原数据库

确保数据路径包含有效数据文件(.bson和 .json),且当前用户有读取权限:

sudo chmod -R 755 /data/project/zking

在这里插入图片描述

还原

#写入的用户密码不要使用特殊字符
mongorestore -u admin -p 'password' --authenticationDatabase admin  --db zking /data/zking

扩展场景命令​

  1. ​仅恢复特定集合​(如 users)
mongorestore -u admin -p 'password' --authenticationDatabase admin \--db zking --nsInclude "zking.users" \/data/zking
  1. 从压缩备份恢复​(若备份时使用了 --gzip)
mongorestore -u admin -p 'password' --authenticationDatabase admin \--db zking --gzip \/data/zking
  1. 远程恢复且不覆盖现有数据​
mongorestore --host 192.168.1.2 -u admin -p 'password' \--authenticationDatabase admin --db zking \/data/zking
http://www.dtcms.com/a/344043.html

相关文章:

  • Kafka Broker 核心原理全解析:存储、高可用与数据同步
  • Java性能优化实战(四):IO与网络优化的4个关键方向
  • 大视协作码垛机:颠覆传统制造,开启智能工厂新纪元
  • Linux C语言中socketpair的全面应用指南:进程与线程间高效通信
  • C++---多态(一个接口多种实现)
  • 【Linux进程控制详解】
  • Windows应急响应一般思路(二)
  • 3 种无误的方式删除 Itel 手机上的短信
  • 车载 GPS 与手机导航的终极对决:谁在复杂路况下更胜一筹?
  • 开源文件加密工具【PicoCrypt】
  • [net]基于asp.net的校园网站的设计与实现/基于c#的校园论坛系统的设计与实现
  • 微软获评2025年Gartner®容器管理魔力象限™领导者
  • 深度学习在股票量化中的应用
  • AP服务发现PRS_SOMEIPSD_00160的解析
  • 项目中优惠券计算逻辑全解析(处理高并发)
  • 河南萌新联赛2025第(六)场:郑州大学(补题)
  • Unity UnityWebRequest高级操作
  • Masked Language Model 如何重塑大模型的预训练
  • 如何轻松永久删除 Android 手机上的短信
  • 如何从根源上理解并解决前端的CORS跨域问题
  • apt update Ign and 404 Not Found
  • docker cuda版安装 dockercuda版安装
  • 哪款云手机比较好用呢?
  • 链式法则解释上游梯度应用
  • 《Windows Server 2022》 [2025年8月版 ] [官方IOS] 下载
  • 设计模式:抽象工厂模式
  • DeepSeek辅助编写的测试xlsx文件写入性能的程序
  • 多线程下为什么用ConcurrentHashMap而不是HashMap
  • Python万里长征6(非教程)pandas筛选数据三基础、三核心、三高级
  • Kafka 为什么具有高吞吐量的特性?