MongoDB的安装(Linux环境)

登录到Linux服务器执行 lsb_release -a ,即可得知服务器的版本信息为:CentOS 7。

# CentOS安装lsb_release包
[root@linux100 ~]# sudo yum install redhat-lsb# 查看Linux版本
[root@linux100 ~]# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.9.2009 (Core)
Release:        7.9.2009
Codename:       Core[root@linux100 ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)[root@linux100 ~]# hostnamectlStatic hostname: linux100Icon name: computer-vmChassis: vmMachine ID: fb9d8715fff144aca93accad42cec460Boot ID: 49ec505cca3d4052a6115b36a670e7e6Virtualization: vmwareOperating System: CentOS Linux 7 (Core)CPE OS Name: cpe:/o:centos:centos:7Kernel: Linux 3.10.0-1160.25.1.el7.x86_64Architecture: x86-64

需要在官网先确定系统对应的Mongo DB版本:平台支持的MongoDB版本比对

这里Linux服务器版本为CentOS 7 x86-64,则MongoDB选择7.0.8版本。

1 在官网下载安装包

MongoDB官网下载地址:MongoDB Enterprise Server Download | MongoDB

MongoDB从6.0.10及其之后版本中,bin目录下就没有mongo可执行文件,则需要单独安装官方客户端命令行工具MongoDB shell来连接进行数据库操作,它不支持图形用户页面 官网下载地址:https://www.mongodb.com/try/download/shell。

如需使用其他MongoDB客户端工具可看该文章:MongoDB的安装(window环境)_windows下重装mongodb-CSDN博客文章浏览阅读649次,点赞7次,收藏11次。MongoDB shell是官方客户端命令行工具,不支持图形用户页面。_windows下重装mongodbhttps://blog.csdn.net/qq_39512532/article/details/135533903

2 安装MongoDB

(1)将下载的两个压缩包上传到服务器的 /opt/software 路径下

[root@linux100 ~]# cd /opt/software/
[root@linux100 software]# ll
总用量 12922
-rw-r--r--. 1 root   root   154767684 4月  24 04:22 mongodb-linux-x86_64-enterprise-rhel70-7.0.8.tgz
-rw-r--r--. 1 root   root    80612324 4月  24 05:09 mongosh-2.2.5-linux-x64.tgz

(2)解压文件到自定义目录 /opt/module/ 路径下并改名:

# 文件解压缩
[root@linux100 software]# tar -zxvf mongodb-linux-x86_64-enterprise-rhel70-7.0.8.tgz -C /opt/module
[root@linux100 software]# tar -zxvf mongosh-2.2.5-linux-x64.tgz -C /opt/module# 修改名称
[root@linux100 software]# cd /opt/module/
[root@linux100 module]# mv mongodb-linux-x86_64-enterprise-rhel70-7.0.8 mongodb-7.0.8
[root@linux100 module]# mv mongosh-2.2.5-linux-x64 mongosh-2.2.5

扩展:以下是两个文件bin目录下的文件列表

MongoDB的bin目录下文件详解:

文件名称说明描述
mongod服务器程序,用于启动 MongoDB 服务;
mongosMongoDB 分片服务,用于管理分片集群;

(3)创建MongoDB的数据存储目录和日志存储目录

# 在mongodb-7.0.8文件下创建数据存储目录和日志存储目录
[root@linux100 module]# cd mongodb-7.0.8
[root@linux100 mongodb-7.0.8]# mkdir -p data
[root@linux100 mongodb-7.0.8]# mkdir -p log
[root@linux100 mongodb-7.0.8]# touch log/mongodb.log

(4)创建启动用的配置文件mongod.conf

[root@linux100 mongodb-7.0.8]# mdkir config
[root@linux100 mongodb-7.0.8]# vim config/mongod.conf

mongod.conf配置以下内容:

# 数据存储位置
dbpath=/opt/module/mongodb-7.0.8/data/

# 日志存储位置
logpath=/opt/module/mongodb-7.0.8/log/mongodb.log

# 运行时占用端口
port=27017

# fork为true指明以后台方式启动
fork=true

3 启动MongoDB及其客户端

