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

MongoDB:Win/Linux环境安装及一键部署脚本

1. Win安装

1.1 下载 MongoDB 安装程序

访问 MongoDB 官网,进入下载页面:Download MongoDB Community Server | MongoDB 选择 Windows 平台并下载最新版的 MongoDB 安装程序。

1.2 安装 MongoDB

双击安装程序,按照提示完成 MongoDB 的安装。在安装期间,您可以选择自定义安装选项和安装路径。

1.3 配置 MongoDB

在安装完成后,需要设置 MongoDB 的配置文件。默认情况下,MongoDB 使用 "C:\data\db" 作为数据存储路径,如果没有该目录,需要手动创建。

您还需要配置 MongoDB 服务,方法如下:

  • 打开命令提示符或 PowerShell。
  • 使用管理员身份运行命令提示符或 PowerShell。
  • 进入 MongoDB 安装目录的 bin 子目录,例如 "C:\Program Files\MongoDB\Server\5.0\bin"。
  • 运行命令 "mongod.exe --dbpath="C:\data\db"",其中 "C:\data\db" 是数据存储路径。

1.4 测试 MongoDB

在 MongoDB 服务启动后,您可以通过 MongoDB shell 进行测试。方法如下:

  • 打开命令提示符或 PowerShell。
  • 进入 MongoDB 安装目录的 bin 子目录,例如 "C:\Program Files\MongoDB\Server\5.0\bin"。
  • 运行命令 "mongo.exe"。
  • 如果一切正常,您将看到 MongoDB shell 的命令提示符。

1.5 MongoDB 管理

您可以使用 MongoDB shell 或第三方 MongoDB 管理工具来管理 MongoDB 数据库。

希望这些步骤能够帮助您在 Windows 上安装 MongoDB。

1.6 MongoDB服务的启动与关闭

MongoDB服务安装成功后,可通过服务控制管理器(services.msc)查看MongoDB服务状态,手动启动、停止或重启MongoDB服务。

  • 打开Windows服务控制管理器(services.msc)。
  • 找到MongoDB服务,其服务名称可能是MongoDB、MongoDB Server等。
  • 可以手动启动、停止或重启MongoDB服务。

1.7 MongoDB连接配置

默认情况下,MongoDB会在本地主机上启动,监听端口27017。在连接MongoDB时,需要使用合适的连接字符串配置。

  • MongoDB连接字符串格式如下:mongodb://username:password@host:port/database
  • username:用户名
  • password:密码
  • host:MongoDB服务器地址
  • port:MongoDB服务器监听端口,默认为27017
  • database:连接的数据库名称

1.8 MongoDB图形化管理工具

MongoDB提供了官方的图形化管理工具MongoDB Compass,可通过官网下载安装:https://www.mongodb.com/try/download/compass。

此外,还有一些第三方的MongoDB图形化管理工具,例如Robo 3T等。

1.9 MongoDB常见问题

在安装和使用MongoDB时,可能会遇到一些常见的问题。以下是一些可能有帮助的资源:

  • MongoDB官方文档:MongoDB Documentation
  • MongoDB社区论坛:MongoDB Developer Community Forums - A place to discover, learn, and grow with MongoDB technologies
  • MongoDB错误码手册:https://docs.mongodb.com/manual/reference/error-codes/

2. Linux安装

2.1 添加 MongoDB 的 yum repository:

cat << EOF > /etc/yum.repos.d/mongodb-org-4.4.repo
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF

2.2 安装 MongoDB:

yum install -y mongodb-org

2.3 配置 MongoDB:

创建 MongoDB 的数据目录和日志目录:

mkdir -p /var/lib/mongo
mkdir -p /var/log/mongodb

修改 MongoDB 的配置文件(/etc/mongod.conf):

# 将 bindIp 改为 0.0.0.0,以允许来自任何 IP 地址的连接
sed -i 's/bindIp: 127.0.0.1/bindIp: 0.0.0.0/' /etc/mongod.conf# 将 dbPath 和 logPath 分别修改为之前创建的目录
sed -i 's/dbPath: \/var\/lib\/mongodb/dbPath: \/var\/lib\/mongo/' /etc/mongod.conf
sed -i 's/logPath: \/var\/log\/mongodb\/mongod.log/logPath: \/var\/log\/mongodb\/mongod.log/' /etc/mongod.conf

2.4 启动 MongoDB:

systemctl start mongod

2.5 验证 MongoDB 是否启动成功:

systemctl status mongod

如果 MongoDB 启动成功,您应该会看到类似下面的输出:

