mongodb管理工具:studio3T
数据库
1、查询数据库
show dbs 查询全部数据库
db 显示当前数据库
2、创建数据库
use test
有test数据库则切换到此数据库,没有则创建。
注意: 新创建的数据库不显示,需要至少包括一个集合
3、删除数据库,删除test数据库
use test
db.dropDatabase()
集合
1、创建集合
db.createCollection(name, options)
name: 新创建的集合名称
options: 创建参数
2、删除集合
use test
db.people.drop() 删除people集合
文档
1、插入文档
use test
db.people.insert({“name”:“张三”,“age”:18})
2、更新
db.people.update({“name”:“张三”},{$set:{“name”:“李四”,“age”:18}},{multi:true})
multi:false表示更新第一个匹配的文档,true表示更新所有匹配的文档。
3、删除
删除所有文档
db.people.remove({})
删除符合条件的文档
db.people.remove({“name”:“李四”})
4、查询
查询全部
db.people.find()
条件查询
db.people.find({“name”:“李四”})
投影查询,只显示name和age,不显示_id字段
db.people.find({“name”:“李四”},{name:1,age:1,_id:0})
用户认证
1、数据库用户角色:read、readWrite;
2、数据库管理角色:dbAdmin、dbOwner、userAdmin;
3、集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4、备份恢复角色:backup、restore;
5、所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase
6、超级用户角色:root
1、创建用户
use admin
db.createUser(
{
user:"root",
pwd:"123",
roles:[{role:"root",db:"admin"}]
}
)
mongodb开启认证:
①在mono.conf中设置 auth=true
②重启Mongodb
③mongo.exe ‐u root ‐p 123 ‐‐authenticationDatabase admin
2、删除用户
db.dropUser(“用户名”)
3、修改用户
use admin
db.updateUser(“test”,{roles:[{role:“readWriteAnyDatabase”,db:“admin”}]})
4、修改密码
use admin db.changeUserPassword(“test”,“123”)
简单使用
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo‐java‐driver</artifactId>
<version>3.4.3</version>
</dependency>
public void testConnection(){
//创建mongodb 客户端
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
//或者采用连接字符串
//MongoClientURI connectionString = new MongoClientURI("mongodb://root:root@localhost:27017");
//MongoClient mongoClient = new MongoClient(connectionString);
MongoDatabase database = mongoClient.getDatabase("test");
// 连接collection
MongoCollection<Document> collection = database.getCollection("people");
//查询第一个文档
Document myDoc = collection.find().first();
/得到文件内容 json串
String json = myDoc.toJson();
System.out.println(json);
}