• 数据 | MongoDB Compass 连接远程数据库及 Nest.js 连接 MongoDB


    1 MongoDB 简介

    MongoDB 是一种 NoSQL 数据库,其灵活的数据模型和无模式的特性,更加适用于频繁更改表字段的场景。在 MongoDB 中,数据以文档的形式存储,每个文档可以有不同的字段和结构,可以轻松地适应数据结构的变化

    MongoDB Compass 是 MongoDB 官方提供的一款图形化数据库管理工具。它提供了一个直观的界面,用户可以更方便地管理和操作 MongoDB 数据库

    官方下载链接: 「https://www.mongodb.com/try/download/compass」

    2 宝塔配置 MongoDB

    宝塔中安装 MongoDB 后,在软件商店找到 MongoDB,依次点击设置 > 配置项

    修改 bindIp 为 0.0.0.0,放开 IP 限制:

    这样任何 IP 地址的客户端都可以连接到该 MongoDB 服务。而 MongoDB 默认配置中不会开启访问控制,即任何用户都可以连接并访问数据库,这可能会导致严重的安全问题

    为了数据安全,应该启用访问控制,在宝塔中选择数据库 > MongoDB > 安全认证,同时设置 root 密码

    3 放开端口限制

    默认情况下,服务器的防火墙会阻止外部网络访问 MongoDB 的默认端口(27017)。如果从外部网络访问 MongoDB,需要在服务器的防火墙中放开 MongoDB 端口

    4 Compass 连接MongoDB

    启动 MongoDB Compass 后,点击 New connection,依次选择 Advanced Connection Options -> Authentication -> Username/Password,用户名输入 root,密码即宝塔中的 root 密码。然后在 URI 中把 localhost 换成远程 IP 地址,同时去掉 ?authMechanism=DEFAULT,点击 Connect 即可连接成功。

    最终的 URI 如下:

    mongodb://root:*****@IP:27017/
    

    5 Nest.js 连接 MongoDB

    Mongoose 是一个为 Node.js 设计的 MongoDB 对象模型工具,它提供了一种直观、方便、基于模式的解决方案来处理 MongoDB 中的数据

    安装依赖:

    npm install --save @nestjs/mongoose mongoose
    

    在 app.module.ts 中连接数据库:

    1. import { Module } from '@nestjs/common';
    2. import { MongooseModule } from '@nestjs/mongoose';
    3. @Module({
    4.   imports: [
    5.      MongooseModule.forRoot('mongodb://root:密码@IP:27017', {
    6.         dbName: '数据库名字',
    7.     }),
    8.   ],
    9. })
    10. export class AppModule {}

    更多源码,请扫码获取

    更多源码,请扫码获取

  • 相关阅读:
    17.讲跳表:为什么Redis一定要用跳表来实现有序集合
    企业级安全架构
    SpringBoot SpringBoot 开发实用篇 1 热部署 1.3 热部署范围配置
    I2C,UART,SPI(STM32、51单片机)
    LeetCode34.在排序数组中查找元素的第一个和最后一个位置
    ASEMI肖特基二极管MBR30200PT图片,MBR30200PT规格书
    51单片机数码管交通灯(51单片机实训项目)
    单细胞分析:marker鉴定(11)
    UE4 利用WEBUI插件完成UE与JS的交互 (UE4嵌入WEB)
    深入理解位运算
  • 原文地址:https://blog.csdn.net/u010799737/article/details/133941508