[MongoDB]------windos远程服务器部署连接
1.连接前的准备
这里就省略了服务器上安装的操作,跟上一节是一样的流程。
连接到远程服务器,首先需要到远程服务器上在mongoDb安装根目录下的bin文件夹(默认安装目录是C:\Program Files\MongoDB\Server\4.0\bin)找到mongod.cfg文件,打开如图

找到并将bindIp的值改成127.0.0.1,0.0.0.0
之后再到控制面板\系统和安全\Windows 防火墙\高级设置\入站规则\新建规则
依次选择 端口=>TCP=>特定本地端口号,输入,这里我是用的默认的既27017=>允许连接
这个时候我们就可以在本地中进行连接远程服务器了,打开cmd输入:
mongo host:port 如:
mongo 122.22.22.222:27017
可以看到如下图,说明已经可以访问远程服务器上的mongoDB了。

2.增加登录权限
要访问远程的服务器一定是要登录的身份验证不然就能随随便便操作了可不行,这时候在远程服务器中连接进mongoDb(cmd中输入 mongo 之后再输入 use admin)
接下来咱创建一个给予了超级管理员权限的账号
db.createUser({user:”账号”,pwd:”密码”,roles:[{“role”:”userAdmin”,”db”:”admin”},{“role”:”root”,”db”:”admin”},{“role”:”userAdminAnyDatabase”,”db”:”admin”}]})
这里提供一下相应的权限名称与解释
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
再给账号进行授权操作db.auth(“账号”,”密码”)
原来的服务是无Auth验证的,需要删除 ,(记得退出mongodb连接,输入Exit回车)在cmd中执行sc delete MongoDB
来删除win服务,然后再到服务管理中将MongoDb的服务停止,它会自动刷新一下就不在列表中显示了。
接着安装带auth验证的服务,cmd中输入mongod.exe --dbpath C:\Program Files\MongoDB\Server\4.0\data --logpath=C:\Program Files\MongoDB\Server\4.0\log\mongodb.log --logappend --auth --install
路径根据自身情况设置
我们在本地访问,输入show dbs就会看到错误提示大概意思是没权限
这个时候我们在本地的cmd中输入账号密码连接
mongo host:port/admin -u 账号 -p 密码
如 mongo 122.22.22.222:2701/admin -u root -p ******
登录成功后输入show dbs 就可以正常显示了
温馨提示,设置错了密码 可以执行这条语句来修改 db.changeUserPassword('账号','密码');
[MongoDB]------windos远程服务器部署连接的更多相关文章
- fastdfs远程服务器java连接失败的问题
異常如下: java.net.SocketTimeoutException: connect timed out at java.net.DualStackPlainSocketImpl.waitFo ...
- 远程mysql服务器无法连接解决方案
错误现象:Habon被拒绝. 远程服务器无法连接从两个方面看 1.是否能ping通远程服务器 windows下查看防火墙是否已关闭 linux下查看iptables等 2.数据库是否有开用户管理权限 ...
- (数据科学学习手札132)Python+Fabric实现远程服务器连接
本文示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 日常工作中经常需要通过SSH连接到多台远程 ...
- 阿里云服务器部署Java Web项目全过程
最近需要将一个Java Web项目部署到服务器上,方便多人共享访问.这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾. 购买服务器 第一步当然是需要购 ...
- 2018.4.19 远程服务器重装系统之后ssh无法登陆问题
当我们重装云服务器系统的时候输入ssh连接命令(ssh dc2-user@116.85.25.15)出现一下代码 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...
- 使用pycharm调试远程服务器上的程序
一.PyCharm实现远程调试代码 1. 和远程服务器建立连接,tools àDeploymentàConfiguration 2. 点击“+”号,按照远程服务器信息配置信息 点击“Advanced ...
- NO.A.0004——Git私有服务器部署/makefile方式/本地与Git服务器代码交换
一.在linux服务器上搭建私有Git服务程序:make编译方式 远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改.GitHub就是一个免费托管开源代码的远程仓库.但是对于某 ...
- MongoDB在windows服务器安装部署及远程连接MongoDB
(.\是表示在服务器的windows powershell下需要 表示信任此命令才会执行不然会报错,自己电脑上使用时可去掉.\) 在本地使用都不需要开启权限而在服务器上需要开启安全模式所以需要在原本的 ...
- Teamcity部署.net服务“无法连接到远程服务器”解决方式
在公司Teamcity上执行自动部署.net服务的时候,发现Teamcity在启动default.aspx的时候报错了,提示:使用“0”个参数调用“GetResponse”时发生异常:“无法连接到远程 ...
随机推荐
- hadoop学习笔记(十一):MapReduce数据类型
一.序列化 1 hadoop自定义了数据类型,在hadoop中,所有的key/value类型必须实现Writable接口.有两个方法,一个是write,一个是readFileds.分别用于读(反序列化 ...
- [转]数据库中Schema(模式)概念的理解
在学习数据库时,会遇到一个让人迷糊的Schema的概念.实际上,schema就是数据库对象的集合,这个集合包含了各种对象如:表.视图.存储过程.索引等. 如果把database看作是一个仓库,仓库很多 ...
- 单点登录在asp.net中的简单实现
系统的基本架构 我们假设一个系统System包含Service客户服务中心.Shop网上购物中心和Office网上办公中心三个独立的网站.Service管理客户的资料,登录和注销过程.不论客户访问Sy ...
- ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 问题修改
ubuntu 常见错误–Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx或者apt-get update时出 ...
- win32FTP程序设计
掌握socket基于事件机制的网络程序设计,掌握多线程技术的FTP Server端设计方法,掌握FTP标准基本协议及其程序的实现,掌握文件内容的网络传输设计方法. 利用CFtpServer类接收和解析 ...
- JAVA成员变量的隐藏
一.如果子类与父类中有一个相同名称的成员变量,那么子类的成员变量会不会覆盖父类的成员变量?我们看下在的例子: public class A { public int x=10; } public cl ...
- Spring MVC入门(一)—— SpringMVC的执行流程与常用注解
一.什么是SpringMVC SpringMVC就是类似于Struts2的mvc框架,属于SpringFrameWork的后续产品.在模型层中与视图层的交互部分. springMVC执行流程: 二.常 ...
- 有 a - b < c 对Java安全性的思考
软件工程中,不论使用哪种开发语言,安全性一直是一个非常棘手却又重要的问题.安全性是软件开发领域永远的主题之一,而且随着互联网的蜂拥发展而带动的新技术的兴起与革命(比如近几年火起来的node.js,py ...
- Xshell 6连接本机VirtualBox CentOS 6.5成功方案
网上的文章铺天盖地,适合自己的没有... 最后老办法:文章+经验+尝试 = 成功,哈哈! 问题和步骤: 1. Xshell 过期了,修改用Free for Home/School版本,https:// ...
- Linux:curl
curl命令用来做HTTP协议的客户端,可以通过命令参数生成各种请求,非常强大. 1. GET 默认情况下下curl执行的是GET操作,所以可以当做wget使用如 $ curl https://www ...