MongoDB 入门教学贴 单机的安装与设置 (内部培训贴)

文摘   2024-07-03 06:02   天津  

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server等有问题,有需求都可以加群群内有各大数据库行业大咖,可以解决你的问题。加群请联系 liuaustin3 ,(共2390人左右 1 + 2 + 3 + 4 +5 +6)。

(这是一个MongoDB 初级教学系列,其中会包含MongoDB 的各种初级知识,帮助小白进入MongoDB的世界,这是第一期)其他的部分已经在路上

本来是非常不屑,MongoDB 单机安装的,但没有办法基于某些场景需要用MongoDB 来做测试,而成本的因素就要使用到单机,所以单机的安装在某些场合是有用切必要的。

单机安装相对复制集和分片来说是简单的,这里做一个简单的介绍和安装的步骤,方便初学者建立测试环境。

首先一般的情况下,我们还是使用Community server 在写这篇文章的时候,最低可以被下载的MongoDB 已然到了5.0。选择正确的方式,比如如果想灵活的安装和自行设置相关的配置文件和目录,则需要使用 tgz格式的文件方式。

https://www.mongodb.com/try/download/community-kubernetes-operator

需要注意的是,在使用MongoDB的时候要关闭你本身的Linux系统的hugepages 的部分。通过下面的命令将操作系统中的大页关闭,这里注意以下命令需要跟从于你使用的操作系统,并不是每个系统都是下面的命令。同时建议MongoDB的数据库磁盘系统使用

echo never > /sys/kernel/mm/transparent_hugepage/enabled


sysctl vm.nr_hugepages
vm.nr_hugepages = 0

剩下的就是配置目录和对配置文件进行设置了,这里并没有唯一的答案,以下操作仅根据当前的练习作为一个“标准”。

systemLog:
  destination: file
  path: /mongodata/log/mongod.log
  logAppend: true
storage:
  dbPath: /mongodata/data
  journal:
    enabled: true
  engine: wiredTiger
  wiredTiger:
    engineConfig:
      cacheSizeGB: 7
net:
  port: 2608X
  bindIp: XXX.XXX.XXX.XXX
security:
  authorization: enabled
  #authorization: disabled

上面的配置文件中规中矩,基本配合大部分4.X版本更高的版本都可以作为配置文件,这里要注意的是 

1  cacheSizeGB 

2  port 3  bindIp 

4  authorization

 5  dbPath 

6  path

 等部分是根据你实际的需求和情况进行设置的,而不是固定的,这里需要注明的是  authorization: 如果不需要单机进行用户登录输入密码,而是用免密的方式.  在设置cacheSizeGB 的情况下,根据实际的内存情况去配置,将内存配置为整体内存的50% ,如果系统中存在其他的应用程序,应将应用程序使用的内存排除后,在进行剩余内存/2 在写入到cacheSizeGB

然后再解压了MongoDB的执行文件到你指定的目录后,就可以尝试启动MongoDB了。

mongod -f /etc/mongo.cnf &
[1] 29883

启动数据库后请先加入用户,通过建立用户的命令建立最大的 root  role 的账号到系统中,然后关闭数据库,在将security: 中的 authorizaiton: enabled 设置后,在启动数据库,整体的安装就结束了。

security:
  authorization: enabled
[mongo@q]$ mongo mongodb://admin:@xxx.xxx.xxx.xxx:260xx/admin
MongoDB shell version v5.0.27
Enter password: 
connecting to: mongodb://xxx.xxx.xxx.xxxx:260xx/admin?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("2b3eb8ff-77f7-45b4-b782-4a9d99da1883") }
MongoDB server version: 5.0.27
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================


置顶文章

临时工说:数据库和周边做不好原因是产品经理的锅?读从OtterTune的倒下说起-有感
临时工说:  网友问35岁就淘汰,我刚入行DBA 怎么办?
临时工访谈:问金融软件开发总监  哪些业务不用传统数据库
PostgreSQL  15 16 小版本更新信息小结 版本更新是不是挤牙膏
临时工访谈:临时工 写了6年多公众号赚了多少钱?
MongoDB 的一张“大字报”  服务客户,欢迎DISS
MongoDB  聚合怎么写,更复杂的聚合案例
MySQL 8.0 小版本更新要点,那个小版本更稳定(8.0.24-8.0.37)


往期热门文章:

SQL SERVER 2022 针对缓存扫描和Query Store 的进步,可以考虑进行版本升级

MYSQL 版本迁移带来 严重生产事故“的”分析