● mongod.service - MongoDB Database ServerLoaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)Active: active (running) since Wed 2021-09-22 16:27:23 UTC; 23s agoDocs: https://docs.mongodb.org/manualMain PID: 1140 (mongod)Memory: 148.7MCGroup: /system.slice/mongod.service└─1140 /usr/bin/mongod --config /etc/mongod.confSep 22 16:27:23 server1 systemd[1]: Started MongoDB Database Server.

2.6 使用 MongoDB:

您可以使用 mongo 命令行工具连接到 MongoDB 服务器并执行各种操作。以下是一些常用的命令:

  • 连接到 MongoDB 服务器:
mongo

切换到某个数据库(例如 test_db):

use test_db

在当前数据库中插入一条文档:

db.test_collection.insertOne({name: "John Doe", age: 30})

查询当前数据库中的所有文档:

db.test_collection.find()

这就是在 Linux 服务器上安装和配置 MongoDB 的基本步骤。请注意,如果您要在生产环境中使用 MongoDB,请参考 MongoDB 的官方文档。

3. 一键安装脚本

以下是在 CentOS 7 上安装 MongoDB 的 Shell 脚本:

#!/bin/bash# 安装 MongoDB 的 Shell 脚本
# 适用于 CentOS 7# 下载 MongoDB 的 YUM 配置文件
echo "Downloading MongoDB YUM config file..."
wget -qO /etc/yum.repos.d/mongodb-org-4.4.repo https://repo.mongodb.org/yum/redhat/mongodb-org-4.4.repo# 安装 MongoDB
echo "Installing MongoDB..."
yum install -y mongodb-org# 启动 MongoDB
echo "Starting MongoDB..."
systemctl start mongod# 将 MongoDB 设置为开机自启动
echo "Setting MongoDB to start on boot..."
systemctl enable mongod# 显示 MongoDB 版本信息
echo "MongoDB version:"
mongod --version

脚本中的注释说明了每一步的操作。执行该脚本,即可自动安装 MongoDB 并启动服务。

相关文章:

MongoDB:Win/Linux环境安装及一键部署脚本

1. Win安装 1.1 下载 MongoDB 安装程序 访问 MongoDB 官网&#xff0c;进入下载页面&#xff1a;Download MongoDB Community Server | MongoDB 选择 Windows 平台并下载最新版的 MongoDB 安装程序。 1.2 安装 MongoDB 双击安装程序&#xff0c;按照提示完成 MongoDB 的安装…...

KingbaseES V8R3 集群运维系列 -- failover切换后集群自动恢复

​ 案例说明&#xff1a; KingbaseES V8R3集群默认在触发failover切换后&#xff0c;为保证数据安全&#xff0c;原主库需要通过人工介入后&#xff0c;恢复为新的备库加入到集群。在无人值守的现场环境&#xff0c;需要在触发failover切换后&#xff0c;主库可以自动恢复为新备…...

【Selenium中】——全栈开发——如桃花来

目录索引 查找元素&#xff1a;查找方法&#xff1a;单个元素查找&#xff1a;多个元素查找&#xff1a;*代码演示&#xff1a;* 元素交互操作&#xff1a;清空文字&#xff1a; 推荐的变量名定义名称&#xff1a;执行JavaScript &#xff1a;滚动页面方法&#xff1a;*滚动到底…...

Sarsa增强版之Sarsa-λ依然走迷宫

Sarsa-λ&#xff08;Sarsa Lambda&#xff09;是Sarsa算法的一种变体&#xff0c;其中“λ”表示一个介于0和1之间的参数&#xff0c;用于平衡当前状态和之前所有状态的重要性。 Sarsa算法是一种基于Q-learning算法的增量式学习方法&#xff0c;通过在实际环境中不断探索和学…...

生成 Cypher 能力:MOSS VS ChatGLM

生成 Cypher 能力&#xff1a;MOSS VS ChatGLM 生成 Cypher 能力&#xff1a;MOSS VS ChatGLM一、 测试结果二、 测试代码&#xff08;包含Prompt&#xff09; Here’s the table of contents: 生成 Cypher 能力&#xff1a;MOSS VS ChatGLM MOSS介绍&#xff1a;MOSS 是复旦大…...

数据库的键和存储

主键:数据库表中对存储数据对象给予以唯一和完整表示的数据列或属性的组合。一个数据列只能有一个主键&#xff0c;且主键的取值不能缺失&#xff0c;即不能为空。 外键:在一个表中存在另一个表得主键称此为表的外键。 为什么用自增列作为主键&#xff1f; 如果我们定义了主…...

基于AT89C51单片机的并入串出乘法口诀的设计与仿真

