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