mongoDB中如何搭建主从复制,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
详解mongoDB主从复制搭建详细过程
主 192.168.0.4 从 192.168.0.7
mongodb的安装
1: 下载mongodb www.mongodb.org 下载最新的stable版
查看自己服务器 适合哪个种方式下载(wget 不可以的 可以用下面方式下载)
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: 解压文件 不用编译,本身就是编译后的二进制可执行文件.
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下各工具的用途:
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 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 #进入数据库
上面都同理 从服务器配置
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的端口
看完上述内容,你们掌握mongoDB中如何搭建主从复制的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。