mongodb启用auth,使用密码登录
<ul><li>
<p>更新操作: db.users.update({'currentVersion':3},{$set:{'currentVersion':5}})</p>
</li>
<li>
<p>首先安装下载(略过)</p>
</li>
<li>
<p>mongod 启动服务,有多重启动方式,另外可配置各种启动参数<br>
mongod --config "D:/mongodb/server/mongo.cfg"</p>
</li>
</ul>
<p>mongod --dbpath "D:\mongodb\server\data\db"</p>
<ul>
<li>show dbs</li>
<li>use admin</li>
<li>show tables</li>
<li></li>
</ul>
<ol start="3">
<li>新建用户 db.createUser({user:”账号”,pwd:”密码”,roles:[{“role”:”userAdmin”,”db”:”admin”},{“role”:”root”,”db”:”admin”},{“role”:”userAdminAnyDatabase”,”db”:”admin”}]})</li>
</ol>
<p>Read:允许用户读取指定数据库</p>
<p>readWrite:允许用户读写指定数据库</p>
<p>dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile</p>
<p>userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户</p>
<p>clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。</p>
<p>readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限</p>
<p>readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限</p>
<p>userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限</p>
<p>dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。</p>
<p>root:只在admin数据库中可用。超级账号,超级权限(本次创建的就是超级账号)</p>
<ul>
<li>
<p>对账号授权:db.auth(“账号”,”密码”)</p>
</li>
<li>
<p>重启mongo 加上 --auth 参数</p>
</li>
<li>
<p>此时如不使用用户名密码登录,show dbs, 和 show tables 都无权限</p>
</li>
<li>
<p>使用账号密码登录:mongo -u admin -p 12345 localhost:27017/admin (该账户admin,虽然是admin库中的用户,但是具有所有数据库的权限:userAdminAnyDatabase<br>
)</p>
</li>
<li>
<p>以下为mongo.cfg的简单配置</p>
</li>
</ul>
<pre><code>dbpath=D:\mongodb\server\data\db
logpath=D:\mongodb\server\log\mongo.log
logappend=true
port=27017
auth=true
</code></pre>
</div>
<div id="MySignature" role="contentinfo">
知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。
所谓诚其意者,毋自欺也。<br><br>
来源:https://www.cnblogs.com/lz0925/p/11734050.html
頁:
[1]