点击链接获取Keil源码与Project Backups仿真图&#xff1a; https://download.csdn.net/download/qq_64505944/87779146?spm1001.2014.3001.5503 源码获取 并入串出乘法口诀的设计与仿真系统设计 目录 第一章 概述 3 1.1课题研究及意义 3 1.2课题设计内容 4 第二章系统设计…...

人生在世皆有过错,来一起看看Java中的异常吧!!!

Java中的异常问题详解 一、异常的概念与分类 1.异常概念 概念&#xff1a;Java异常是一个描述在代码段中发生异常的对象&#xff0c;当发生异常情况时&#xff0c;一个代表该异常的对象被创建并且在导致该异常的方法中被抛出&#xff0c;而该方法可以选择自己处理异常或者传…...

linux 测试连接网络和端口 telnet

一、安装telnet 1、检测telnet-server的rpm包是否安装 [rootlocalhost ~]# rpm -qa telnet-server 若无输入内容&#xff0c;则表示没有安装。出于安全考虑telnet-server.rpm是默认没有安装的&#xff0c;而telnet的客户端是标配。即下面的软件是默认安装的。 2、若未安装&…...

一文快速入门体验 Hibernate

前言 Hibernate 是一个优秀的持久层的框架&#xff0c;当然&#xff0c;虽然现在说用得比较多的是 MyBaits&#xff0c;但是我工作中也不得不接触 Hibernate&#xff0c;特别是一些老项目需要你维护的时候。所以&#xff0c;在此写下这篇文章&#xff0c;方便自己回顾&#xf…...

【RabbitMQ】SpringAMQP

RabbitMQ 1.初识MQ 1.1.同步和异步通讯 微服务间通讯有同步和异步两种方式&#xff1a; 同步通讯&#xff1a;就像打电话&#xff0c;需要实时响应。 异步通讯&#xff1a;就像发邮件&#xff0c;不需要马上回复。 两种方式各有优劣&#xff0c;打电话可以立即得到响应&am…...

错题汇总08

1.如果友元函数重载一个运算符时&#xff0c;其参数表中没有任何参数则说明该运算符是 A 一元运算符 B 二元运算符 C 选项A&#xff09;和选项B&#xff09;都可能 D 重载错误 运算符重载 1.重载成类的成员函数------>形参数目看起来比该运算符需要的参数个数少1&#x…...

使用urllib库简单入门

使用urllib库简单入门 Python中的urllib库是一个非常强大的工具&#xff0c;它提供了一些模块&#xff0c;如urllib.request、urllib.parse、urllib.error、urllib.robotparser等&#xff0c;可以用来处理URLs和网页数据的获取、发送和处理。 在本文中&#xff0c;我们将介绍…...

C++学习 Day11

目录 1. 再谈构造函数 1.1 构造函数体赋值 1.2 初始化列表 1.3 explicit关键字 2. stastic成员 2.1 概念 2.2 特性 1. 再谈构造函数 1.1 构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数&#xff0c;给对象中各个成员变量一个合适的初始值。 class Date…...

python中函数与类 类中的方法-静态方法/动态方法

class student():position即令def __init__(self,name,age):self.namenameself.ageagedef eat(self):passclassmethoddef cla(cls):passstaticmethoddef sta():passpassstustudent(name张三,age12) print(stu.position)stu.sta() stu.cla()# 直接使用静态和类方法 student.cla(…...

基于trace_id实现ForkJoinPool的链路追踪

一、引言 之前写过一篇博客&#xff1a;基于trace_id的链路追踪&#xff08;含Feign、Hystrix、线程池等场景&#xff09;&#xff0c;主要介绍在微服务体系架构中&#xff0c;如何实现分布式系统的链路追踪的博客&#xff0c;其中主要实现了以下几种场景&#xff1a; Filter…...

Qt推流程序(视频文件/视频流/摄像头/桌面转成流媒体rtmp+hls+webrtc)可在网页和播放器远程观看

一、前言说明 推流直播就是把采集阶段封包好的内容传输到服务器的过程。其实就是将现场的视频信号从手机端&#xff0c;电脑端&#xff0c;摄影机端打包传到服务器的过程。“推流”对网络要求比较高&#xff0c;如果网络不稳定&#xff0c;直播效果就会很差&#xff0c;观众观…...

ChatGPT入门到高级【第一章】

第一章&#xff1a;Chatgpt的起源和发展 1.1 人工智能和Chatbot的概念 1.2 Chatbot的历史发展 1.3 机器学习技术在Chatbot中的应用 1.4 Chatgpt的诞生和发展 第二章&#xff1a;Chatgpt的技术原理 2.1 自然语言处理技术 2.2 深度学习技术 2.3 Transformer模型 2.4 GPT模型 第…...

