MongoDB学习笔记-安装部署和简易API操作
来源:互联网 发布:java ll 和 编辑:程序博客网 时间:2024/04/29 04:27
解压安装包
tar -xzvf mongodb-linux-x86_64-ubuntu1404-3.2.8.tgz
启动MongoDB方法一:
bin/mongod --dbpath=/home/hadoop/Software/mongodb-3.2.8/datas/instance00 --logpath=/home/hadoop/Software/mongodb-3.2.8/logs/instance00.log --fork
或者
bin/mongod --dbpath=/home/hadoop/Software/mongodb-3.2.8/datas/instance00 --logpath=/home/hadoop/Software/mongodb-3.2.8/logs/instance00.log &
--dbpath执行数据库存放路径(默认是/data/db)
--logpath日志文件存放路径
--fork是以Daemon进程方式运行
注意:如果指定--fork参数,必须指定--logpaht日志文件路径
启动MongoDB方法二:
新建一个配置文件conf/mongodb.conf,添加以下内容
dbpath=/home/hadoop/Software/mongodb-3.2.8/datas/instance00logpath=/home/hadoop/Software/mongodb-3.2.8/logs/instance00.logbind_ip=192.168.10.20port=27017fork=true然后执行 mongodb-3.2.8$ bin/mongod -f conf/mongodb.conf
开机启动,修改/etc/rc.d/rc.local
/home/hadoop/Software/mongodb-3.2.8/bin/mongod --dbpath=/home/hadoop/Software/mongodb-3.2.8/datas/instance00 --logpath=/home/hadoop/Software/mongodb-3.2.8/logs/instance00.log --fork
或者
/home/hadoop/Software/mongodb-3.2.8/bin/mongod –config /home/hadoop/Software/mongodb-3.2.8/bin/mongodb.conf
进入客户端Shell
/home/hadoop/Software/mongodb-3.2.8/bin/mongo
新建用户与认证
>use admin
>db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
>db.auth("root", "123456")
启动方式需要修改为
/home/hadoop/Software/mongodb-3.2.8/bin/mongod --dbpath=/home/hadoop/Software/mongodb-3.2.8/data/instance00 --logpath=/home/hadoop/Software/mongodb-3.2.8/logs/instance00.log -auth --fork
或修改conf/mongodb.conf文件,添加
auth=true
Java API 操作
import java.util.ArrayList;import java.util.List;import com.mongodb.MongoClient;import com.mongodb.MongoCredential;import com.mongodb.ServerAddress;public class MongoDBClient {private MongoClient mongoClient = null;private MongoDBClient() {initMongoClient();}private static class MongoDBClientHolder {private static final MongoDBClient INSTANCE = new MongoDBClient();}public static final MongoDBClient getInstance() {return MongoDBClientHolder.INSTANCE;}private void initMongoClient() {List<ServerAddress> serverAddressList = new ArrayList<ServerAddress>();ServerAddress serverAddress = new ServerAddress("192.168.0.103", 27017);serverAddressList.add(serverAddress);List<MongoCredential> credentials = new ArrayList<MongoCredential>();MongoCredential credential = MongoCredential.createCredential("root", "admin", "123456".toCharArray());credentials.add(credential);mongoClient = new MongoClient(serverAddressList, credentials);}public MongoClient getClient() {return mongoClient;}}
import java.util.ArrayList;import java.util.List;import org.bson.Document;import org.junit.Test;import com.mongodb.BasicDBObject;import com.mongodb.MongoClient;import com.mongodb.bulk.BulkWriteResult;import com.mongodb.client.FindIterable;import com.mongodb.client.MongoCollection;import com.mongodb.client.MongoCursor;import com.mongodb.client.MongoDatabase;import com.mongodb.client.model.DeleteOneModel;import com.mongodb.client.model.InsertOneModel;import com.mongodb.client.model.UpdateOneModel;import com.mongodb.client.model.WriteModel;import com.mongodb.client.result.UpdateResult;public class MongoDBClientTest {@Testpublic void insertCollection() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");database.createCollection("test");mongoClient.close();}@Testpublic void insertOne() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test");Document document1 = new Document();document1.append("id", 1).append("username", "zhangsan").append("password", "zhangsan");collection.insertOne(document1);Document document2 = new Document();document2.put("id", 2);document2.put("username", "lisi");document2.put("password", "lisi");collection.insertOne(document2);mongoClient.close();}@Testpublic void insertMany() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test");List<Document> documents = new ArrayList<Document>();Document document = null;for (int i = 10; i < 20; i++) {document = new Document();document.append("id", i).append("username", "lisi" + i).append("password", "lisi" + i);documents.add(document);}collection.insertMany(documents);mongoClient.close();}@Testpublic void updateOne() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test"); Document filter = new Document(); filter.put("id", 4); filter.put("username", "lisi"); filter.put("password", "lisi"); Document updateContent = new Document(); updateContent.put("username", "lisinew"); updateContent.put("password", "lisinew"); BasicDBObject update = new BasicDBObject("$set", updateContent); UpdateResult result = collection.updateOne(filter, update);System.out.println(result.wasAcknowledged());System.out.println(result.getMatchedCount());System.out.println(result.getModifiedCount());}@Testpublic void updateMany() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test"); Document filter = new Document(); filter.put("username", "zhangsan"); Document updateContent = new Document(); updateContent.put("username", "zhangsanupdate"); updateContent.put("password", "zhangsanupdate"); Document update = new Document("$set", updateContent); UpdateResult result = collection.updateMany(filter, update);System.out.println(result.wasAcknowledged());System.out.println(result.getMatchedCount());System.out.println(result.getModifiedCount());}@Testpublic void delete() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test"); Document filter = new Document(); filter.put("id", 2);Document deleteDocuemnt = collection.findOneAndDelete(filter);System.out.println(deleteDocuemnt);}@Testpublic void findByFilter() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test"); Document filter = new Document(); filter.put("id", 1);FindIterable<Document> docs = collection.find(filter);MongoCursor<Document> iterator = docs.iterator();while (iterator.hasNext()) {Document doc = iterator.next();System.out.println(doc);}mongoClient.close();}@Testpublic void findAll() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test");FindIterable<Document> docs = collection.find();MongoCursor<Document> iterator = docs.iterator();while (iterator.hasNext()) {Document doc = iterator.next();System.out.println(doc);}mongoClient.close();}@Testpublic void findAllWithPagination() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test");FindIterable<Document> docs = collection.find().skip(5).limit(5);MongoCursor<Document> iterator = docs.iterator();while (iterator.hasNext()) {Document doc = iterator.next();System.out.println(doc);}mongoClient.close();}@Testpublic void bulk() {MongoClient mongoClient = MongoDBClient.getInstance().getClient();MongoDatabase database = mongoClient.getDatabase("admin");MongoCollection<Document> collection = database.getCollection("test");List<WriteModel<Document>> requests = new ArrayList<WriteModel<Document>>();Document insertOneDoc = new Document();insertOneDoc.append("id", 6).append("username", "zhangsan6").append("password", "zhangsan6");InsertOneModel<Document> insertOne = new InsertOneModel<Document>(insertOneDoc);requests.add(insertOne);Document filter = new Document(); filter.put("id", 4); Document updateContent = new Document(); updateContent.put("username", "lisibulkupdate"); updateContent.put("password", "lisibulkupdate"); Document update = new Document("$set", updateContent); UpdateOneModel<Document> updateOne = new UpdateOneModel<Document>(filter, update);requests.add(updateOne);Document deleteFilter = new Document();deleteFilter.put("id", 4);DeleteOneModel<Document> deleteOne = new DeleteOneModel<Document>(deleteFilter);requests.add(deleteOne);BulkWriteResult bwr = collection.bulkWrite(requests);System.out.println(bwr.getMatchedCount());System.out.println(bwr.getInsertedCount());System.out.println(bwr.getModifiedCount());System.out.println(bwr.getDeletedCount());mongoClient.close();}}
0 0
- MongoDB学习笔记-安装部署和简易API操作
- MongoDB简易安装与操作
- MongoDB学习笔记1 - 安装和启动
- MongoDB学习笔记一:MongoDB的下载和安装
- MongoDB学习笔记(一)MongoDB的介绍和安装
- IgniteRDD学习笔记(三)安装和部署
- MongoDB 学习笔记(一):安装及简单shell操作
- mongodb学习笔记--C++操作mongodb
- PHP操作MongoDB学习笔记
- MongoDB 学习笔记(python操作)
- MongoDB学习笔记(数据操作)
- MongoDB 学习笔记(python操作)
- MongoDB 学习笔记(python操作)
- PHP操作MongoDB--学习笔记
- PHP操作MongoDB学习笔记
- MongoDB学习笔记(数据操作)
- MongoDB学习笔记--基本操作
- PHP操作MongoDB学习笔记
- <mvc:annotation-driven/>的作用
- 开发小技巧:1.iOS初始化系统主题
- Anti-Debugging Skills In APK
- 【01背包方案数】HDU2126-Buy the souvenirs
- HDU 5832——A water problem & 2016CCPC网络赛1001
- MongoDB学习笔记-安装部署和简易API操作
- OpenPLC--可编程控制器的发展趋势
- 【USACO题库】1.3.1 Mixing Milk混合牛奶
- 线程与进程的区别
- SQLi Labs Lesson18
- 2569. 【NOIP2011模拟9.17】旅行 (StandardIO)Description
- java之annotation与框架的那些秘密
- 恶意代码--大小约1.2G左右zip压缩包文件用rar解压出来为何只有1.2KB
- Spring 容器AOP的实现原理——动态代理