第七章 MongoDB 副本集实战
- 使用
MongoDB Altas
搭建一个副本集环境 - 你的应用程序连接集群
1.MongoDB Altas 构建副本集群环境
MongoDB Altas 是提供一种在云上更加容易管理和托管你的数据解决方式。官网提供免费和企业版,本章节我们将使用免费的版本,管理我们的数据。动手实践,加深上一章节知识的理解💪
1.1 注册账号
如果没有Altas的账号的话,需要先去注册(MongoDB Altas registration),然后部署免费的集群。部署成功后,将会进入以下界面:
1.2 绑定IP地址
为了让你的应用程序能够连接 Altas
,你需要把你的IP
地址加入到IP列表中。在这里,遇到几个坑:
- ip地址绑定成了局域网的地址,在window 通过
ipconfig
查看ip地址时,地址为192.xxx.xxx.xxx
,这只是局域网的地址,就算绑定到了Altas
的ip列表,应用程序也不能访问,👉查看ip - ip地址绑定到
Altas
后,启动应用程序,抛出了DNS解析失败,官方提供的解决办法是需要设置一个Google public DNS,👉官网解释。
ipv4
8.8.8.8
8.8.4.4
ipv6
2001:4860:4860::8888
2001:4860:4860::8844
- 配置DNS:配置好后,我们就可以通过应用程序连接
Altas
了
1.3 创建Altas的用户
在这个界面,你可以对用户进行管理:创建用户、编辑用户等操作。我已经创建好一个用户。
1.4获取连接Altas的字符串
在这个界面,可以获取到连接Altas的字符串。
mongodb+srv://mongodb-user1:<password>@cluster0.hrghw.mongodb.net/<dbname>?retryWrites=true&w=majority
2.构建SpringBoot应用
2.1 依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
2.2 测试
public static void main(String[] args) {
MongoClient client = MongoClients.create("mongodb+srv://mongodb-user1:password@cluster0.hrghw.mongodb.net/your-db-name?retryWrites=true&w=majority");
MongoTemplate template = new MongoTemplate(client, "test");
Person person = new Person();
person.setName("tom");
person.setAge(22);
person.setBirth(new Date());
Person insert = template.insert(person);
System.out.println(insert);
//template.find(Filters.eq("name", person.getName()));
}
static class Person {
private String id;
private String name;
private Integer age;
private Date birth;
public void setName(String name) {
this.name = name;
}
public void setAge(Integer age) {
this.age = age;
}
public void setBirth(Date birth) {
this.birth = birth;
}
public String getName() {
return name;
}
}
2.3 观看Altas的仪表盘
看到这里感觉是不是很简单,开始动手搭建起来,记得搭建成功奖励自己一颗🍭