Centos6.5搭建MongoDB数据库主从架构详细实验步骤

Linux安全运维 (4.3万) 2018-05-29 09:48:50

这篇文章主要介绍了详解mongoDB主从复制搭建详细过程的相关资料,这里对实现主从复制进行了详细的步骤介绍,需要的朋友可以参考下。

实验目的搭建mongoDB主从复制

 
主:192.168.2.71
从:192.168.2.72

一、下载MongoDB

前往mongodb官网下载页面:https://www.mongodb.org/downloads下载相应的版本,比如目前的Linux x64位最新版:mongodb-linux-x86_64-2.6.4.tgz
不过有点坑爹是,下载链接明明是tgz格式,结果下载后变成了gz格式: Centos6.5搭建MongoDB数据库主从架构详细实验步骤_https://www.tiejiang.org_Linux安全运维_第1张
先下载看看好了。

二、MongoDB主安装

 
[root@tiejiangSRC1 ~]# cd /usr/local/src/
[root@tiejiangSRC1 src]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.9.tgz
[root@tiejiangSRC1 src]# gzip -d mongodb-linux-x86_64-rhel62-3.2.9.tgz
[root@tiejiangSRC1 src]# tar xvf mongodb-linux-x86_64-rhel62-3.2.9.tar 
[root@tiejiangSRC1 src]# mv mongodb-linux-x86_64-rhel62-3.2.9 /usr/local/mongodb		将解压后的文件夹移动重命名至/usr/local/mongodb
[root@tiejiangSRC1 src]# cd /usr/local/mongodb/bin/

三、MongoDB从安装

 
[root@tiejiangSRC2 ~]# cd /usr/local/src/
[root@tiejiangSRC2 src]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.9.tgz
[root@tiejiangSRC2 src]# gzip -d mongodb-linux-x86_64-rhel62-3.2.9.tgz
[root@tiejiangSRC2 src]# tar xvf mongodb-linux-x86_64-rhel62-3.2.9.tar 
[root@tiejiangSRC2 src]# mv mongodb-linux-x86_64-rhel62-3.2.9 /usr/local/mongodb		将解压后的文件夹移动&重命名至/usr/local/mongodb
[root@tiejiangSRC2 src]# cd /usr/local/mongodb/bin/

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

五、主服务器配置

 
创建两个文件夹 存数据和日志
[root@tiejiangSRC1 ~]# mkdir -p /home/tiejiang/mongodb/mongo /home/tiejiang/mongodb/mlog/

[root@tiejiangSRC1 ~]# cd /usr/local/mongodb/bin/
[root@tiejiangSRC1 bin]# vim mongodb_master.conf
    #指定端口
    port=27017 
    #后台运行
    fork=true
    #规定数据库的位置
    dbpath=/home/tiejiang/mongodb/mongo 
    #规定数据库的日志文件
    logpath=/home/tiejiang/mongodb/mlog/mongodb.log 
    #标志这个机器是MongoDB的主
    master=true
    #允许的地址 为了安全,这里为了实验,先注释掉
    # bind_ip=127.0.0.1,192.168.0.4
    #禁止http访问
    nohttpinterface=true
    
通过刚刚创建的配置文件启动MongoDB数据库
[root@tiejiangSRC1 bin]# ./mongod -f ./mongodb_master.conf 
    about to fork child process, waiting until server is ready for connections.
    forked process: 25742
    child process started successfully, parent exiting

六、从服务器配置

 
创建两个文件夹 存数据和日志
[root@tiejiangSRC2 ~]# mkdir -p /home/tiejiang/mongodb/mongo /home/tiejiang/mongodb/mlog/

[root@tiejiangSRC2 ~]# cd /usr/local/mongodb/bin/
[root@tiejiangSRC2 bin]# vim mongodb_slave.conf
    #指定端口
    port=27017
    #后台运行
    fork=true
    #规定数据库的位置
    dbpath=/home/tiejiang/mongodb/mongo 
    #规定数据库的日志文件
    logpath=/home/tiejiang/mongodb/mlog/mongodb.log 
    #声明从
    slave=true
    #规定从属于哪个ip 注意:ip是主服务器的 最好用内网ip
    source=192.168.2.71:27017
    #允许的地址 为了安全
    # bind_ip=127.0.0.1,192.168.2.72
    #禁止http访问
    nohttpinterface=true
    
通过刚刚创建的配置文件启动MongoDB数据库
[root@tiejiangSRC2 bin]# ./mongod -f ./mongodb_slave.conf 
    about to fork child process, waiting until server is ready for connections.
    forked process: 25840
    child process started successfully, parent exiting

七、MongoDB主从测试:主创建表

 
登录进入数据库
[root@tiejiangSRC1 ~]# cd /usr/local/mongodb/bin/
[root@tiejiangSRC1 bin]# ./mongo
    > use word
        switched to db word
    >  db.Tiej.save({name:"tiejiang.org"})
        WriteResult({ "nInserted" : 1 })
    >  db.Tiej.find()
        { "_id" : ObjectId("58fee36a9b5b51ee756194d5"), "name" : "tiejiang.org" }

八、MongoDB主从测试:从同步表

 
登录进入数据库
[root@tiejiangSRC2 ~]# cd /usr/local/mongodb/bin/
[root@tiejiangSRC2 bin]# ./mongo
    >  rs.slaveOk();
    >  show dbs;
        local  0.000GB
        word   0.000GB
    >  use word
        switched to db word
    >  db.Tiej.find()
        { "_id" : ObjectId("58fee36a9b5b51ee756194d5"), "name" : "tiejiang.org" }

九、实验截图

Centos6.5搭建MongoDB数据库主从架构详细实验步骤_https://www.tiejiang.org_Linux安全运维_第2张

THE END

Leave a Reply