mongodb 修改用户密码 2种方法
1,错误做法,直接更新表
> db.system.users.update({"_id" : ObjectId("529e67553992b24438d5e315")},{"user":"tank2","readOnly" : false,"pwd":"123"}) > db.system.users.find(); { "_id" : ObjectId("529e5f8474b4c660718a70f3"), "user" : "tank1", "readOnly" : false, "pwd" : "35dd47abff098f5b4f0b567db8edeac5" } { "_id" : ObjectId("529e67553992b24438d5e315"), "user" : "tank2", "readOnly" : false, "pwd" : "123" } //这样就不对了
2,正确做法,利用db.addUser
> db.addUser('tank2','111') { "_id" : ObjectId("529e6f1c8d95afd190add450"), "user" : "tank2", "readOnly" : false, "pwd" : "6b4334d2c97c526e6a11b2f9ce1996e0" }
有人会问,这个不是添加用户的方法吗。不错这是添加用户的方法,但是如果用户名相同,密码不同的话,就会更新密码。
3,正确做法,利用db.changeUserPassword
> db.changeUserPassword('tank2','test');
相关推荐
-
nodejs中使用monk访问mongodb
安装mongodb 我觉得还是用mannual install靠谱一点儿:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/ 启动mongodb $ mongod 连接mogodb $ mongo mongo> use monk-app mongo> db.products.insert({"name":"apple juice", "description"
-
关于mongoose连接mongodb重复访问报错的解决办法
具体代码如下所示: var express = require('express'); var mongoose = require('mongoose'); var router = express.Router(); var Person = mongoose.model('Person',{ id:Number, name:String }); /*新增*/ router.get('/insert', function(req, res){ var student = new Person
-
MongoDB系列教程(四):设置用户访问权限
我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令. 首先建立一个默认的账户 复制代码 代码如下: Use admin Db.addUser('sa','sa') 这样我们建立了一个用户名为sa,密码为sa的默认账户. 在此时我们还是可以不输入用户名和密码进入数据库的,接下
-
Mongodb如何开启用户访问控制详解
前言 Mongodb 数据库默认情况下是没有访问控制的,整个数据库对外是开发的,只要能连上数据库,则可以进行任何操作,这会对数据带来很大的风险.当然,我们可以启用mongodb的访问控制,只让通过认证的用户才能对数据库进行角色范围内的操作. 启用访问控制可以通过在启动 mongodb 时指定 --auth 参数来设置,另外还涉及到创建用户 db.createUser 操作以及一些角色的定义,我们先来看这部分内容. db.createUser() 用法 db.createUser({ user:
-
浅析MongoDB用户管理
1. 创建一个超级用户 use admin db.createUser( { user: "adminUserName", pwd: "userPassword", roles: [ { roles: "userAdminAnyDatabase", db: "admin" } ] } ) 超级用户的role有两种,userAdmin或者userAdminAnyDatabase(比前一种多加了对所有数据库的访问). db是指定数
-
mongodb 添加用户及权限设置详解
例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢. 一,掌握权限,理解下面4条基本上就差不多 1,mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证. 2,切换到admin数据库,添加的账号才是管理员账号. 3,用户只能在用户所在数据库登录,包括管理员账号. 4,管理员可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认证后才可以.这一
-
MongoDB远程访问配置步骤详解
本文介绍的内容是关于MongoDB远程访问配置,下面话不多说,直接来看看详细的步骤. 1.首先修改mongodb的配置文件 让其监听所有外网ip 编辑文件: /etc/mongodb.conf 修改后的内容如下: bind_ip = 0.0.0.0 port = 27017 auth=true 2. /etc/init.d/mongodb restart 3.连接 #本地连接 /usr/local/mongodb/bin/mongo #远程连接 /usr/local/mongodb/bin/mo
-
MongoDB为用户设置访问权限
MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于Windows平台 MongoDB在本机安装部署好后 1. 输入命令:show dbs,你会发现它内置有两个数据库,一个名为admin,一个名为local.local好像没啥用,如果哪位在使用过程中发现了这个local表的用途,希望能够留言提醒,那我们就专心来说说admin表 2. 输入命令:use
-
centos7防火墙导致java程序访问mongodb3.0.1时报错的问题分析
环境描述: 数据库:mongodb3.0.1 数据库系统:centos7,(虚拟机,最小安装) 数据库驱动:mongo-Java-driver-3.0.0.jar 问题描述:shell环境下用mongo客户端程序能正常连接mongod,但java程序始终报错. 查看centos7的官方文档,知道centos7最小安装默认只安装防火墙的动态配置规则服务(firewalld),静态配置规则服务(iptables与ip6tables)需要另行安装. 1.关闭firewall: systemctl st
-
mongodb权限设置之添加管理员、普通用户的方法
我知道的关系型数据库都是有权限控制的,什么用户能访问什么库,什么表,什么用户可以插入,更新,而有的用户只有读取权限. 例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢. 一.掌握权限,理解下面4条基本上就差不多 1.mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证.2.切换到admin数据库,添加的账号才是管理员账号.3.用户只能在用户所在数据库登录,包
随机推荐
- 实例解析Java中的synchronized关键字与线程安全问题
- FCKeditor 在chrome中不显示问题
- 关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
- 在OracleE数据库的字段上建立索引的方法
- asp.net使用AJAX实现无刷新分页
- PHP函数引用返回的实例详解
- linux shell中的比较符号与特殊符号介绍
- python中global用法实例分析
- JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
- Windows服务器的基础安全加固方法(2008、2012)
- 基于JavaScript实现验证码功能
- Nginx日志统计分析的常用命令总结
- MAC中PyCharm设置python3解释器
- 解决vue页面DOM操作不生效的问题
- python3 判断列表是一个空列表的方法
- CentOS7服务器环境下vsftpd安装及配置方法
- 将宝塔面板linux版装在/www以外的目录的方法
- C语言控制台绘制曲线的实现代码
- vue+elementUI 复杂表单的验证、数据提交方案问题
- 如何理解Java中基类子对象的构建过程从"基类向外"进行扩散的?