如何对MongoDB 3.2.7进行用户权限管理配置

如何对MongoDB 3.2.7进行用户权限管理配置,第1张

方法如下:创建数据库usett这样就创建了一个数据库,如果什么都不 *** 作离开的话,这个库就会被系统删除.所以还要执行下面的命令:db.usr.insert({'name':'tompig'})db.usr.insert({'name':'tompig1','id':1})随便整了2个表,这个无所谓的,反正要导入表的话就删除掉这2个就可以了,目前只是想让数据库保持住.然后使用命令查看是否有保存tt这个数据库:showdbs3.配置用户usettdb.addUser('mongodb','123456')mongodb是用户名,123456是密码.好了,这样一个数据库和对这个数据库配置用户就完成了.mongodb常用命令:1、Help查看命令提示helpdb.help()db.yourColl.help()db.youColl.find().help()rs.help()2、切换/创建数据库useyourDB当创建一个集合(table)的时候会自动创建当前数据库3、查询所有数据库showdbs4、删除当前使用数据库db.dropDatabase()5、从指定主机上克隆数据库db.cloneDatabase(“127.0.0.1”)将指定机器上的数据库的数据克隆到当前数据库6、从指定的机器上复制指定数据库数据到某个数据库db.copyDatabase("mydb","temp","127.0.0.1")将本机的mydb的数据复制到temp数据库中7、修复当前数据库db.repairDatabase()8、查看当前使用的数据库db.getName()dbdb和getName方法是一样的效果,都可以查询当前使用的数据库9、显示当前db状态db.stats()10、当前db版本db.version()11、查看当前db的链接机器地址db.getMongo()Collection聚集集合1、创建一个聚集集合(table)db.createCollection(“collName”,{size:20,capped:5,max:100})2、得到指定名称的聚集集合(table)db.getCollection("account")3、得到当前db的所有聚集集合db.getCollectionNames()4、显示当前db所有聚集索引的状态db.printCollectionStats()用户相关1、添加一个用户db.addUser("name")db.addUser("userName","pwd123",true)添加用户、设置密码、是否只读2、数据库认证、安全模式db.auth("userName","123123")3、显示当前所有用户showusers4、删除用户db.removeUser("userName")其他1、查询之前的错误信息db.getPrevError()2、清除错误记录db.resetError()

安装版本: db version v4.2.6

MongoDB默认安装并没有开启用户名密码登录,这样太不安全。首先开启一个无需验证用户的MongoDB服务后,进入MongoDB的shell控制台创建用户:

创建用户后,关闭连接,进入正题:

安装路径: D:PROGRA~1\MongoDB\Server\4.2\bin\

配置文件中添加 authorization 项 ,配置文件地址如下,没有可创建 D:PROGRA~1\MongoDB\Server\4.2\bin\mongod.cfg

配置文件内容如下:

配置好之后注册服务:

启动服务:

net start MongoDB

遇到的问题:

Error1:

F CONTROL [main] Failed global initialization: BadValue: dbPath requires an absolute file path with Windows services

Error2:

Error parsing YAML config file: yaml-cpp: error at line 2

以上都是配置文件配置问题,注意文件中不要出现单引号,双引号之类的;

配置项每层缩进都是4个空格,不要用tab缩进

Error3:

控制台显示服务未注册

这个一般是注册服务的命令有引号错误或者路径错误,检查有没有少斜线。正常的注册完服务并启动时,会显示服务已开启。

新开窗口进入mongodb的shell控制台验证:

参考链接:

Mongodb学习(4)通过配置文件启动mongod

windows系统,MongoDB开启用户验证

解决“Error parsing YAML

权限认证已ok

使用以下命令将MongoDB安装成为Windows服务。笔者的MongoDB目录为D:\Program Files\mongodb切换到D:\Program Files\mongodb\bin>

mongod --logpath "D:\Program Files\mongodb\data\logs.txt" --logappend --dbpath "D:\Program Files\mongodb\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

输入以上命令。

Creating service MongoDB.

Service creation successful.

Service can be started from the command line via 'net start "MongoDB"'.

该命令行指定了日志文件:D:\Program Files\mongodb\data\logs.tx,日志是以追加的方式输出的;

数据文件目录:D:\Program Files\mongodb\data,并且参数--directoryperdb说明每个DB都会新建一个目录;

Windows服务的名称:MongoDB;

最后是安装参数:--install,与之相对的是--remove

启动MongoDB:net start MongoDB

停止MongoDB:net stop MongoDB

注意:遇到问题请查看日志文件

mongodb exception in initAndListen: 12596 old lock file, terminating解决方法

错误信息如下:

exception in initAndListen: 12596 old lock file, terminating

解决方法

1.删除data目录中的.lock文件

2.mongod.exe --repair

3.启动mongod就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11589360.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存