Cent OS安装 + MongoDB安装部署(单节点+副本集+分片) 详细教程

Cent OS安装 + MongoDB安装部署(单节点+副本集+分片) 新手详细教程

一,先下载Cent OS镜像

Tips:

所有需要下载的软件都可以再 我的 资源 里面找到

选择国内镜像下载比较快

阿里镜像:

附上地址http://mirrors.aliyun.com/centos/7/isos/x86_64/

差不多几分钟 就能下完

二,下载VM Ware虚拟机 (app)

优先选择官网下载

官网链接

https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html

在向下滚动找到

就直接下载了

但官网下载速度特别慢

也可以选用我的安装包 都是VMWare 16 pro

在 目录:>>> applocation下的:

安装步骤一直下一步就行除了安装目录

详情见链接:https://baijiahao.baidu.com/s?id=1720355660491087050&wfr=spider&for=pc

破解密钥网上都有可以搜索到

附上几个破解密钥:

## 以下随便一个都行

ZF3R0-FHED2-M80TY-8QYGC-NPKYF
YF390-0HF8P-M81RQ-2DXQE-M2UT6
ZF71R-DMX85-08DQY-8YMNC-PPHV8

三,安装Cent OS 7 为例

打开虚拟机 VMWare

选择新建虚拟机

选择 典型

然后下一步

在选择稍后安装操作系统





然后会出现安装界面 注意黑屏的时候只能键盘操作

?

下一个界面会进入黑屏界面

直接 按下 回车键 即可进入 图形化安装界面







重启

?

安装完成!!!

注意 :不必每次关闭虚拟机 只需挂起


四,Xshell 连接 Cent OS

先下载Xshell/ application 里面也有

直接无脑下一步即可安装成功!!

连接Cent OS

先查看 CentOS 的 IP 地址

## 命令
#(没有Linux基础的)不用管命令什么意思直接敲
ifconfig | grep inet

?

然后连接





五,上传 mongodb安装包

?

先下载文件传输工具 WinScp 进行传输文件

软件同样在 /application 下 直接双击进行 验证登录

登录

然后进行文件传输找准 目标文件 所在目录 和 目标目录


六,MongoDB 数据库 安装 + 配置

?

先解压缩 mongodb 的安装压缩包

使用cd 切换到 /usr/local 目录下

再使用

##解压缩
tar -zxvf mongodb-linux-x86_64-rhel70-4.2.18.tgz 

## 重命名
mv mongodb-linux-x86_64-rhel70-4.2.18.tgz  mongodb

创建配置目录和文件

创建配置目录和文件

mkdir -p standalone/data/db //数据库(存放数据)
mkdir -p standalone/logs //日志文件
touch standalone/logs/mongologs.log // 记录日志

命令:↓

mkdir -p standalone/data/db
mkdir -p standalone/logs
touch standalone/logs/mongologs.log

# 数据存储目录
[root@localhost mongodb]# mkdir -p standalone/data/db

# 日志存储目录
[root@localhost mongodb]# mkdir -p standalone/logs

# 创建日志文件
[root@localhost mongodb]# touch standalone/logs/mongologs.log

编写配置文件

mongod.conf

配置数据库参数及IP绑定端口绑定

## 编写配置文件
cd standalone
touch mongod.conf
vim mongod.conf
配置文件的内容如下:
systemLog:
  #MongoDB发送所有日志输出的目标指定为文件
  destination: file 
  path: "/usr/local/mongodb/standalone/logs/mongologs.log" 
  logAppend: true
storage:   
  dbPath: "/usr/local/mongodb/standalone/data/db" 
  journal: 
    enabled: true
processManagement: 
  #启用在后台运行mongos或mongod进程的守护进程模式。 
  fork: true 
net:
  #服务实例绑定的IP 
  bindIp: 0.0.0.0
  #绑定的端口,默认是27017 
  port: 27017


配置环境变量
## 进入etc/profile 文件下配置环境变量
vim /etc/profile

## 具体参见下图

##环境变量如下:

