windows系统,MongoDB开启用户验证登录的正确姿势
MongoDB默认安装并没有开启用户名密码登录,这样太不安全了,百度出来的开启验证登录的文章,对初次使用MongoDB的小白太不友好了,总结下经验,自己写一份指引。
1,我的安装路径是C:\Program Files\MongoDB\Server\4.0\bin
2,我是安装在window10系统下的
3,直接做成系统服务(哪程序员每次用下MongoDB还要手动开启的,这太不程序员了,程序员不就图个懒字嘛),在C:\Program Files\MongoDB\ 下创建一个记事本,命名为mongod.cfg写入以下配置内容,注意要设置日志的path和数据库的path,我是设置在D:\MongoDB\目录下的,目录要自己去建。
systemLog:
destination: file
path: "D:\MongoDB\log\mongo.log"
logAppend: true
storage:
dbPath: "D:\MongoDB\db"
journal:
enabled: true
security:
authorization: "enabled"
net:
# bindIp: 127.0.0.1
bindIpAll: true
port:
setParameter:
enableLocalhostAuthBypass: false
然后点开cmd,右键以管理员身份运行,输入
cd C:\Program Files\MongoDB\Server\4.0\bin
进入MongoDB目录,然后输入(有可能出错的情况是,cfg文件里面用tab去代替空格,会导致出错)
mongod --config "C:\Program Files\MongoDB\Server\mongod.cfg" --install --serviceName "MongoDB_Svr" --serviceDisplayName "MongoDB_Svr"
对应的删除系统服务的代码如下,直接在cmd窗口输入
sc delete MongoDB_Svr
注意,这时服务并没有启动,我们先不要启动服务,下面先添加管理员用户
4,打开CMD
cd C:\Program Files\MongoDB\Server\4.0\bin
然后开启一个无需验证用户的MongoDB服务
modgod --dbpath="D:\MongoDB\db"
然后这个cmd就留着,进入文件夹 C:\Program Files\MongoDB\Server\4.0\bin 双击 mongo.exe打开命令窗口
粘贴下面代码,运行
use admin
db.createUser(
{
user: "myadmin",
pwd: "",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
使用 db.system.users.find() 可查看所有用户
然后
db.auth("myadmin","")
假设你创建了一个TestDB的数据库,如果要设置这个数据库的用户
use TestDB
db.createUser(
{
user: "phoenix",
pwd: "",
roles: [
{ role: "readWrite", db: "TestDB" },
]
}
)
这样就能用phoenix 和 123456789登陆TestDB数据库了
其它可用的命令还有
删除用户db.dropUser("TestDB")
删除用户要注意的就是要到对应的数据库下删除用户。
查看数据库show dbs
开启服务=>cmd下运行net start MongoDB_Svr
停止服务=>cmd下运行net stop MongoDB_Svr
附:
mongodb内置角色:
. 数据库用户角色:read、readWrite;
. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
. 备份恢复角色:backup、restore;
. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
. 超级用户角色:root
. 内部角色:__system
windows系统,MongoDB开启用户验证登录的正确姿势的更多相关文章
- windows 7 系统下,用户每次登录都是以临时配置文件的形式存在于users文件夹下
windows 7 系统下,用户每次登录都是以临时配置文件的形式存在于users文件夹下 当用户登录系统后,在users文件夹下创建的是一个临时文件夹,如果当前用户log off,那么当前用户的所有设 ...
- mongodb3.0分片及java代码连接操作测试(开启用户验证)
最近抽时间搭建了一下mongodb简单的分片,整个过程还算是蛮顺利,只不过在用户验证这一块遇到了一些问题,好在最后终于搞定. 一.服务器搭建过程: 1.安装四个mongodb:一个作为config.一 ...
- MongoDB添加用户验证
Mongodb默认启动是不带认证,也没有账号,只要能连接上服务就可以对数据库进行各种操作,这样可不行.现在,我们得一步步开启使用用户和认证. 第一步,我们得定位到mongodb的安装目录.我本机的是C ...
- django 使用其自带的验证系统 进行用户名有效性验证 登录状态验证 登入操作 登出操作
from django.shortcuts import render, redirect from django.contrib.auth import authenticate, login, l ...
- windows server2012如何开启mysql远程登录
开发的首要任务就是要搭建起自己的服务器,下面主要是我这搭建记录下 我的各种环境 服务器为Windows server2012 安装的MySQL数据的版本是5.6.10 ,64位.当然了版本对于安装没 ...
- Windows下MongoDB设置用户、密码
在默认情况下,mongod是监听在127.0.0.1之上的,任何客户端都可以直接连接27017,且没有认证. 好处是,用户可以即时上手,不用担心被一堆配置弄的心烦意乱. 坏处是,公网服务器搭建Mong ...
- Express实例代码分析1——简单的用户验证登录文件
/** * Module dependencies. */ var express = require('../..');// ../..是上级目录的上级目录 var hash = require(' ...
- Python基础-三次用户验证登录购买商品程序
需求: 一:三次登录锁定 1.用户信息存放于文件中 2.尝试三次都失败,锁定用户 二.购物车功能要求: 要求用户输入总资产,例如:2000显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品 ...
- windows系统添加删除用户命令!
参考:net help usernet help group Net user添加或修改用户帐户或者显示用户帐户信息. 语法net user [UserName [Pa ...
随机推荐
- Vue小案例(一)
案例需求: 创建一个品牌展示表格,表头有编号(id),品牌名称(name),创建时间(time)和操作,需要实现的功能是对数据的增删操作,和时间的格式化. 思路分析:在开发之前需要想清楚要用到Vue中 ...
- 软工读书笔记 week 5 ——《构建之法》
本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...
- 贪心算法和动态规划[zz]
http://www.cnblogs.com/asuran/archive/2010/01/26/1656399.html 贪心算法 1.贪心选择性质 所谓贪心选择性质是指所求问题的整体最优解可以通过 ...
- [翻译] IQAudioRecorderController
IQAudioRecorderController IQAudioRecorderController is a drop-in universal library allows to record ...
- Java学习---RMI 技术分析[Hessian]
一.什么是Hessian Hessian 是一个基于 binary-RPC 实现的远程通讯 library.使用二进制传输数据.Hessian通常通过Web应用来提供服务,通过接口暴露.Servlet ...
- Spark 2.x 中 Sort-Based Shuffle 产生的内幕
本课主题 Sorted-Based Shuffle 的诞生和介绍 Shuffle 中六大令人费解的问题 Sorted-Based Shuffle 的排序和源码鉴赏 Shuffle 在运行时的内存管理 ...
- January 09 2017 Week 2nd Monday
Patience is bitter, but its fruit is sweet. 忍耐是痛苦的,但它的果实是甜蜜的. Some patience may be just fruitless, o ...
- Spring Cloud(中文版)
原文链接:Spring Cloud I.云原生应用 Spring Cloud上下文:应用上下文服务 2.1.Bootstrap应用程序上下文 2.2.应用程序上下文层次结构 2.3.更改Bootstr ...
- Django F对象的使用
概念 class FF()是代表模型字段的值,也就是说对于一些特殊的字段的操作,我们不需要用Python把数据先取到内存中,然后操作,在存储到db中了. 场景 例1:我们有个统计点击量的字段,每次更新 ...
- Markdown语法初体验
前言 由于把博客主题样式换了,所以改用Markdown语法,让代码看起来更加舒服一些. 照葫芦画瓢 这里是H1标题(===) 这里是H2标题(---) 使用一个#号 使用两个#号 使用三个#号 引用 ...