Linux中安装 mongodb ,很详细

devtools/2024/10/21 23:16:38/

Linux中安装 mongodb ,很详细

  • 一、环境
  • 二、下载
  • 三、安装
  • 四、启动和关闭
    • 1、启动
    • 2、关闭(重要,初次接触强烈建议看看)
      • (1)、命令
      • (2)、为什么不能使用 kill -9 关闭?

一、环境

系统:Alibaba Cloud Linux
mongodb 版本:8.0.1
mongosh 版本:2.3.2

二、下载

mongodb_6">1、下载mongodb

可以到这里下载

在这里插入图片描述

下载之前先看看自己的系统版本,使用如下命令:

lsb_release -a

在这里插入图片描述

看了一下好像没有对应的版本,因为和 CenOS 二者均是 Linux 操作系统的发行版本,完全兼容 CentOS 生态,这里选择的是 RedHat / Cenos 8.0 x64 平台的,如上图所示。

注意千万别下载带 ARM 的,我试过了,安装之后不能用

在这里插入图片描述

2、下载mongosh

MongoDB 从 4.2 版本开始,MongoDB Shell 已经从 MongoDB Server 中分离出来,形成了一个独立的项目名为 MongoDB Shell (mongosh)。

mongosh 是用于在服务器操作数据库的,如果后面使用 Navicat 等软件进行操作,也可以不下载安装。

这里安装的是 8.0.1 版本的,所以 mongosh 需要单独安装,mongosh 可以到这里下载

在这里插入图片描述

选好版本、平台和包类型,点击下载即可,我这里选择的是 2.3.2 版、Linux x64 平台、tgz 类型包。

三、安装

mongodb_40">1、安装mongodb

先将安装包上传到服务器的某个目录,我这里是:

/usr/local/mongodb

在这里插入图片描述

解压,命令如下:

tar -zxvf "你的安装包"

我的是:

tar -zxvf mongodb-linux-x86_64-rhel8-8.0.1.tgz

在这里插入图片描述

感觉解压后的文件名太长了,这里重命名一下,命令如下:

mv mongodb-linux-x86_64-rhel88-8.0.1 mongodb-8.0.1

在这里插入图片描述

进入根目录,创建数据存储目录,命令如下:

mkdir -p /usr/local/mongodb/mongodb-8.0.1/data/db

创建日志文件目录,命令如下:

mkdir -p /usr/local/mongodb/mongodb-8.0.1/data/log

在这里插入图片描述

再赋予目录读写权限,命令如下:

chmod -R 666 data

在这里插入图片描述

接着使用

vim mongodb.conf

编辑配置文件,配置文件名为 mongodb.conf ,文件内容如下:

在这里插入图片描述

# mongod.conf# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data.
storage:#mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongoddbPath: /usr/local/mongodb/mongodb-8.0.1/data/db#journal:#启用或禁用持久性日志以确保数据文件保持有效和可恢复。#enabled: true# where to write logging data.
systemLog:#MongoDB发送所有日志输出的目标指定为文件destination: file#当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾logAppend: true#mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径path: /usr/local/mongodb/mongodb-8.0.1/data/log/mongod.log# network interfaces
net:port: 27017# 远程连接要指定ip,否则无法连接;0.0.0.0代表不限制ip访问bindIp: 0.0.0.0processManagement:#启用在后台运行mongos或mongod进程的守护进程模式。fork: true#sharding:## Enterprise-Only Options:#auditLog:

确定无误后按 esc 键,输入“:wq”保存退出。

在这里插入图片描述

接着配置一下环境变量,使用如下命令编辑文件:

vim /etc/profile

在这里插入图片描述

如果前面有其他环境变量可以像我这样使用“:”隔开,内容如下:

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_361
export MONGODB_HOME=/usr/local/mongodb/mongodb-8.0.1
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:${JAVA_HOME}/bin:$MONGODB_HOME/bin

再使用如下命令让配置文件生效

source /etc/profile

在这里插入图片描述

接着使用如下命令启动:

mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf

在这里插入图片描述

再到浏览器使用

http://ip地址:27017

查看

在这里插入图片描述

看到这样的信息就代表启动成功了。注意关闭服务时不能使用 kill -9 ,会导致服务不能重启,可以到“四”看看。

2、安装mongosh

同样先将安装包上传到服务器的某个目录,我这里是:

/usr/local/mongosh

在这里插入图片描述

然后解压,命令如下:

tar -zxvf mongosh-2.3.1-linux-x64.tgz

在这里插入图片描述

重命名文件为 mongosh-2.3.1 ,命令如下:

mv mongosh-2.3.1-linux-x64 mongosh-2.3.1

在这里插入图片描述

再配置一下环境变量,命令如下:

vim /etc/profile

在这里插入图片描述

