好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

详解mongoDB主从复制搭建详细过程

详解mongoDB主从复制搭建详细过程

实验目的搭建mongoDB主从复制

?

1

2

主 192.168.0.4

从 192.168.0.7

mongodb的安装

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

查看自己服务器 适合哪个种方式下载(wget 不可以的 可以用下面方式下载)

?

1

2

3

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: 解压文件 不用编译,本身就是编译后的二进制可执行文件.

?

1

2

3

4

5

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

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

?

1

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

mongodb的bin下各工具的用途:

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:实时监控工具

主从服务器配置

?

1

vim mongod.conf

主配置如下

?

1

2

3

4

5

6

7

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访问

执行下面步骤

?

1

2

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

./mongo #进入数据库

上面都同理 从服务器配置

?

1

2

3

4

5

6

7

8

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访问

执行下面步骤

?

1

2

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

./mongo #进入数据库

测试 主执行

?

1

2

3

use word

db.wsd.save({ name :]wangshudong]})

db.wsd.find()

在从服务器执行

?

1

2

3

4

5

6

7

8

9

10

11

rs.slaveOk();

 

show dbs;

 

local 0.078GB

 

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

 

use word

db.wsd. find () #查到数据说明同步成功

{ [_id] : ObjectId([55cc43470278a3d7b1c6f2c0″), [name] : [wangshudong] }

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

?

1

2

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的端口

如有疑问,请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:https://my.oschina.net/jiangshanlinux/blog/1507137

查看更多关于详解mongoDB主从复制搭建详细过程的详细内容...

  阅读:26次