[root@linux100 mongodb-7.0.8]# cd bin# 启动MongoDB服务端
[root@linux100 bin]# ./mongod -f /opt/module/mongodb-7.0.8/config/mongod.confabout to fork child process, waiting until server is ready for connections.
forked process: 21418
child process started successfully, parent exiting# 启动MongoDB客户端,默认连接本机的MongoDB服务(以默认端口连接),并进入到test数据库
[root@linux100 bin]# cd /opt/module/mongosh-2.2.5/bin/
[root@linux100 bin]# ./mongosh
Current Mongosh Log ID: 66285b69ce6a67cac62202d7
Connecting to:          mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.5
Using MongoDB:          7.0.8
Using Mongosh:          2.2.5For mongosh info see: https://docs.mongodb.com/mongodb-shell/------The server generated these startup warnings when booting2024-04-24T09:07:39.038+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted2024-04-24T09:07:39.038+08:00: You are running this process as the root user, which is not recommended2024-04-24T09:07:39.038+08:00: This server is bound to localhost. Remote systems will be unable to connect to this server. Start the server with --bind_ip <address> to specify which IP addresses it should serve responses from, or with --bind_ip_all to bind to all interfaces. If this behavior is desired, start the server with --bind_ip 127.0.0.1 to disable this warning2024-04-24T09:07:39.038+08:00: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. We suggest setting it to 'never' in this binary version2024-04-24T09:07:39.038+08:00: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. We suggest setting it to 'never' in this binary version2024-04-24T09:07:39.038+08:00: Soft rlimits for open file descriptors too low
------Deprecation warnings:- Using mongosh on the current operating system is deprecated, and support may be removed in a future release.
See https://www.mongodb.com/docs/mongodb-shell/install/#supported-operating-systems for documentation on supported platforms.
Enterprise test>

问题:

如果Mongodb服务和客户端不在同一台服务器,连接MongoDB服务连接不上!!!

在本地浏览器访问http://192.168.243.100:27017,访问失败!!!

解决方案:

(1)关闭MongoDB所在服务器防火墙,具体可参考下面链接:

Linux服务器防火墙的操作icon-default.png?t=N7T8https://blog.csdn.net/qq_39512532/article/details/131229204(2)mongodb启动时需要绑定所在IP:

[root@linux100 ~]# cd /opt/module/mongodb-7.0.8/bin
# 启动MongoDB服务端,并绑定该服务ip
[root@linux100 bin]# ./mongod -f /opt/module/mongodb-7.0.8/config/mongod.conf --bind_ip 192.168.243.100# 启动Mongodb客户端
[root@linux100 bin]# ./mongosh mongodb://192.168.243.100:27017

在浏览器中输入地址测试MongoDB是否启动成功:http://192.168.243.100:27017

4 操作数据库

MongoDB数据库的详细操作步骤可参考该链接:

MongoDB的数据库操作icon-default.png?t=N7T8https://blog.csdn.net/qq_39512532/article/details/135533055

 5 关闭MongoDB

# 使用lsof命令查看MongoDB是否运行,也可找到该端口上运行的进程ID
[root@linux100 bin]# lsof -i :27017
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  21418 root   15u  IPv4 505796      0t0  TCP localhost:27017 (LISTEN)# 关闭MongoDB服务
[root@linux100 bin]# kill -9 21418

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/4363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Blender笔记之基本操作

code review! —— 2024-04-27 杭州 Blender笔记…

c++理论篇(一) ——浅谈tcp缓存与tcp的分包与粘包

介绍 在网络通讯中,Linux系统为每一个socket创建了接收缓冲区与发送缓冲区,对于TCP协议来说,这两个缓冲区是必须的.应用程序在调用send/recv函数时,Linux内核会把数据从应用进程拷贝到socket的发送缓冲区中,应用程序在调用recv/read函数时,内核把接收缓冲区中的数据拷贝到应用…

黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day1

你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客 这是我的 github gitee 如果本篇文章帮到了你 不妨点个赞吧~ 我会很高兴的 &#x1f604; (^ ~ ^) 想看更多 那就点个关注吧 我会尽力带来有趣的内容 2024黑马程序员 SpringCloud微服务开发与实战&#xff…

FPGA高端项目:FPGA帧差算法多目标图像识别+目标跟踪,提供11套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐FPGA帧差算法单个目标图像识别目标跟踪 3、详细设计方案设计原理框图运动目标检测原理OV5640摄像头配置与采集OV7725摄像头配置与采集RGB视频流转AXI4-StreamVDMA图像缓存多目标帧差算法图像识别目标跟踪模块视频输出Xilinx系列FPGA工程源…

【c++】cpp类的继承

目录 &#xff08;1&#xff09;继承概念与语法 &#xff08;2&#xff09;派生类的访问控制 &#xff08;3&#xff09;继承中的构造和析构 1.类型兼容性原则 2.继承中的构造析构调用原则 3.继承与组合混搭下构造和析构调用原则 &#xff08;4&#xff09;同名成员(函数…

slice

最重要的一张图 endlessSummer :summer[:5]//这是这张图真正厉害的地方为什么向函数传递slice允许在函数内部修改底层数组的元素&#xff1f; 因为slice值包含指向第一个sllice元素的指针&#xff0c;传入的slice允许在函数内部修改底层数组的元素。 复制的slice只是对底层的…

LabVIEW与Modbus协议的多点温度监控系统

LabVIEW与Modbus协议的多点温度监控系统 随着工业自动化和智能化水平的不断提升&#xff0c;对于现场监控技术的需求日益增长。开发了一种基于LabVIEW与Modbus协议的多点温度监控系统&#xff0c;实现高效、准确的温度数据采集、处理和显示&#xff0c;以及数据存储功能&#…

TCP/IP协议族中的TCP(一):解析其关键特性与机制

