文章目录
MongoDB 是一个基于分布式文件存储的数据库
搭建自己专属的 MongoDB 云数据库
1. 购买服务器
进入滴滴云购买(略)
2. 登录服务器
Windows 系统安装 Git Bash 软件,进入命令行终端
执行命令
ssh root@xxx.xxx.xxx.xxx
@ 符号之后是自己购买的云主机的公网地址
3. 安装 Docker
使用命令行终端登录服务器后,依次输入命令
yum -y update
yum -y install epel-release
yum -y install docker-io
4. 安装 MongoDB
4.1 启动 Docker
systemctl start docker
执行命令查看 Docker 的版本号
docker version
4.2 安装 MongoDB 并启动
27017是 Mon个DB 服务的端口号,很重要。
4.2.1 下载镜像
docker pull mongo:latest
执行命令查看 mongodb 的镜像
docker images
4.2.2 启动 MongoDB
docker run -itd --name mongo -p 27017 mongo --auth
4.3 检查 MongoDB 是否启动成功
docker ps
4.4 创建 admin 账户
4.4.1 登录数据库
执行ssh xxx.xxx.xxx.xxx
登录云主机后,需要先输入命令登录进入 MongoDB 软件的控制台:
docker exec -it mongo mongo admin
如果步骤 4.3 成功后,再次登录云服务器后,就只需要从 4.4.1 步骤开始执行,不需要再执行 4.2.2 启动 MongoDB 了,因为已经启动成功了
4.4.2 创建管理员账户
db.createUser({user:'admin', pwd:'123456', roles:[{role:'root', db:'admin'}]})
这一步执行成功后,以后重新登录云服务器,就不需要创建管理员账户了,因为已经创建了
4.4.3 认证管理员账户
db.auth('admin', '123456')
如果返回 1 ,则表示 admin(管理员)账户创建并验证成功
必须先创建并认证 admin(管理员账户),才能继续下面创建数据库的步骤
5. 创建数据库实例
在 MongoDB 登录状态下执行命令,创建一个practice
数据库,再创建一个可读写操作的用户:ppp
,密码为:111aaa
MongoDB 是数据库软件,practice
是具体的数据库实例。一个 MongoDB 数据库软件中可以包含多个数据库实例
5.1 切换数据库
use
命令的作用是创建并切换到指定的数据库:
use practice
系统输出switched to db practice
就表示成功了
5.2 创建读写用户
db.createUser
用于创建可读写操作的用户。
user
的值是用户名,pwd
的值是密码。
db.createUser({user:'xxxx', pwd:'xxxx', roles:[{role:'root', db:'admin'},{role:'adAdmin', db:'practice'}]})
这一步的前提是 4.4.3 成功,也就是说,创建读写用户前必须先认证 admin 账户,再次登录云服务器后,admin 账户已经创建,任然需要执行 4.4.3 后才能执行此 5.2 步骤
5.3 认证数据库
创建读写用户后执行一次 db.auth
,验证自己设置的读写用户的密码是否正确
db.auth('xxxx', 'xxxx')
再次登录数据库后,只需要执行 5.1 和 5.3 两个步骤即可,不需要再执行 5.2 创建用户
6. 退出登录
在 MongoDB 登录状态下执行命令,可以退出数据库。再次输入相同的命令,从云服务退出登录。
exit
安装都是一次性的,但要记住云主机公网IP地址、MongoDB 服务的端口号、以及 practice 数据库的用户名和密码
7. Spring Data MongoBD 配置
添加pom.xml
依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
配置
修改src/main/resources/application.properties
文件,增加配置项:
# 购买的云服务器的公网 IP
spring.data.mongodb.host=xxx.xxx.xxx.xxx
# MongoDB 服务的端口号
spring.data.mongodb.port=27017
# 创建的数据库及用户名和密码
spring.data.mongodb.database=practice
spring.data.mongodb.username=pppp
spring.data.mongodb.password=111aaa