PolarDB  Serverless POC测试中有没有坑与发现的疑问
临时工访谈:PolarDB  Serverless  发现“大”问题了  之 灭妖记 续集
临时工访谈:庙小妖风大-PolarDB 组团镇妖 之 他们是第一
PolarDB for PostgreSQL  有意思吗?有意思呀
PolarDB  Serverless POC测试中有没有坑与发现的疑问


MySQL 的SQL引擎很差吗?由一个同学提出问题引出的实验

临时工访谈:从国产数据库 到 普罗大众的产品 !与在美国创业软件公司老板对话

PostgreSQL 如何通过工具来分析PG 内存泄露

MySQL 的SQL引擎很差吗?由一个同学提出问题引出的实验
临时工访谈:我很普通,但我也有生存的权利,大龄程序员 求职贴
临时工说: 快速识别 “海洋贝壳类” 数据库方法速递
临时工说:国产 数据库 销售人员  图鉴
临时工说:DBA 是不是阻碍国产数据库发展的毒瘤 ,是不是?从国产DB老专家的一条留言开始 (其实更好看的是文章下方的留言)

感谢 老虎刘 刘老师 对 5月20日 SQL 问题纠正贴 ---PostgreSQL 同一种SQL为什么这样写会提升45%性能

PostgreSQL 同一种SQL为什么这样写会提升45%性能 --程序员和DBA思维方式不同决定

MongoDB 不是软柿子,想替换就替换

PostgreSQL  熊灿灿一句话够学半个月 之 KILL -9

MongoDB  挑战传统数据库聚合查询,干不死他们的

临时工说:国内数据库企业存活   “三板斧”

临时工访谈:庙小妖风大-PolarDB 组团镇妖 之 他们是第一  (阿里云组团PK笔者实录

临时工访谈:金牌 “女” 销售从ORACLE 转到另类国产数据库 到底  为什么?

临时工访谈:无名氏意外到访-- 也祝你好运(管理者PUA DBA现场直播)

临时工说:搞数据库 光凭的是技术,那DBA的死多少次?

PostgreSQL  分组查询可以不进行全表扫描吗?速度提高上千倍?
临时工说:分析当前经济形势下 DBA 被裁员的根因
PostgreSQL PG_DUMP 工作失败了怎么回事及如何处理
MySQL 八怪(高老师)现场解决问题实录
PostgreSQL 为什么也不建议 RR隔离级别,MySQL别笑
临时工访谈:OceanBase上海开大会,我们四个开小会 OB 国产数据库破局者
临时工说:OceanBase 到访,果然数据库的世界很卷,没边
临时工访谈:恶意裁员后,一个国产数据库企业程序员的心声
临时工说:上云后给 我一个 不裁 DBA的理由
PolarDB for PostgreSQL  有意思吗?有意思呀
PostgreSQL   玩PG我们是认真的,vacuum 稳定性平台我们有了
临时工说:裁员裁到 DBA 咋办  临时工教你 套路1 2 3
PolarDB  搞那么多复杂磁盘计费的东西,抽筋了吗?
临时工说:OceanBase 到访,果然数据库的世界很卷,没边
MONGODB  ---- Austindatabases  历年文章合集
MYSQL  --Austindatabases 历年文章合集
POSTGRESQL --Austindatabaes 历年文章整理
POLARDB  -- Ausitndatabases 历年的文章集合
PostgreSQL  查询语句开发写不好是必然,不是PG的锅
SQL SERVER 如何实现UNDO REDO  和PostgreSQL 有近亲关系吗
MongoDB 2023纽约 MongoDB 大会 -- 我们怎么做的新一代引擎 SBE Mongodb 7.0双擎力量(译)
MongoDB 2023年度纽约 MongoDB 年度大会话题 -- MongoDB 数据模式与建模
MongoDB  双机热备那篇文章是  “毒”
MongoDB   会丢数据吗?在次补刀MongoDB  双机热备
临时工说:从人性的角度来分析为什么公司内MySQL 成为少数派,PolarDB 占领高处
POLARDB  到底打倒了谁  PPT 分享 (文字版)
PostgreSQL  字符集乌龙导致数据查询排序的问题,与 MySQL 稳定 "PG不稳定"
PostgreSQL  Patroni 3.0 新功能规划 2023年 纽约PG 大会 (音译)

Austindatabases 公众号,主要围绕数据库技术(PostgreSQL, MySQL, Mongodb, Redis, SqlServer,PolarDB, Oceanbase 等)和职业发展,国外数据库大会音译,国外大型IT信息类网站文章翻译,等,希望能和您共同发展。


AustinDatabases
关于数据库相关的知识分享
 最新文章