登录服务器

windows系统可以使用Git Bash命令行操作打开后执行

ssh root@xxx.xxx.xxx.xxxroot

为云服务器用户名(非登录云服务器平台的用户名),@后为服务器公网IP地址。登陆时如果提示输入密码,输入密码时不会再命令行显示。

注:公网ip地址在创建好云服务器后查看实例详情处查询。




云服务器部署sql sever 数据库 云服务器搭建数据库_mongodb


云服务器部署sql sever 数据库 云服务器搭建数据库_mongodb_02


阿里云默认用户名为root(大多都为root)

安装Docker

通过Docker安装MongoDB比较方便,此文采用docker安装

可以使用sudo docker version来查看服务器是否安装Docker,若能看到显示版本则已安装。

若未安装,在终端执行如下命令

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

安装MongoDB

注:27017 是MongoDB 服务的端口号,下面会用到。

下载镜像

sudo docker pull mongo:latest

再执行命令查看mongodb的镜像:

sudo docker images

启动MongoDB

sudo docker run -itd --name mongo -p 27017:27017 mongo --auth

若输出了mongo及其端口号 27017 信息,则成功。

创建admin账户

登录数据库

执行

ssh xxx.xxx.xxx.xxx

登录进入云主机后,需要先输入命令进入MongoDB控制台:

sudo docker exec -it mongo mongosh admin


云服务器部署sql sever 数据库 云服务器搭建数据库_mongodb_03


光标在 > 后表示可以输入数据库操作指令了

创建管理员账户

此指令是将用户名设为:admin,密码设为123456,实际操作中可以更具情况设置复杂一些

db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'root', db: 'admin'}]});
认证管理员账户
db.auth('admin', '123456')

若系统返回 1 ,则表示账户创建并验证成功。

界面交互格式

必须先执行

sudo docker exec -it mongo mongo admin

登录进入MongoDB软件。当光标在 > 后面时,才能输入数据库管理指令,以 db. 开头。以 db. 开头的指令都需要先登录金MongoDB软件。

创建数据库实例

切换/创建 数据库

use 命令作用是创建并切换到指定的数据库:

use practice

创建名为 practice 的数据库,并进入

创建读写用户

执行命令,在practice数据库下创建一个可读写操作的用户,用户名:name;密码:123456,实际情况自行设置。

db.createUser({ user:'name',pwd:'123456',roles:[{ role:'root', db: 'admin'},{ role:'dbAdmin', db: 'practice'}]});

认证数据库

把内容替换为创建的读写用户

db.auth('xxxx', 'xxxxxx')

退出登录

exit

云服务器开放端口

最后需要检查云服务器的安全设置,27017端口需要被开放。


云服务器部署sql sever 数据库 云服务器搭建数据库_mongodb_04


点开云服务器实例-->选择安全组-->点需要查看的云服务器安全组ID/名称-->若没有27017端口则手动添加,选择入方向(访问服务器),授权策略为允许,协议类型为TCP,端口为27017,授权对象选 0.0.0.0/0 即可,具体设置更具自己需求。


云服务器部署sql sever 数据库 云服务器搭建数据库_云服务器部署sql sever 数据库_05


Spring 项目中配置数据库

## 购买的云服务器的公网 IP
spring.data.mongodb.host=
## MongoDB 服务的端口号
spring.data.mongodb.port=27017
## 创建的数据库及用户名和密码
spring.data.mongodb.database=
spring.data.mongodb.username=
spring.data.mongodb.password=

提醒

记住云主机公网IP地址,MongoDB服务端口号、practice数据库的用户名、密码。