windows安装MongoDB副本集,通过Java程序实现数据的插入与查询
我本地的环境
MongoDB 4.0
jdk 1.7.x
安装参考主要博客
https://blog.csdn.net/wanght89/article/details/77677271#commentBox(记得安装完对解压包做个备份)
按照该网址安装过程中,遇到一些问题的解决方法:
1.

多了一个"g",应为
config_set={"_id":"mySet",members:[{_id:,host:"127.0.0.1:27111"},{_id:,host:"127.0.0.1:27112"},{_id:,host:"127.0.0.1:27113"}]}
2.启动MongoDB的时候,要进入相应的bin目录

mongod -port -dbpath D:\MongoDB\matserdb -logpath D:\MongoDB\matserlog\mongod.log -replSet mySet -logappend mongod -port -dbpath D:\MongoDB\slavedb -logpath D:\MongoDB\slavelog\mongod.log -replSet mySet -logappend mongod -port -dbpath D:\MongoDB\arbiterdb -logpath D:\MongoDB\arbiterlog\mongod.log -replSet mySet -logappend
3.设置仲裁节点
rs.addArb("192.168.32.138:27017")
或者
rs.add("host:port",{arbiterOnly:true})
4.默认情况下SECONDARY节点不能读写,要设置slaveOK为true才行
db.getMongo().setSlaveOk()
或
rs.slaveOk()
5.停止MongoDB服务
db.shutdownServer()
7.如果某一个节点不能启动了,删除db下的所有文件以及文件夹,将备份中的data中的所有复制到刚删除的db中,重启即可成功
8.插入测试数据
db.say.insert({"text":"hello world"});
9.创建用户名、密码
mongo --port use admin db.createUser(
{
user: "adminUser",
pwd: "adminPass",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
10.Java代码
package com.alibaba.fescar.dubbo; import java.util.ArrayList;
import java.util.List; import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.ServerAddress; public class ReplSetTest { public static void main(String[] args) {
try {
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
ServerAddress address1 = new ServerAddress("127.0.0.1", );
ServerAddress address2 = new ServerAddress("127.0.0.1", );
ServerAddress address3 = new ServerAddress("127.0.0.1", );
addresses.add(address1);
addresses.add(address2);
addresses.add(address3);
MongoClient client = new MongoClient(addresses);
DB db = client.getDB( "test" );
DBCollection coll = db.getCollection("say");
BasicDBObject object = new BasicDBObject();
object.append( "name" , "user28");
DBObject dbObject = coll.findOne(object); BasicDBObject obj = new BasicDBObject(); obj.put("name", ""); obj.put("age", ); obj.put("sex", ); coll.insert(obj); System.out .println(dbObject);
} catch (Exception e) {
e.printStackTrace();
}
} }
pom.xml
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.10..RELEASE</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.2.</version>
</dependency>
数据库显示

参考的网址:
http://www.cnblogs.com/ivictor/p/6795418.html
https://blog.csdn.net/a463620704/article/details/83790566
https://blog.csdn.net/wanght89/article/details/77677271#commentBox
https://blog.csdn.net/fuck487/article/details/78287362
https://blog.csdn.net/com_it/article/details/84702046
https://blog.csdn.net/com_it/article/details/84702046
https://blog.csdn.net/yisun123456/article/details/79161279
https://blog.csdn.net/sunbocong/article/details/78642947
https://blog.csdn.net/dickysun1987/article/details/81077421
https://blog.csdn.net/com_it/article/details/84702046
https://blog.csdn.net/q36835109/article/details/78831598/
https://blog.csdn.net/caofeiliju/article/details/80194815
windows安装MongoDB副本集,通过Java程序实现数据的插入与查询的更多相关文章
- MongoDB副本集及C#程序的连接配置
1.副本集 高可用是绝大多数数据库管理系统的核心目标之一.如果要想生产数据在发生故障后依然可用,就需要确保为生产数据库多部署一台服务器.MongoDB副本集提供了数据的保护.高可用和灾难恢复的机制. ...
- linux上安装MongoDB副本集(带keyfile安全认证以及用户权限)
搭建前准备 MongoDB版本:4.0 主要参考搭建MongoDB副本集网站:https://www.jianshu.com/p/f021f1f3c60b 安装之前最好先确定一下几点: 防火墙关闭 M ...
- windows版本 MongoDB副本集搭建及开启身份验证
------------恢复内容开始------------ ------------恢复内容开始------------ MongoDB副本集搭建 我搭建的是一个主节点,两个副节点 构建目录结构如下 ...
- MongoDB和Java(6):Spring Data整合MongoDB副本集、分片集群
最近花了一些时间学习了下MongoDB数据库,感觉还是比较全面系统的,涉及了软件安装.客户端操作.安全认证.副本集和分布式集群搭建,以及使用Spring Data连接MongoDB进行数据操作,收获很 ...
- java程序连接MongoDB副本集测试
三个节点有一个节点挂掉也不会影响应用程序客户端对整个副本集的读写! public class TestMongoDBReplSet { public static void main(String[] ...
- 四十三.MongoDB副本集 MongoDB文档管理
一.部署MongoDB副本集 1.1 启用副本集配置并指定集群名称 rs1 1.2 定义集群成员列表 部署好机器51,52,53:51上配置 bind_ip=192.168.4.51(要改) port ...
- MongoDB副本集学习(三):性能和优化相关
Read Preferences/读写分离 有时候为了考虑应用程序的性能或响应性,为了提高读取操作的吞吐率,一个常见的措施就是进行读写分离,MongoDB副本集对读写分离的支持是通过Read Pref ...
- MongoDB 副本集的原理、搭建、应用
概念: 在了解了这篇文章之后,可以进行该篇文章的说明和测试.MongoDB 副本集(Replica Set)是有自动故障恢复功能的主从集群,有一个Primary节点和一个或多个Secondary节点组 ...
- MongoDB副本集学习(二):基本测试与应用
简单副本集测试 这一节主要对上一节搭建的副本集做一些简单的测试. 我们首先进入primary节点(37017),并向test.test集合里插入10W条数据: . rs0:PRIMARY> ;i ...
随机推荐
- 三、CSS样式——列表
概念: CSS列表属性允许你放置.改变列表标志,或者将图像作为列表项标志 属性 描述 list-style 简写列表项 list-style-image 列表项图像 list-style-positi ...
- JavaScript数组方法--flat、forEach、map
今天到flat了,一个第一次知道该方法还是看到一个面试题,别人给了个答案,用到了flat才知道的方法. 前面也写过关于这道面试题的文章,<一道关于数组的前端面试题>. 这里再来说说吧! f ...
- QVector也是隐式数据共享的
Behind the scenes, QString uses implicit sharing (copy-on-write) to reduce memory usage and to avoid ...
- html5自带表单验证
起因:今天无意中发现chrome的input框自带表单验证!于是就去试试firefox,惊奇的发现也有自带的验证提示,只不过两者的样式不一样 chrome中的样子: firefox中的样子: 发散:具 ...
- Xeon Phi 《协处理器高性能编程指南》随书代码整理 part 4
▶ 第五章,几个优化 ● 代码 #include <stdio.h> #include <stdlib.h> #include <math.h> #define S ...
- spring boot tomcat 打本地包成war,通过Tomcat启动时出现问题: ZipException: error in opening zip file
一个第三方公司提供spring boot 项目,直接启动是ok的, 但是打包成war,通过Tomcat启动,就出现 ZipException: error in opening zip file: 2 ...
- python url监控 并邮件报警
import timeimport requestsimport smtplibfrom email.mime.text import MIMETextimport datetime def Send ...
- ucos之互斥信号量及优先级反转
在ucos常使用共享资源来作为任务之间的通信方式,其中有:消息队列,信号量,邮箱,事件.信号量中又分二值信号,多值信号,互斥信号.这次主要讲二值信号与互斥信号之间区别和使用. 首先了解一下ucos的任 ...
- [python]关于函数传入参数
在传入参数时有两个特殊参数,*args,**kwargs,功能如下: def foo(*args, **kwargs): print 'args = ', args print 'kwargs = ' ...
- c#switch语句的用法
switch条件语句是一种很常用的选择语句,它与if条件语句不同,它只针对某个表达式的值作出判断,从而决定执行哪一段代码. switch条件语句用到的关键字: switch case break de ...