export MONGODB_HOME=/usr/local/mongodb
export PATH=$PATH:$MONGODB_HOME/bin

#使配置文件生效
source /etc/profile


七,启动mongodb服务

?

使用配置文件启动 具体见下图

##配置文件启动

mongod -f /usr/local/mongodb/standalone/mongod.conf --fork 

##  停止服务
mongod -f /usr/local/mongodb/standalone/mongod.conf --fork  --shutdown

(也可以省略这一步)

admin数据库下创建用户

## 创建root 用户 具有管理员权限 密码为123456

db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})

重启数据库 以root 登录

## 使用root 用户登录

db.auth("root","123456")

如使用可视化图形工具远程连接 mongodb数据库 使用配置文件的方式启动 mongodb

## 配置文件启动
mongod -f /usr/local/mongodb/standalone/mongod.conf --fork 

? --fork 选项必须加

mongodb配置基本完成!!!

八,可视化图形工具配置

可视化图形工具可选择两种

Studio 3T // 可官网下载 收费有破解脚本

nosqlbooster4mongo-7.0.11 //文件包里 有破解教程 双击就能安装

部分电脑使用 nosqlbooster4mongo-7.0.11 可能无法连接mongodb数据库

建议改为Studio 3T

连接的server必须填写自己的Cent OS 的IP地址


注意 :可视化工具必须先关闭Cent OS的防火墙

注意 :可视化工具必须先关闭Cent OS的防火墙

注意 :可视化工具必须先关闭Cent OS的防火墙

##关闭防火墙
systemctl stop firewalld  ## 暂时关闭下次开机还会开启
systemctl disable firewalld  ##永久关闭
#(也可开放27017端口,但太麻烦了以后装其他服务还得开其他端口)

可以不做如下配置 ↓(没有这一步 -->>在 admin数据库下创建用户)

Studio3T

操作

可以不做如下配置 ↓(没有这一步 -->>在 admin数据库下创建用户)

相关配置正式完成

可以开始敲练习sql语句了


九,MongoDB 副本集搭建

1.创建主节点

# 创建mongodb 日志文件
# 创建mongodb 存放数据库

###    ====  myrs 
#主节点
mkdir -p /usr/local/mongodb/replica_sets/myrs_27017/logs \ & mkdir -p /usr/local/mongodb/replica_sets/myrs_27017/data/db
#新建配置文件:
	vi /usr/local/mongodb/replica_sets/myrs_27017/mongod.conf



配置文件

#主节点配置文件

systemLog:
  destination: file
  #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
  path: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongologs.log"
  #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。
  logAppend: true
storage:
  dbPath: "/usr/local/mongodb/replica_sets/myrs_27017/data/db"
  journal:
    enabled: true
processManagement:
  #启用在后台运行mongos或mongod进程的守护进程模式。
  fork: true
  #指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID
  pidFilePath: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongod.pid"
net:
  #服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip
  #bindIpAll: true
  #服务实例绑定的IP
  bindIp: 0.0.0.0
  #bindIp
  #绑定的端口,默认是27017
  port: 27017
replication:
  #副本集的名称
  replSetName: myrs



启动命令

## 启动命令
mongod -f /usr/local/mongodb/replica_sets/myrs_27017/mongod.conf

2.创建副本节点

# 创建mongodb 配置文件
# 创建mongodb 存放数据库

###    ====  myrs 
#主节点
mkdir -p /usr/local/mongodb/replica_sets/myrs_27018/logs \ & mkdir -p /usr/local/mongodb/replica_sets/myrs_27018/data/db
#新建配置文件:
	vi /usr/local/mongodb/replica_sets/myrs_27018/mongod.conf

配置文件

#主节点配置文件

systemLog:
  destination: file
  #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
  path: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongologs.log"
  #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。
  logAppend: true
storage:
  dbPath: "/usr/local/mongodb/replica_sets/myrs_27017/data/db"
  journal:
    enabled: true
processManagement:
  #启用在后台运行mongos或mongod进程的守护进程模式。
  fork: true
  #指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID
  pidFilePath: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongod.pid"