⭐小白苦学IT的博客主页⭐ ⭐初学者必看&#xff1a;Linux操作系统入门⭐ ⭐代码仓库&#xff1a;Linux代码仓库⭐ ❤关注我一起讨论和学习Linux系统 前言 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字…

牛客社区帖子分页显示实现

下图是前端分页的组件&#xff1a; 下面是对应的静态html页面&#xff0c;每一个方块&#xff0c;都是一个a标签&#xff0c;可以点击&#xff0c;执行的链接是/community/index&#xff0c;GET请求&#xff0c;拼接的参数是current&#xff0c;也就是pageNum&#xff0c;只需…

力扣HOT100 208. 实现Trie(前缀树)

解题思路&#xff1a; class Trie {private Trie[] children; // 存储子节点的数组private boolean isEnd; // 记录是否为单词结尾public Trie() {children new Trie[26]; // 数组大小为26&#xff0c;代表26个小写字母isEnd false;}public void insert(String word) {Trie …

智能小程序 Ray 开发实践——基础内容组件 Text 和 Icon 介绍

Text 文本内容。 导入 import { Text } from ray-js/ray; Props 属性类型默认值说明支持平台classNamestring样式名涂鸦、微信selectablebooleanfalse文本是否可选涂鸦、微信onClick(e: { type: click }) > voidfalse点击事件涂鸦、微信 示例代码 基本使用 import Re…

【yolov8算法道路-墙面裂缝检测-汽车车身凹陷-抓痕-损伤检测】

yolo算法道路-墙面裂缝检测-汽车车身凹陷-抓痕-损伤检测 1. yolo算法裂缝检测-汽车车身凹陷-抓痕检测-汽车车身损伤检测2. yolo房屋墙面路面裂缝-发霉-油漆脱落-渗水-墙皮脱落检测3. 水泥墙面裂缝检测 YOLOv8算法是一种先进的目标检测技术&#xff0c;它基于YOLO系列算法的改进…

探索矿业数字化平台:实现智能化采矿与管理

随着信息技术的迅猛发展&#xff0c;矿业领域也在逐步实现数字化转型。数字化平台的出现为矿业企业带来了更高效、更智能的采矿与管理方式。本文将探讨矿业数字化平台的意义、特点以及未来发展方向。 ### 1. 数字化平台的意义 传统的矿业生产和管理方式存在诸多问题&#xff…

Python赋值运算符

目录 赋值运算符 将值赋给变量&#xff1a; 做加法运算之后完成赋值&#xff1a; 做减法运算之后完成赋值&#xff1a;- 做乘法运算之后完成赋值&#xff1a;* 做除法运算之后完成赋值&#xff1a;/ 做整除运算之后完成赋值&#xff1a;// 做幂次运算之后完成赋值&#xff1a;*…

Pytorch 计算深度模型的大小

计算模型大小的方法 卷积 时间复杂度 与 空间复杂度 的计算方式&#xff1a; C 通道的个数&#xff0c;K卷积核大小&#xff0c;M特征图大小&#xff0c;C_l-1是输入通道的个数&#xff0c;C_l是输出通道的个数 1 模型大小 MB 计算模型的大小的原理就是计算保存模型所需要…

在MySQL中isnull()函数不能作为替代null值!

在MySQL中isnull()函数不能作为替代null值&#xff01; 如下&#xff1a; 首先有个名字为business的表&#xff1a; SELECT ISNULL(business_name,no business_name) AS bus_isnull FROM business WHERE id2 直接运行就会报错&#xff1a; 错误代码&#xff1a; 1582 Incor…

cuDNN-Graph API

Graph API 为了适应越来越重要的算子融合需求&#xff0c;cuDNN8.0版本引入了Graph API&#xff0c;以提供更灵活的API接口。Graph API提供一个声明式的编程模型&#xff0c;此模型将计算操作描述为计算图。 用户首先需要构建操作图。从高层面来说&#xff0c;用户其实是在描…

Swift - Playground

文章目录 Swift - Playground1. 新建Playground2. View3. 图片4. ViewController5. Playground - 多Page6. 注释6.1 Playground的注释支持markup语法&#xff08;与markdown相似&#xff09;6.1.1 语法 Swift - Playground Playground可以快速预览代码效果&#xff0c;是学习语…

设计模式(九):组合模式

设计模式&#xff08;九&#xff09;&#xff1a;组合模式 1. 组合模式的介绍2. 组合模式的类图3. 组合模式的实现 1. 组合模式的介绍 组合模式&#xff08;Composite Pattern&#xff09;属于结构型模式&#xff0c;是用于把一组相似的对象当作一个单一的对象。 组合模式依据…

基于SpringBoot+Vue校园二手交易系统的设计与实现

系统介绍 自从新冠疫情爆发以来&#xff0c;各个线下实体越来越难做&#xff0c;线下购物的人也越来越少&#xff0c;随之带来的是一些不必要的浪费&#xff0c;尤其是即将毕业的大学生&#xff0c;各种用品不方便携带走导致被遗弃&#xff0c;造成大量的浪费。本系统目的就是让…