mongoDB主从复制搭建详细过程

实验目的搭建mongoDB主从复制

主 192.168.0.4
从 192.168.0.7mysql

mongodb的安装

1: 下载mongodb www.mongodb.org 下载最新的stable版linux


查看本身服务器 适合哪一个种方式下载(wget 不能够的 能够用下面方式下载)sql

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.5.tgz

curl -O -L https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.5.tgz

2: 解压文件 不用编译,自己就是编译后的二进制可执行文件.mongodb

tar zxvf mongodb-linux-x86_64-rhel62-3.0.5.tgz #解压

mv mongodb-linux-x86_64-rhel62-3.0.5  /usr/local/mongodb #更改文件夹名字

cd   /usr/local/mongodb/bin

建立两个文件夹 存数据和日志数据库

mkdir -p /home/map/mongodb/mongo  /home/map/mongodb/mlog/

mongodb的bin下各工具的用途:json

mongod:数据库服务端,相似mysqld,每一个实例启动一个进程,能够fork为Daemon运行
mongo:客户端命令行工具,相似sqlplus/mysql,其实也是一个js解释器,支持js语法
mongodump/mongorestore:将数据导入为bson格式的文件/将bson文件恢复为数据库,相似xtracbackup
mongoexport/mongoimport:将collection导出为json/csv格式数据/将数据导入数据库,相似mysqldump/mysqlimport
bsondump:将bson格式的文件转储为json格式的数据
mongos:分片路由,若是使用了sharding功能,则应用程序链接的是mongos而不是mongod
mongofiles:GridFS管理工具 mongostat:实时监控工具vim

主从服务器配置

vim  mongod.conf

主配置以下安全

port=27018 #指定端口
fork=true #后台运行
dbpath=/home/map/mongodb/mongo #规定数据库的位置
logpath=/home/map/mongodb/mlog/mongodb.log #规定数据库的日志文件
master=true #设置主
# bind_ip=127.0.0.1,192.168.0.4 #容许的地址 为了安全
nohttpinterface=true #禁止http访问

执行下面步骤服务器

./mongod -f  ./mongod.conf #启动数据库
./mongo #进入数据库

上面都同理 从服务器配置curl

port=27018 #指定端口
fork=true #后台运行
dbpath=/home/map/mongodb/mongo #规定数据库的位置
logpath=/home/map/mongodb/mlog/mongodb.log #规定数据库的日志文件
slave=true #声明从
source=192.168.0.4:27018 #规定从属于哪一个ip  注意:ip是主服务器的  最好用内网ip
# bind_ip=127.0.0.1,192.168.0.4 #容许的地址 为了安全
nohttpinterface=true #禁止http访问

执行下面步骤

./mongod -f  ./mongod.conf #启动数据库
./mongo #进入数据库

测试 主执行

use word
db.wsd.save({name:”wangshudong”})
db.wsd.find()

在从服务器执行

rs.slaveOk();

show dbs;

local  0.078GB

word   0.078GB  #若是出现主的数据  说明同步成功

use word
db.wsd.find()  #查到数听说明同步成功
{ “_id” : ObjectId(“55cc43470278a3d7b1c6f2c0″), “name” : “wangshudong” }

图片描述


为了安全最后注意从禁止远程链接

iptables -I INPUT -s 192.168.0.4 -p tcp --dport 27018 -j ACCEPT#接受来自192.168.0.4内网的ip访问
iptables -A INPUT -i eth0 -p tcp --dport 27018 -j DROP #拒绝全部来自27018的端口
相关文章
相关标签/搜索