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 ...
随机推荐
- nginx参考资料
什么是负载均衡? 官网的入门文章中文版 love2上关注数比较高的nginx教程 什么是反向代理,什么又是正向代理? csdn上浅谈Nginx之反向代理与负载均衡 Nginx 作为 WebSocket ...
- Software Testing Techniques Homework 3
1. a.This is the chart b. initial numPrimes = 4, t1 would over the loop. c. t = ( n = 1) d. node cov ...
- 2.MySQL 数据类型
MySQL 数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型 MySQL支持所有标准S ...
- javascript中简单提示框
CSS部分 .help-tip{ width: 340px; border:1px solid #A0A0A0; background-color: #F8F8F8; border-radius: 5 ...
- models的单表操作
orm创建数据库 from django.db import models # Create your models here. class Book(models.Model): name = mo ...
- Python学习---django多对多自定义第三方表180206
案例一: # version: python3.2.5 # author: 'FTL1012' # time: 2018/2/6 16:25 from django.db import models ...
- Python实例---三级菜单的实现[high]
# version: python3.2.5 # author: 'FTL1012' # time: 2017/12/7 09:16 menu = { '陕西': { '西安': { '未名区': [ ...
- Dictionary<Tkey.TValue>与SortedList
一.概述 表示Key/Value集合,可以添加删除元素,允许按Key来访问元素.是Hashtable的泛型等效类. 它需要一个相等实现来确定键是否相等,可以使用实现了IEqualityComparer ...
- JvisualVM的使用【转载】
VisualVM 是一款免费的,集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优.这些功能包括生成和分析海量数据.跟踪内存泄漏.监控垃圾回 ...
- javascript编译与运行机理(1)--
随着学习js的深入就越想了解其内部的运行机理,看了很多文章,感觉下面总结的不错.但囿于个人水平,只是达到了理解层面,还不能提出自己的见解,只好把资料罗列出来,留待以后总结: 1.Javascript的 ...