net:
  #服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip
  #bindIpAll: true
  #服务实例绑定的IP
  bindIp: 0.0.0.0
  #bindIp
  #绑定的端口,默认是27017
  port: 27018
replication:
  #副本集的名称
  replSetName: myrs



启动命令

## 启动命令
mongod -f /usr/local/mongodb/replica_sets/myrs_27018/mongod.conf

3.创建仲裁节点

# 创建mongodb 配置文件
# 创建mongodb 存放数据库

###    ====  myrs 
#主节点
mkdir -p /usr/local/mongodb/replica_sets/myrs_27019/logs \ & mkdir -p /usr/local/mongodb/replica_sets/myrs_27019/data/db
#新建配置文件:
	vi /usr/local/mongodb/replica_sets/myrs_27019/mongod.conf

配置文件

#主节点配置文件

systemLog:
  destination: file
  #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
  path: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongologs.log"
  #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。
  logAppend: true
storage:
  dbPath: "/usr/local/mongodb/replica_sets/myrs_27017/data/db"
  journal:
    enabled: true
processManagement:
  #启用在后台运行mongos或mongod进程的守护进程模式。
  fork: true
  #指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID
  pidFilePath: "/usr/local/mongodb/replica_sets/myrs_27017/logs/mongod.pid"
net:
  #服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip
  #bindIpAll: true
  #服务实例绑定的IP
  bindIp: 0.0.0.0
  #bindIp
  #绑定的端口,默认是27017
  port: 27019
replication:
  #副本集的名称
  replSetName: myrs



启动命令

## 启动命令
mongod -f /usr/local/mongodb/replica_sets/myrs_27019/mongod.conf

4.启动服务

查看已启动的服务

ps -ef | grep mongod

5.初始化配置副本集和主节点

 # 启动mongodb
 mongo --port=27017
#初始化
rs.initiate()

tips:
(1)“ok”的值为1,说明创建成功。
(2)命令行提示符发生变化,变成了一个从节点角色,此时默认不能读写。稍等片刻,回车,变成主节点。

6.查看副本集的配置内容

# 查看副本集及配置内容
rs.conf()

tips:

(1) “_id” : “myrs” :副本集的配置数据存储的主键值,默认就是副本集的名字

(2) “members” :副本集成员数组,此时只有一个: “host” : “192.168.28.101:27017”,该成员不是仲裁节 点:“arbiterOnly” : false ,优先级(权重值): “priority” : 1,

(3) “settings” :副本集的参数配置。

7.查看副本集状态

#查看状态
rs.status()

tips:
(1) “set” : “myrs” :副本集的名字
(2) “myState” : 1:说明状态正常
(3) “members” :副本集成员数组,此时只有一个:“name” : “192.168.28.101:27017”,该成员的角色 是"stateStr" : “PRIMARY”,该节点是健康的:“health” : 1 。

8.添加副本从节点

# 下面命令中的 IP_add 为你物理机的IP
# 且  “”  之中的内容为当前节点的名字 也可根据自己的需求更换
rs.add("0.0.0.0:27018")

##查看状态
rs.status()

tips:
(1) “ok” : 1 :说明添加成功。可以查看副本集状态:rs.status()

(2) “name” : “192.168.28.100:27018”,是第二个节点的名字,其角色是 “stateStr” : “SECONDARY”

9.添加仲裁从节点

### 切记 Arb 不可省略 添加**仲裁节点**的命令为: 
### [副本集名].addArb(String name)
rs.addArb("192.168.28.101:27019")


## 查看状态
myrs:PRIMARY> rs.status()	

tips:
(1) “ok” : 1 :说明添加成功。可以查看副本集状态:rs.status()

(2) “name” : “192.168.28.100:27019” 是第二个节点的名字,其角色是 “stateStr” : “ARBITER”


十,使用可视化图形界面工具连接

Studio 3T

按如下配置

NoSQLBooster for MongoDB


版权声明:本文为SD_Tunsll原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。