宝塔安装MongoDB数据库并使用Navicat连接详细指南

前言

大家好!我是书中枫叶,由于每次给新服务器装配MongoDB都会出现奇奇怪怪的问题,所以今天记录一下关于在宝塔上装配MongoDB数据库的详细教程。

MongoDB数据库装配详细教程

  • 宝塔:安全高效的服务器运维面板,也就是说在和linux等云服务器系统的交互可视化面板,不需要记住很多Linux的命令,安装各类软件、部署项目等操作简单
  • MongoDB:一个流行的NoSQL数据库,它在开发和应用程序中具有广泛的用途。

准备工作

在安装MongoDB之前,确保你已经完成了以下准备工作:

  • 一台运行支持MongoDB的服务器。
  • 已经安装宝塔面板

开始

打开宝塔面板的软件商店,搜索mongodb

点击进行安装,选择首页显示 安装mongodb,等待安装完成

首页显示

安装完成后需要进行配置

  • 需要将bindip设置为0.0.0.0不然只能在服务器本地进行连接,不能远程连接数据库
  • 放行mongodb对应的27017端口

找到宝塔面版的安全模块进行添加规则

  • 还需要在云服务器后台放行27017端口(腾讯云为例)

测试连接MongoDB

浏览器访问 你的公网ip:27017 出现下图表示已经安装成功

无密码连接

打开软件Navicat选择MongoDB连接

新建远程连接,输入ip和端口即可

配置用户名密码

通过宝塔终端或shell执行如下步骤:

  1. 连接mongo
shell 复制代码
> mongo
  1. 为admin库添加用户和读写权限
shell 复制代码
> use admin
> db.createUser({ user: "root", pwd: "123456", roles: [{ role: "readWrite", db: "admin" }] }) 
  1. 为自定义数据库添加用户和读写权限(新建的数据库ZHOUYI_DB)
shell 复制代码
> use ZHOUYI_DB
> db.createUser({ user: "user", pwd: "zhouyi", roles: [{ role: "readWrite", db: "ZHOUYI_DB" }] }) 
  1. 验证,输出 1 表示验证成功
shell 复制代码
// 验证admin数据库
> db.auth("root","zhouyi")
shell 复制代码
// 验证ZHOUYI_DB数据库
> db.auth("user","zhouyi")

查看admin数据库所有用户

shell 复制代码
> use admin
> show users

添加用户角色权限可参考:

js 复制代码
1.数据库用户角色:read、readWrite;
2.数据库管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.备份恢复角色:backup、restore
5.所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6.超级用户角色:root

5.开启用户验证,修改mongodb配置文件中的authorizationenabledjavascriptEnabled: true,并重启数据库

yml 复制代码
security:
  authorization: enabled
  javascriptEnabled: true

重启数据库

验证并密码连接

再连接就需要输入用户名密码

命令连接

js 复制代码
> mongodb://用户名:密码@你的服务器ip:27017/你的数据库?authSource=ZHOUYI_DB
或者
> mongodb://user:zhouyi@47.100.176.xxx:27017/ZHOUYI_DB

/*
用户名: 就是刚才创建ZHOUYI_DB数据库的用户名:user
密码: 就是刚才创建ZHOUYI_DB数据库的密码 zhouyi
你的服务器ip: 就是你的服务器ip
你的数据库: 就是你要连接的数据库 ZHOUYI_DB
?authSource=ZHOUYI_DB : 验证数据库, 指定从那个数据库中验证用户, 因为我们是在ZHOUYI_DB表创建的所以要=ZHOUYI_DB
*/

其他问题

  1. 配置全部正确,但是操作数据库一直报错没有权限?
  • 直接在宝塔上卸载MongoDB,重新安装
  1. 在部署安装软件过程中,出现无法解决的问题大部分进行重新安装即可

资料

1\] [Navicat Premium 16 下载与安装破解教程(详细教程)](https://link.juejin.cn?target=https%3A%2F%2Flearnku.com%2Farticles%2F67706 "https://learnku.com/articles/67706") \[2\] [服务器部署安装宝塔面板](https://link.juejin.cn?target=https%3A%2F%2Fblog.csdn.net%2Fqq_45458749%2Farticle%2Fdetails%2F128103560 "https://blog.csdn.net/qq_45458749/article/details/128103560")

相关推荐
万少1 天前
Vibe Coding不停歇,移动端 TRAE SOLO 让你用手机也能编程啦
前端·javascript·后端
Rust研习社1 天前
为什么 Rust 没有空指针?
开发语言·后端·rust
皮皮林5511 天前
全网最全的 Jenkins + Maven + Git 自动化部署指南!
后端
kyriewen111 天前
WebAssembly:前端界的“外挂”,让C++代码在浏览器里跑起来
开发语言·前端·javascript·c++·单元测试·ecmascript
舒一笑1 天前
用几十行代码搞定 Chat 接口透明转发:跨环境轻量级网关实战
后端·程序员·架构
烛衔溟1 天前
TypeScript 接口的基本使用 —— 定义对象形状
前端·javascript·typescript
铁皮饭盒1 天前
成为AI全栈 - 第3课:路由 RESTful Elysia 状态码 设计规范
前端·后端·全栈
顾昂_1 天前
Web 性能优化完全指南
前端·面试·性能优化
我叫黑大帅1 天前
如何通过 Python 实现招聘平台自动投递
后端·python·面试
狼爷1 天前
短视频播放量(Views)计数系统实现方案:高并发、不丢数的工业级实践
后端·架构