如果前面有其他环境变量可以像我这样使用“:”隔开,内容如下:

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_361
export MONGODB_HOME=/usr/local/mongodb/mongodb-8.0.1
export MONGOSH_HOME=/usr/local/mongosh/mongosh-2.3.1
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:${JAVA_HOME}/bin:$MONGODB_HOME/bin:$MONGOSH_HOME/bin

接着让配置生效

在这里插入图片描述

再使用如下命令进入:

mongosh

在这里插入图片描述

退出可以使用

exit

在这里插入图片描述

或者 Ctrl + C

在这里插入图片描述

四、启动和关闭

1、启动

方式一:

mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf

在这里插入图片描述

如果配置文件中没有配置 dbpath 和 logpath ,也可以使用如下命令:

mongod -dbpath /usr/local/mongodb/mongodb-8.0.1/data/db -logpath /usr/local/mongodb/mongodb-8.0.1/data/log/mongod.log --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf

方式二:

mongod -f /usr/local/mongodb/mongodb-8.0.1/mongodb.conf

在这里插入图片描述

2、关闭(重要,初次接触强烈建议看看)

不可以使用kill -9 !!!
不可以使用kill -9 !!!
不可以使用kill -9 !!!

重要的说三遍!

(1)、命令

方式一:可以在在启动命令的基础上加上 --shutdown ,命令如下:

mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf --shutdown

在这里插入图片描述

方式二:可以在 mongosh 中关闭,使用如下方法:

db.shutdownServer()

在这里插入图片描述

(2)、为什么不能使用 kill -9 关闭?

mongodb 不能使用 kill -9 关闭服务,说是会破坏 mongodb 的数据,导致重启不了,我一开始就是使用这种方式,按照网上说的删除 lock 文件也不行

在这里插入图片描述

删除 /tmp 下的 sock 文件

在这里插入图片描述

删除将安装目录删除,重新装一遍也不行,死活重启不了,最后在再次重装时修改了文件名才重启成功,最初重命名 mongodb8.0.1 ,后面重命名为 mongodb-8.0.1 ,现在也没找到原因,希望知道的大佬评论区告知一下。


http://www.ppmy.cn/devtools/125779.html

相关文章

regexp_split_to_table的作用

regexp_split_to_table 是 PostgreSQL 中的一个函数,用于将一个字符串根据正则表达式进行分割,并将结果返回为一个表格(每个分割后的部分作为一行)。这个函数非常有用,特别是在处理复杂字符串时。 语法 regexp_split…

linux手册翻译 nm

名称 nm - 从目标文件中列出符号 符号 nm [-A|-o|--print-file-name][-a|--debug-syms][-B|--formatbsd][-C|--demangle[style]][-D|--dynamic][-fformat|--formatformat][-g|--extern-only][-h|--help][--ifunc-charsCHARS][-j|--formatjust-symbols][-l|--line-numbers] [-…

rk3588调试es8388语音编解码IC小结

本次调试es8388语音编解码IC,按照以下思路(如果出现内核崩溃的问题,建议可以同步下rk原厂代码): 1、dts的配置 &i2c7 { //i2c总线确认status "okay";pinctrl-names "default";pinctrl-0 …

排序算法笔记

1. 冒泡排序(Bubble Sort) 原理:通过重复遍历数组,每次比较相邻元素并交换它们的位置,使较大的元素逐步“冒泡”到数组的末尾。时间复杂度:O(n)空间复杂度:O(1)稳定性:稳定 2. 选择…

【bug】paddleocr draw_ocr_box_txt ValueError: incorrect coordinate type

【bug】paddleocr draw_ocr_box_txt ValueError: incorrect coordinate type 环境 python 3.10.15pillow 10.4.0 paddleocr 2.8.1错误详情 错误文本 Traceback (most recent call last):....draw_left.polygon(box, fillcolor)ValueError: inco…

unity 调整skinweight (皮肤权重),解决:衣服穿模问题

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、skinweight 是什么?二、代码控制:可根据平台切换1.引入库 总结 前言 最近遇到一个问题,人物模型的衣服穿模&#xff08…

EventSource是什么,和axios区别,以及SSE是什么

EventSource、axios以及SSE(Server-Sent Events)在Web开发中各自扮演着不同的角色,以下是它们的详细解释及区别: EventSource 定义:EventSource是浏览器提供的用于接收SSE事件的接口。它允许客户端通过HTTP协议与服务…

GaussDB 主备版本8 -数据库对象 学习

1 表空间 1.1 GaussDB自带了两个表空间:pg_default和pg_global 1.1.1 默认表空间pg_default:用来存储非共享系统表、用户表、用户表index、临时表、临时表index、内部临时表的默认表空间。对应存储目录为实例数据目录下的base目录。 1.1.2 共享表空间pg…