轻松掌握组件启动之MongoDB:快速入门、Linux安装和Docker配置指南

引言

我们将继续深入研究组件启动专题。在之前的文章中,我们已经详细介绍了Redis的各种配置使用方法,为读者提供了全面的指导。然而,今天我们将转向另一个备受关注的数据库------MongoDB。MongoDB是一种流行的NoSQL数据库,具有强大的灵活性和可扩展性。在这篇文章中,我们将探索MongoDB的安装和使用过程,帮助读者快速上手这个强大的数据库。

MongoDB快速开始

linux安装MongoDB

在准备安装MongoDB之前,我们需要确保我们的环境准备就绪。

首先,我们需要一个运行在CentOS 7上的Linux系统

接下来,我们需要下载MongoDB社区版,你可以在官方网站上找到它。下载地址是 www.mongodb.com/try/downloa...

下载完成后,我们可以继续进行MongoDB的安装过程。让我们开始吧!

bash 复制代码
# 下载MongoDB
wget https://fastdl.mongodb.org/linux/mongodb‐linux‐x86_64‐rhel70‐4.4.9.tgz
tar ‐zxvf mongodb‐linux‐x86_64‐rhel70‐4.4.9.tgz

启动MongoDB Server

bash 复制代码
#创建dbpath和logpath
mkdir ‐p /mongodb/data /mongodb/log

#进入mongodb目录,启动mongodb服务
bin/mongod ‐‐port=27017 ‐‐dbpath=/mongodb/data ‐‐logpath=/mongodb/log/mongodb.log ‐‐bind_ip=0.0.0.0 ‐‐fork
  • --dbpath :用于指定数据文件存放的目录。
  • --logpath :用于指定日志文件的路径,注意这里需要指定文件而不是目录。
  • --logappend :使用追加的方式记录日志。
  • --port :用于指定端口号,默认为27017。
  • --bind_ip :默认只监听localhost网卡。
  • --fork :用于在后台启动。
  • --auth :用于开启认证模式。

添加环境变量

打开终端并输入以下命令修改/etc/profile,这将在环境变量中添加MongoDB的路径。,方便执行MongoDB命令,确保将路径/usr/local/mongodb/bin替换为您实际安装MongoDB的路径。

ini 复制代码
export MONGODB_HOME=/usr/local/soft/mongodb
PATH=$PATH:$MONGODB_HOME/bin

然后在终端中输入以下命令:source /etc/profile 重新加载文件并使环境变量生效。

利用配置文件启动服务

编辑/mongodb/conf/mongo.conf文件,内容如下:

yaml 复制代码
systemLog:
  destination: file
  path: /mongodb/log/mongod.log # log path
  logAppend: true
storage:
  dbPath: /mongodb/data # data directory
  engine: wiredTiger # 存储引擎
  journal: # 是否启用journal日志
    enabled: true
net:
  bindIp: 0.0.0.0
  port: 27017 # port
processManagement:
  fork: true

需要注意的是,一定要使用YAML格式:

开始启动mongod

bash 复制代码
mongod ‐f /mongodb/conf/mongo.conf

-f 选项表示将使用使用指定配置文件启动mongodb

关闭MongoDB服务

方式1:使用终端命令

ini 复制代码
mongod ‐‐port=27017 ‐‐dbpath=/mongodb/data ‐‐shutdown

方式2: 进入mongo shell

perl 复制代码
use admin
db.shutdownServer()

Docker安装

https://hub.docker.com/_/mongo?tab=description&page=3

ini 复制代码
#拉取mongo镜像
docker pull mongo:4.4.10

#运行mongo镜像
docker run ‐‐name mongo‐server ‐p 29017:27017 \
‐e MONGO_INITDB_ROOT_USERNAME=xiaoyu \
‐e MONGO_INITDB_ROOT_PASSWORD=xiaoyu \
‐d mongo:4.4.10 ‐‐wiredTigerCacheSizeGB 1

在默认情况下,Mongo会根据主机的总内存比例来设置wiredTigerCacheSizeGB的值。然而,它并不会考虑你可能对容器施加的内存限制。如果MONGO_INITDB_ROOT_USERNAME和MONGO_INITDB_ROOT_PASSWORD都存在,那么身份认证(mongod --auth)会被启用。

shell 复制代码
#进入容器
docker exec ‐it mongo‐server bash

#进入Mongo shell
mongo ‐u xiaoyu ‐p xiaoyu

#创建用户,赋予test库的操作权限
>use test
>db.createUser({user:"dcl",pwd:"123456",roles:["readWrite"]})

进入mongo shell

bash 复制代码
#远程连接
mongo 192.168.65.97:29017 ‐u dcl ‐p 123456

注意下:dcl用户只具备test库的readWrite权限

总结

本文总结了MongoDB的快速入门、Linux安装和Docker配置指南。提供了一步步的操作指引,帮助读者迅速上手MongoDB,并了解如何在Linux环境下进行安装、启动和配置。此外,文章还介绍了使用Docker安装和配置MongoDB的方法,使读者能够更轻松地部署和管理MongoDB实例。

相关推荐
不爱学英文的码字机器14 分钟前
[Linux] Shell 命令及运行原理
linux·运维·服务器
cdut_suye25 分钟前
Linux工具使用指南:从apt管理、gcc编译到makefile构建与gdb调试
java·linux·运维·服务器·c++·人工智能·python
qq_4336184429 分钟前
shell 编程(三)
linux·运维·服务器
小蜗牛慢慢爬行38 分钟前
如何在 Spring Boot 微服务中设置和管理多个数据库
java·数据库·spring boot·后端·微服务·架构·hibernate
丘狸尾1 小时前
[cisco 模拟器] ftp服务器配置
android·运维·服务器
黑客老陈1 小时前
新手小白如何挖掘cnvd通用漏洞之存储xss漏洞(利用xss钓鱼)
运维·服务器·前端·网络·安全·web3·xss
大猫和小黄1 小时前
Windows、CentOS环境下搭建自己的版本管理资料库:GitBlit
linux·服务器·windows·git
Joyner20181 小时前
【Linux】ubuntu通过远程命令行启动桌面应用
linux·服务器·ubuntu
ghostwritten1 小时前
Linux Swap: 深入解析 mkswap, mkfs.swap, 和 swapon
linux·运维·服务器
wm10431 小时前
java web springboot
java·spring boot·后端