• 云服务器下载安装mongo数据库并远程连接详细图文版本(全)


    前言

    关于mongo的知识点补充可看这篇文章:MongoDB框架零基础入门
    在这篇文章中也讲到了windows安装mongo,而且关于windows的无法启动可看这篇文章:MongoDB出现Error parsing command line: unrecognised option ‘–fork‘ 的解决方法

    此篇文章为 在服务器中安装mongo

    1. 下载解压

    下载对应的mongo版本号,通过mongo官网复制对应的链接进行curl:mongo官网

    在这里插入图片描述

    操作系统的平台博主为ubuntu20.04,具体查看版本号,通过如下命令cat /etc/issue 或者 lsb_release -a
    在这里插入图片描述
    之后下载对应的mongo操作系统版本链接:

    操作完成之后对应copy link 复制链接

    • 下载以及解压:curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.0.tgz(ubuntu使用curl,如果是centos使用wegt)
    • 解压:tar -zxvf mongodb-linux-x86_64-ubuntu2004-6.0.0.tgz

    在这里插入图片描述

    • 复制到usr路径并且创建data文件夹(当数据有所变化,命令中通过–dbpath参数来指定db目录的路径)
    root@gaokaoli:~/mongo# mv mongodb-linux-x86_64-ubuntu2004-6.0.0/ /usr/mongodb
    root@gaokaoli:~/mongo# mkdir -p /usr/mongodb/data
    
    • 1
    • 2

    截图如下:

    在这里插入图片描述
    在创建一个log日志来存放log的配置文件:touch /usr/mongodb/mongod.log

    为了让全局终端输入mongo都有效,需要配置环境变量
    通过vim /etc/profile进入编辑模式

    export MONGO_HOME=/usr/mongodb
    export PATH=$PATH:$MONGO_HOME/bin
    
    • 1
    • 2

    让配置生效:source /etc/profile

    通过echo $PATH 或者 printenv PATH或者echo $MONGO_HOME,查看配置是否有生效,有这路径

    在这里插入图片描述

    2. 启动

    2.1 命令启动

    之后启动mongo可以通过mongod运行对应的参数,而不需要在mongodb下的bin目录执行

    • 后台运行模式(建议):mongod --dbpath=/usr/mongodb/data --logpath=/usr/mongodb/mongod.log --logappend --port=27017 --fork
    • 当前运行模式(执行后不可关闭终端):mongod --dbpath=/usr/mongodb/data --logpath=/usr/mongodb/mongod.log --logappend --port=27017

    在这里插入图片描述

    在当前的运行模式下,如果crtl+c退出终端之后,mongo就会自动退出,具体查看进程号通过ps -ef | grep mongo

    在这里插入图片描述
    如果关闭mongo的启动,则通过kill -9 进程号即可


    具体启动之后如果没有这个mongo信息,也就是没有启动成功,则需要删除/usr/mongodb/data/mongod.lock文件

    root@gaokaoli:/usr# mongod --dbpath=/usr/mongodb/data --logpath=/usr/mongodb/mongod.log --logappend  --port=27017 --fork
    about to fork child process, waiting until server is ready for connections.
    forked process: 6836
    child process started successfully, parent exiting
    
    • 1
    • 2
    • 3
    • 4

    主要原因是因为上次的非正常关闭,导致mongodb在启动后创建了这个lock文件,影响下一次的启动,只需要将其删除即可(一般正常启动也会有,如果无法启动删除该文件在启动即可)

    在这里插入图片描述
    通过rm - rf mongod.lock删除,在将其启动即可

    2.2 配置启动

    通过touch 创建一个配置文件进行存放:touch /usr/mongodb/mongod.conf

    # 日志
    logpath=/usr/mongodb/data/mongod.log
    # 数据库
    dbpath=/usr/mongodb/data
    # 端口映射
    port=27017
    # 日志是否追加
    logappend=true
    # 后台运行
    fork=true
    # 最大连接数
    maxConns=100
    # 是否启用用户访问
    # auth=true
    # 是否远程链接
    bind_ip = 0.0.0.0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    截图如下:

    在这里插入图片描述
    之后通过如下进行启动:mongod --config /usr/mongodb/mongod.conf

    root@gaokaoli:/usr/mongodb# mongod --config /usr/mongodb/mongod.conf
    about to fork child process, waiting until server is ready for connections.
    forked process: 6966
    child process started successfully, parent exiting
    root@gaokaoli:/usr/mongodb# ps -ef | grep mongo
    root        6966       1  9 18:03 ?        00:00:00 mongod --config /usr/mongodb/mongod.conf
    root        7007    6603  0 18:04 pts/3    00:00:00 grep --color=auto mongo
    root@gaokaoli:/usr/mongodb# kill -9 6966
    root@gaokaoli:/usr/mongodb# ps -ef | grep mongo
    root        7011    6603  0 18:04 pts/3    00:00:00 grep --color=auto mongo
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    截图如下:

    在这里插入图片描述

    注意的两点:

    • 如果关闭mongo的启动,则通过kill -9 进程号即可
    • 如果无法执行该文件,则通过chmod 777 mongod.conf增加权限

    3. 连接

    3.1 本地连接

    启动之后本地测试是否可以正常连接,只需要配置相应的代码
    或者通过curl 127.0.0.1:27017即可验证
    出现如下所示:It looks like you are trying to access MongoDB over HTTP on the native driver port.
    即代表可以连接成功:

    在这里插入图片描述

    3.2 远程连接

    博主使用的是华为云服务器
    云服务器的启动需要配置入站规则(只要是云服务器就要配置入站规则)
    所以在云服务器的安全组中增加一个27017的入站规则即可

    在这里插入图片描述

    之后通过网页输入:服务器ip:27017即可看到这个It looks like you are trying to access MongoDB over HTTP on the native driver port.
    截图如下:

    在这里插入图片描述

  • 相关阅读:
    2.3IP详解及配置
    MLX90640 红外热成像仪测温模块开发笔记(完整版)
    含文档+PPT+源码等]精品springboot的二手车管理系统vue[包运行成功]Java毕业设计SSM项目源码
    企业IT运维开发一体化解决方案
    Linux 操作系统启动流程1
    2023最新SSM计算机毕业设计选题大全(附源码+LW)之java宿舍管理系统65x02
    FFmpeg入门详解之114:DirectShow读取摄像头数据
    Kubernetes学习篇之对象
    2023版 STM32实战2 按键驱动(电路与代码都讲解)
    加密和解密
  • 原文地址:https://blog.csdn.net/weixin_47872288/article/details/126079006