云原生应用架构

本博客地址&#xff1a;https://security.blog.csdn.net/article/details/130566883 一、什么是云原生应用架构 成为云原生应用至少需要满足下面几个特点&#xff1a; ● 使用微服务架构对业务进行拆分。单个微服务是个自治的服务领域&#xff0c;对这个领域内的业务实体能够…...

rem、px、em的区别 -前端

文章目录 三者的区别特点与换算举例emrem 总结一总结二 三者的区别 在css中单位长度用的最多的是px、em、rem&#xff0c;这三个的区别是&#xff1a; 一、px是固定的像素&#xff0c;一旦设置了就无法因为适应页面大小而改变。 二、em和rem相对于px更具有灵活性&#xff0c;…...

分享几款小白从零开始学习的会用到的工具/网站

大二狗接触编程也有两年了&#xff0c;差生文具多这大众都认可的一句话&#xff0c;在这里蹭一下这个活动分享一下从0开始学习编程有啥好用的工具 目录 伴侣一、Snipaste截图工具 伴侣二、Postman软件&#xff08;可用ApiPost平替&#xff09; 伴侣三、字体图标网站 伴侣四…...

第八章 文件处理命令

第八章 文件处理命令 一、 文本编辑器 vi • vi 是 Unix 类操作系统中最为流行的文本编辑器。尽管目前 已有 gedit 等一些工作在图形界面下使用起来也更为方便 的文本编辑器&#xff0c;但在很多情况下&#xff0c;vi 这种专为字符界面操 作而设计的编辑器恐怕还是要充当首…...

LVS 负载均衡群集的 NAT 模式和 DR 模式

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式&#xff0c;比较其各自的优势 DR 模式 * 负载各节点服务器通过本地网络连接&#xff0c;不需要建立专用的IP隧道 原理&#xff1a;首先负载均衡器接收到客户的请求数据包时&#xff0c;根据调度算法决定将请求发送给哪个后端的…...

自学自动化测试,第一份工作就18K,因为掌握了这些技术

我个人的情况是有1年自动化测试工作经验半年的实习经验&#xff0c;2020年毕业&#xff0c;专业通信工程&#xff0c;大一的时候学过C语言&#xff0c;所以一直对于编程感兴趣&#xff0c;之所以毕业后没做通信的工作&#xff0c;通信行业的朋友应该都明白&#xff0c;通信的天…...

C++ 类的继承与派生

目录 1、继承的概念 2、继承&#xff08;Inherit&#xff09; 3、继承方式 4、父子同名成员并存 5、虚函数&#xff08;virtual&#xff09; 6、纯虚函数 1、继承的概念 以李白为例 类1是类2的基类&#xff08;父类&#xff09;&#xff0c;类2是类3的基类&#xff08;父类…...

分布式系统基础理论

CAP是分布式系统方向中的一个非常重要的理论&#xff0c;可以粗略的将它看成是分布式系统的起点&#xff0c;CAP分别代表的是分布式系统中的三种性质&#xff0c;分别是Consistency&#xff08;可用性&#xff09;、Availability&#xff08;一致性&#xff09;、Partition tol…...

HttpServletRequestWrapper的使用与原理

​ 介绍 HttpServletRequestWrapper 实现了 HttpServletRequest 接口&#xff0c;可以让开发人员很方便的改造发送给 Servlet 的请求.HttpServletRequest 对参数值的获取实际调的是org.apache.catalina.connector.Request没有提供对应的set方法修改属性所以不能对前端传来的参…...

PBDB Data Service:List of fossil occurrences(化石产出记录列表)

List of fossil occurrences&#xff08;化石产出记录列表&#xff09; 描述用法参数选择PBDB所有记录&#xff08;all_records&#xff09;以下参数可用于按各种条件查询化石产出记录以下参数可用于筛选所选内容以下参数还可用于根据分类筛选结果列表以下参数可用于生成数据存…...

初识C语言

1. 初识C语言 C语言是一门通用计算机编程语言&#xff0c;广泛应用于底层开发。 C语言是一门面向过程的计算机编程语言&#xff0c;它与C,Java等面向对象的编程语言有所不同。 第一个C语言程序&#xff1a; #include<stdio.h>int main(void) {printf("hello worl…...

Leetcode 322. 零钱兑换(完全背包)

Leetcode 322. 零钱兑换&#xff08;完全背包&#xff09;题目 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额&…...