mongodb 怎么设置用户名密码
发布网友
发布时间:2022-04-23 20:20
我来回答
共2个回答
懂视网
时间:2022-04-30 05:05
安装服务mongod --install --serviceName mongodb --storageEngine=mmapv1 --dbpath i:mongodbdata --journal --logpath i:mongodbloglog.txt
带安全验证的安装服务错误mongod --install --serviceName mongodb --port 27017 --storageEngine=mmapv1 --dbpath i:mongodbdata --directoryperdb --journal --logpath i:mongodbloglog.txt --logappend --auth 错
正确 --authmongod --install --serviceName mongodb --port 27017 --storageEngine=mmapv1 --dbpath i:mongodbdata --journal --logpath i:mongodbloglog.txt --logappend --auth 对mongod --reinstall --serviceName mongodb --port 27017 --storageEngine=mmapv1 --dbpath i:mongodbdata --journal --logpath i:mongodbloglog.txt --logappend --auth
mongod --install --serviceName mongodb --port 27017 --storageEngine=mmapv1 --dbpath c:mongodbdata --journal --logpath c:mongodbloglog.txt --logappend --authnet stop mongodb
卸载服务mongod --remove --serviceName mongodb
mongo
>use admin;db.addUser(‘admin‘,‘123‘); 废除
//首次登录,建立超级管理员>use admin;>db.createUser({user:‘admin‘,pwd:‘123‘,roles:[‘root‘]});
退出客户端
oracle 12c 64
重新登录mongouse admin;db.auth(‘admin‘,‘123‘); 验证通过 可以任何操作
超级管理员直接登录服务器mongo --host localhost --port 27017 --username admin --password 123 --authenticationDatabase admin
精简的登录I:mongodbin>mongo localhost:27017/admin -u admin -p 123
use admin;db.dropUser(‘admin‘);
//修改超级管理员密码use admin;db.updateUser(‘admin‘,{pwd:‘admin‘});
//建立某数据库管理员hndb;
//建立只读账号use hndb;>db.createUser({user:‘aa‘,pwd:‘aa‘,roles:[‘read‘]});
//建立数据库管理员use hndb;db.createUser({user:‘cc‘,pwd:‘cc‘,roles:[‘readWrite‘]});
定义:创建一个数据库新用户用db.createUser()方法,如果用户存在则返回一个用户重复错误。语法:db.createUser(user, writeConcern) user这个文档创建关于用户的身份认证和访问信息; writeConcern这个文档描述保证MongoDB提供写操作的成功报告。
· user文档,定义了用户的以下形式:{ user: "<name>", pwd: "<cleartext password>", customData: { <any information> }, roles: [ { role: "<role>", db: "<database>" } | "<role>", ... ]}
user文档字段介绍: user字段,为新用户的名字; pwd字段,用户的密码; cusomData字段,为任意内容,例如可以为用户全名介绍; roles字段,指定用户的角色,可以用一个空数组给新用户设定空角色; 在roles字段,可以指定内置角色和用户定义的角色。
Built-In Roles(内置角色): 1. 数据库用户角色:read、readWrite; 2. 数据库管理角色:dbAdmin、dbOwner、userAdmin; 3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 4. 备份恢复角色:backup、restore; 5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 6. 超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase) 7. 内部角色:__system PS:关于每个角色所拥有的操作权限可以点击上面的内置角色链接查看详情。
· writeConcern文档(官方说明) w选项:允许的值分别是 1、0、大于1的值、"majority"、<tag set>; j选项:确保mongod实例写数据到磁盘上的journal(日志),这可以确保mongd以外关闭不会丢失数据。设置true启用。 wtimeout:指定一个时间限制,以毫秒为单位。wtimeout只适用于w值大于1。
例如:在products数据库创建用户accountAdmin01,并给该用户admin数据库上clusterAdmin和readAnyDatabase的角色,products数据库上readWrite角色。use productsdb.createUser( { "user" : "accountAdmin01", "pwd": "cleartext password", "customData" : { employeeId: 12345 }, "roles" : [ { role: "clusterAdmin", db: "admin" }, { role: "readAnyDatabase", db: "admin" }, "readWrite" ] }, { w: "majority" , wtimeout: 5000 } )
验证:mongo -u accountAdmin01 -p yourpassward --authenticationDatabase products
来自为知笔记(Wiz)
mongodb账号安全操作
标签:
热心网友
时间:2022-04-30 02:13
方法如下:
创建数据库
use tt
这样就创建了一个数据库,如果什么都不操作离开的话,这个库就会被系统删除.所以还要执行下面的命令:
db.usr.insert({'name':'tompig'});
db.usr.insert({'name':'tompig1','id':1});
随便整了2个表,这个无所谓的,反正要导入表的话就删除掉这2个就可以了,目前只是想让数据库保持住.
然后使用命令查看是否有保存tt这个数据库:
show dbs
3.配置用户
use tt
db.addUser('mongodb','123456');
mongodb是用户名,123456是密码.
好了,这样一个数据库和对这个数据库配置用户就完成了.
mongodb常用命令:
1、Help查看命令提示
help
db.help();
db.yourColl.help();
db.youColl.find().help();
rs.help();
2、切换/创建数据库
use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库
3、查询所有数据库
show dbs;
4、删除当前使用数据库
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();
db; db和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、显示当前所有用户
show users;
4、删除用户
db.removeUser("userName");
其他
1、查询之前的错误信息
db.getPrevError();
2、清除错误记录
db.resetError();