mongodb安装及副本集搭建
mongodb下载地址:https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.7.tgz/download
实验环境:172.16.10.194 centos6.5
一、mongodb搭建与管理
[root@mongodb ~]# cd soft/
[root@mongodb soft]# ls
mongodb-linux-x86_64-rhel62-3.2.7.tgz
[root@mongodb soft]# tar xf mongodb-linux-x86_64-rhel62-3.2.7.tgz -C /usr/src/
[root@mongodb soft]# mv /usr/src/mongodb-linux-x86_64-rhel62-3.2.7/ /usr/local/mongodb
[root@mongodb ~]# mkdir -p /data/mongodb1
[root@mongodb ~]# mkdir -p /data/logs/mongodb
[root@mongodb ~]# touch /data/logs/mongodb/mongodb1.log
[root@mongodb ~]# cd /usr/local/mongodb/
[root@mongodb mongodb]# ls
bin GNU-AGPL-3.0 MPL-2 README THIRD-PARTY-NOTICES
[root@mongodb mongodb]# mkdir conf
[root@mongodb mongodb]# vim conf/mongodb1.conf
port=27017
dbpath=/data/mongodb1 #数据库文件
logpath=/data/logs/mongodb/mongodb1.log #日志文件
logappend=true #以追写方式写入日志
fork=true #以守护进程方式运行
maxConns=5000 #系统文件打开数要大于这个数值
storageEngine=mmapv1 #存储引擎
[root@mongodb mongodb]# pwd
/usr/local/mongodb
[root@mongodb mongodb]# ls bin/
bsondump mongodump mongoimport mongorestore mongotop
mongo mongoexport mongooplog mongos
mongod mongofiles mongoperf mongostat
[root@mongodb mongodb]# /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf //启动mongodb数据库 -f 指定配置文件
about to fork child process, waiting until server is ready for connections.
forked process: 1312
child process started successfully, parent exiting
[root@mongodb mongodb]# netstat -anpt | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1312/mongod
[root@mongodb mongodb]# ps aux | grep mongodb | grep -v "grep"
root 1268 0.0 0.1 100940 636 pts/1 S+ 15:55 0:00 tail -f mongodb1.log
root 1312 0.8 10.5 532996 51344 ? Sl 16:12 0:04 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
设置开机自启动
[root@mongodb mongodb]# vim /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
rm -rf /data/mongodb1/mongod.lock
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
连接数据库
[root@mongodb mongodb]# /usr/local/mongodb/bin/mongo
MongoDB shell version: 3.2.7
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
Server has startup warnings:
2016-12-19T16:12:57.577+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2016-12-19T16:12:57.577+0800 I CONTROL [initandlisten]
> show dbs
local 0.078GB
> exit
bye
去除报错
[root@mongodb mongodb]# echo never > /sys/kernel/mm/transparent_hugepage/enabled
[root@mongodb mongodb]# echo never > /sys/kernel/mm/transparent_hugepage/defrag
[root@mongodb mongodb]# cd
[root@mongodb ~]# vim .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
alias mongo=/usr/local/mongodb/bin/mongo
[root@mongodb ~]# . .bash_profile
关闭服务的三种方法
方法一:
[root@mongodb ~]# mongo
MongoDB shell version: 3.2.7
connecting to: test
Server has startup warnings:
2016-12-19T16:12:57.577+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2016-12-19T16:12:57.577+0800 I CONTROL [initandlisten]
> use admin
switched to db admin
> db.shutdownServer();
server should be down...
2016-12-19T16:36:36.903+0800 I NETWORK [thread1] trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed
2016-12-19T16:36:36.904+0800 W NETWORK [thread1] Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2016-12-19T16:36:36.904+0800 I NETWORK [thread1] reconnect 127.0.0.1:27017 (127.0.0.1) failed failed
> exit
bye
[root@mongodb ~]# netstat -anpt | grep mongod
[root@mongodb ~]#
方法二:
[root@mongodb ~]# /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1403
child process started successfully, parent exiting
[root@mongodb ~]# netstat -anpt | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1403/mongod
[root@mongodb ~]# /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf --shutdown
killing process with pid: 1403
[root@mongodb ~]# netstat -anpt | grep mongod
[root@mongodb ~]#
方法三:
[root@mongodb ~]# /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1424
[root@mongodb ~]# ps aux | grep mongod | grep -v "grep"
root 1268 0.0 0.1 100940 620 pts/1 S+ 15:55 0:00 tail -f mongodb1.log
root 1424 8.4 10.4 531972 50948 ? Sl 16:43 0:08 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
[root@mongodb ~]# kill -15 1424
[root@mongodb ~]# netstat -anpt | grep mongod
[root@mongodb ~]#
开启两个实例:
[root@mongodb ~]# cd /usr/local/mongodb/conf/
[root@mongodb conf]# ls
mongodb1.conf
[root@mongodb conf]# cp mongodb{1,2}.conf
[root@mongodb conf]# ls
mongodb1.conf mongodb2.conf
[root@mongodb conf]# vim mongodb2.conf
port=27018
dbpath=/data/mongodb2
logpath=/data/logs/mongodb/mongodb2.log
logappend=true
fork=true
maxConns=5000
storageEngine=mmapv1
[root@mongodb conf]# mkdir /data/mongodb2/
[root@mongodb conf]# touch /data/logs/mongodb/mongodb2.log
[root@mongodb conf]# cd /etc/init.d/
[root@mongodb init.d]# vim mongodb
#!/bin/bash
#mongodb 启停脚本
INSTANCE=$1
ACTION=$2
case "$ACTION" in
start)
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/$INSTANCE.conf
;;
stop)
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/$INSTANCE.conf --shutdown
;;
restart)
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/$INSTANCE.conf --shutdown
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/$INSTANCE.conf
;;
esac
[root@mongodb init.d]# chmod +x mongodb
[root@mongodb init.d]# netstat -anpt | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1545/mongod
[root@mongodb init.d]# /etc/init.d/mongodb mongodb1 stop
killing process with pid: 1545
[root@mongodb init.d]# netstat -anpt | grep mongod
[root@mongodb init.d]#
[root@mongodb init.d]# /etc/init.d/mongodb mongodb1 start
about to fork child process, waiting until server is ready for connections.
forked process: 1571
child process started successfully, parent exiting
[root@mongodb init.d]# /etc/init.d/mongodb mongodb2 start
about to fork child process, waiting until server is ready for connections.
forked process: 1587
child process started successfully, parent exiting
[root@mongodb init.d]# /etc/init.d/mongodb mongodb2 stop
killing process with pid: 1587
[root@mongodb init.d]# /etc/init.d/mongodb mongodb2 restart
There doesn't seem to be a server running with dbpath: /data/mongodb2
about to fork child process, waiting until server is ready for connections.
forked process: 1607
child process started successfully, parent exiting
[root@mongodb init.d]# netstat -anpt | grep mongod | grep -v "grep"
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1571/mongod
tcp 0 0 0.0.0.0:27018 0.0.0.0:* LISTEN 1607/mongod
二、副本集搭建
[root@localhost ~]# cd /usr/local/mongodb/conf/
[root@localhost conf]# ls
mongodb1.conf mongodb2.conf
[root@localhost conf]# vim mongodb1.conf
port=27017
dbpath=/data/mongodb1
logpath=/data/logs/mongodb/mongodb1.log
logappend=true
fork=true
maxConns=1000
storageEngine=mmapv1
replSet=repl //名字随意取
[root@localhost conf]# vim mongodb2.conf
port=27018
dbpath=/data/mongodb2
logpath=/data/logs/mongodb/mongodb2.log
logappend=true
fork=true
maxConns=1000
storageEngine=mmapv1
replSet=repl
[root@localhost conf]# vim mongodb3.conf
port=27019
dbpath=/data/mongodb3
logpath=/data/logs/mongodb/mongodb3.log
logappend=true
fork=true
maxConns=1000
storageEngine=mmapv1
replSet=repl
[root@localhost conf]# vim mongodb4.conf
port=27020
dbpath=/data/mongodb4
logpath=/data/logs/mongodb/mongodb4.log
logappend=true
fork=true
maxConns=1000
storageEngine=mmapv1
replSet=repl
[root@localhost conf]# mkdir /data/mongodb{3,4}
[root@localhost conf]# ls /data/
logs mongodb1 mongodb2 mongodb3 mongodb4
[root@localhost conf]# touch /data/logs/mongodb/mongodb{3,4}.log
[root@localhost conf]# ls /data/logs/mongodb/
mongodb1.log mongodb2.log mongodb3.log mongodb4.log
[root@localhost conf]# /etc/init.d/mongodb mongodb1 stop
killing process with pid: 1019
[root@localhost conf]# /etc/init.d/mongodb mongodb1 start
about to fork child process, waiting until server is ready for connections.
forked process: 1182
child process started successfully, parent exiting
[root@localhost conf]# /etc/init.d/mongodb mongodb2 start
about to fork child process, waiting until server is ready for connections.
forked process: 1203
child process started successfully, parent exiting
[root@localhost conf]# /etc/init.d/mongodb mongodb3 start
about to fork child process, waiting until server is ready for connections.
forked process: 1224
child process started successfully, parent exiting
[root@localhost conf]# /etc/init.d/mongodb mongodb4 start
about to fork child process, waiting until server is ready for connections.
forked process: 1245
child process started successfully, parent exiting
[root@localhost conf]# netstat -anpt | grep mongod
tcp 0 0 0.0.0.0:27019 0.0.0.0:* LISTEN 1224/mongod
tcp 0 0 0.0.0.0:27020 0.0.0.0:* LISTEN 1245/mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1182/mongod
tcp 0 0 0.0.0.0:27018 0.0.0.0:* LISTEN 1203/mongod
[root@localhost conf]# mongo
MongoDB shell version: 3.2.7
connecting to: test
Server has startup warnings:
2016-12-22T12:37:45.344+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2016-12-22T12:37:45.344+0800 I CONTROL [initandlisten]
> show dbs
2016-12-22T12:39:30.701+0800 E QUERY [thread1] Error: listDatabases failed:{ "ok" : 0, "errmsg" : "not master and slaveOk=false", "code" : 13435 } :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
Mongo.prototype.getDBs@src/mongo/shell/mongo.js:62:1
shellHelper.show@src/mongo/shell/utils.js:760:19
shellHelper@src/mongo/shell/utils.js:650:15
@(shellhelp2):1:1
> rs.status()
{
"info" : "run rs.initiate(...) if not yet done for the set",
"ok" : 0,
"errmsg" : "no replset config has been received",
"code" : 94
}
> cfg={"_id":"repl","members":[{"_id":0,"host":"172.16.10.194:27017"},{"_id":1,"host":"172.16.10.194:27018"},{"_id":2,"host":"172.16.10.194:27019"}]}
{
"_id" : "repl",
"members" : [
{
"_id" : 0,
"host" : "172.16.16.194:27017"
},
{
"_id" : 1,
"host" : "172.16.10.194:27018"
},
{
"_id" : 2,
"host" : "172.16.10.194:27019"
}
]
}
> rs.initiate(cfg)
{"ok" : 1}
repl:PRIMARY> rs.status()
{
"set" : "repl",
"date" : ISODate("2017-01-19T04:54:52.865Z"),
"myState" : 1,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "172.16.10.194:27017",
"health" : , //1为健康,0为宕机
"state" : , //1为主,2为从
"stateStr" : "PRIMARY",
"uptime" : 1027,
"optime" : {
"ts" : Timestamp(1482382341, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:52:21Z"),
"electionTime" : Timestamp(1482382336, 1),
"electionDate" : ISODate("2017-01-19T04:52:16Z"),
"configVersion" : 1,
"self" : true
},
{
"_id" : 1,
"name" : "172.16.10.194:27018",
"health" : ,
"state" : ,
"stateStr" : "SECONDARY",
"uptime" : 170,
"optime" : {
"ts" : Timestamp(1482382341, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:52:21Z"),
"lastHeartbeat" : ISODate("2017-01-19T04:54:52.500Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T04:54:49.084Z"),
"pingMs" : NumberLong(0),
"configVersion" : 1
},
{
"_id" : 2,
"name" : "172.16.10.194:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 170,
"optime" : {
"ts" : Timestamp(1482382341, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:52:21Z"),
"lastHeartbeat" : ISODate("2017-01-19T04:54:52.500Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T04:54:49.060Z"),
"pingMs" : NumberLong(0),
"configVersion" : 1
}
],
"ok" : 1
}
repl:PRIMARY> rs.add("172.16.10.194:27020") //增加一个节点
{ "ok" : 1 }
repl:PRIMARY> rs.status()
{
"set" : "repl",
"date" : ISODate("2017-01-19T04:58:08.541Z"),
"myState" : 1,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "172.16.10.194:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 1223,
"optime" : {
"ts" : Timestamp(1482382649, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:57:29Z"),
"electionTime" : Timestamp(1482382336, 1),
"electionDate" : ISODate("2017-01-19T04:52:16Z"),
"configVersion" : 2,
"self" : true
},
{
"_id" : 1,
"name" : "192.168.16.11:27018",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 366,
"optime" : {
"ts" : Timestamp(1482382649, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:57:29Z"),
"lastHeartbeat" : ISODate("2017-01-19T04:58:07.434Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T04:58:08.501Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.16.10.194:27017",
"configVersion" : 2
},
{
"_id" : 2,
"name" : "172.16.10.194:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 366,
"optime" : {
"ts" : Timestamp(1482382649, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:57:29Z"),
"lastHeartbeat" : ISODate("2017-01-19T04:58:07.433Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T04:58:08.501Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.16.10.194:27017",
"configVersion" : 2
},
{
"_id" : 3,
"name" : "172.16.10.194:27020",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 39,
"optime" : {
"ts" : Timestamp(1482382649, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2017-01-19T04:57:29Z"),
"lastHeartbeat" : ISODate("2017-01-19T04:58:07.412Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T04:58:04.993Z"),
"pingMs" : NumberLong(0),
"configVersion" : 2
}
],
"ok" : 1
}
repl:PRIMARY> rs.remove("172.16.10.194:27020") //删除节点
{ "ok" : 1 }
[root@localhost ~]# ps aux | grep mongodb
root 941 1.3 38.1 10880192 185740 ? Sl 04:28 0:08 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
root 1140 5.1 10.3 6676660 50236 ? Sl 04:37 0:01 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb2.conf
root 1205 3.5 35.3 6686928 172072 ? Sl 04:38 0:00 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb3.conf
root 1285 0.0 0.1 103248 872 pts/0 S+ 04:38 0:00 grep mongodb
[root@localhost ~]# kill -2 941 //模拟故障,kill -2 杀掉这个信号
[root@localhost ~]# mongo --port 27018 //登陆mongodb2.conf的配置文件查看
MongoDB shell version: 3.2.7
connecting to: 127.0.0.1:27018/test
Server has startup warnings:
2017-01-19T04:37:55.697+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-01-19T04:37:55.697+0800 I CONTROL [initandlisten]
repl:PRIMARY> rs.status()
{
"set" : "repl",
"date" : ISODate("2017-01-19T20:49:04.626Z"),
"myState" : 1,
"term" : NumberLong(3),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "172.16.10.194:27017",
"health" : 0, //发现之前的主已经为0,代表宕机
"state" : 8,
"stateStr" : "(not reachable/healthy)",
"uptime" : 0,
"optime" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDate" : ISODate("1970-01-01T00:00:00Z"),
"lastHeartbeat" : ISODate("2017-01-19T20:49:03.743Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T20:47:52.617Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "Connection refused",
"configVersion" : -1
},
{
"_id" : 1,
"name" : "172.16.10.194:27018",
"health" : 1, //之前的从mongo会自动变成主
"state" : 1, //1代表主
"stateStr" : "PRIMARY",
"uptime" : 670,
"optime" : {
"ts" : Timestamp(1482439685, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2017-01-19T20:48:05Z"),
"infoMessage" : "could not find member to sync from",
"electionTime" : Timestamp(1482439683, 1),
"electionDate" : ISODate("2017-01-19T20:48:03Z"),
"configVersion" : 3,
"self" : true
},
{
"_id" : 2,
"name" : "172.16.10.194:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 649,
"optime" : {
"ts" : Timestamp(1482439685, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2017-01-19T20:48:05Z"),
"lastHeartbeat" : ISODate("2017-01-19T20:49:03.643Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T20:49:03.858Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.16.10.194:27018",
"configVersion" : 3
}
],
"ok" : 1
}
repl:PRIMARY>
[root@localhost ~]# /etc/init.d/mongodb mongodb1 start //在另一个通道重新启动mongodb1
about to fork child process, waiting until server is ready for connections.
forked process: 1317
child process started successfully, parent exiting
repl:PRIMARY> rs.status() //再次查看状态,发现mongodb1已启动,但没有主动夺回主
{
"set" : "repl",
"date" : ISODate("2017-01-19T20:52:55.850Z"),
"myState" : 1,
"term" : NumberLong(3),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "2017-01-19:27017",
"health" : 1,
"state" : 2, //属于从
"stateStr" : "SECONDARY",
"uptime" : 5,
"optime" : {
"ts" : Timestamp(1482439093, 1),
"t" : NumberLong(2)
},
"optimeDate" : ISODate("2017-01-19T20:38:13Z"),
"lastHeartbeat" : ISODate("2017-01-19T20:52:54.025Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T20:52:53.660Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.16.10.194:27019",
"configVersion" : 3
},
{
"_id" : 1,
"name" : "172.16.10.194:27018",
"health" : 1,
"state" : 1, //主
"stateStr" : "PRIMARY",
"uptime" : 901,
"optime" : {
"ts" : Timestamp(1482439685, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2017-01-19T20:48:05Z"),
"electionTime" : Timestamp(1482439683, 1),
"electionDate" : ISODate("2017-01-19T20:48:03Z"),
"configVersion" : 3,
"self" : true
},
{
"_id" : 2,
"name" : "172.16.10.194:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 881,
"optime" : {
"ts" : Timestamp(1482439685, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2017-01-19T20:48:05Z"),
"lastHeartbeat" : ISODate("2017-01-19T20:52:53.850Z"),
"lastHeartbeatRecv" : ISODate("2017-01-19T20:52:54.071Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.16.10.194:27018",
"configVersion" : 3
}
],
"ok" : 1
}
mongodb安装及副本集搭建的更多相关文章
- mongodb 4.0副本集搭建
近期有同学问mongodb副本集难不难部署,我的回答是不难,很快,几分钟搞定,比mysql MHA简单的不止一点半点. 那么到底如何部署呢?请看下文. 1. 准备工作 1.1 下载软件 选择版本并下 ...
- Mongodb 安装和副本集集群搭建
通用步骤,适用于所有你需要用的软件. 总结为5大步骤: 找到官网-->下载包-->解压-->修改配置-->启动 不懂的,首选官网api,次选百度 1.安装mongodb mon ...
- MongoDB 安装及副本集简单操作
安装MongoDB 3.4 # 查看现有yum源 [root@localhost ~]# ll /etc/yum.repos.d/ total 36 -rw-r--r--. 1 root root 1 ...
- mongodb中的副本集搭建实践
准备运行1个主节点,2个从节点,从节点中其中是一个是仲裁节点(Arb). --oplogSize --oplogSize --oplogSize 其中application是副本集的名称,节点必须相同 ...
- Mongodb副本集搭建经验
一.环境配置经验 1.一般安装的副本集的时候,主实例可以有数据库和用户:从实例不能.仲裁机不能有任何数据库包括用户 2.搭建副本集的时候Host使用外网IP,否则使用Mongodb VUE 1.6.9 ...
- mongodb副本集搭建过程中的问题和解决技巧
在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天 ...
- windows版本 MongoDB副本集搭建及开启身份验证
------------恢复内容开始------------ ------------恢复内容开始------------ MongoDB副本集搭建 我搭建的是一个主节点,两个副节点 构建目录结构如下 ...
- MongoDB副本集搭建及备份恢复
一.MongoDB副本集(repl set)介绍 早起版本使用master-slave,一主一从和MySQL类似,但slave在此架构中为只读,当主库宕机后,从库不能自动切换为主: 目前已经淘汰了ma ...
- mongo副本集搭建及服务器复用方案
比较常见的mongodb副本集搭建是有:常规节点.数据副本.仲裁节点组成,也就是需要三台服务器组建.常规节点即数据的主存储节点,数据副本是主存储节点的从属节点,它定期去主节点获取更新日志来更新自己.仲 ...
随机推荐
- swift - 将表格滚动条移动到底部
类似聊天那种效果,最新出现消息后,会自动滚动到表的底部,具体代码实现如下: 1,使用scrollToRow方法: let mySec = 1//最后一个分组的索引(0开始,如果没有分组则为0 let ...
- GIS-ArcGIS 数据库备份还原
Create directory sdebak as 'E:\10_DataFile'; alter system set deferred_segment_creation=false; ALTER ...
- Python Scrapy 自动爬虫注意细节(1)
一.首次爬取模拟浏览器 在爬虫文件中,添加start_request函数.如: def start_requests(self): ua = {"User-Agent": 'Moz ...
- mybatis 返回值类型是Map
<select id="selectByMemberKey" resultType="java.util.HashMap"> SELECT memb ...
- docker nginx mysql
docker run -p 9000:9000 --name myphp -v /docker/www/:/var/www/html/ -v /docker/php/php.ini:/usr/loca ...
- uiimageview 异步加载图片
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){ NSURL *url = ...
- java+socket 简易聊天工具
1.服务器端程序 package com.test3; import java.io.*; import java.net.*; import java.awt.*; import java.awt. ...
- JS-完美运动框架(封装)
function getStyle(obj, name) { if(obj.currentStyle) { return obj.currentStyle[name]; } else { return ...
- 域名绑定和域名解析(DNS)有什么不同?(转载)
域名解析在DNS处设置,DNS服务器将你的域名指向你的存储网页的服务器. 域名绑定在服务器中设置,存储你网页文件的服务器绑定了你的域名才能把浏览者引导到这个域名指定的物理位置来访问. 比如,你进一个高 ...
- Java初学者笔记一:元类、获取类型、枚举
零.绪论: 2018年新年伊始,学习Java的冲动越来越强烈,毕竟以后无论是做安全开发还是安全研究都必不可少的掌握这门语言,所以在不断完善Python作为脚本语言的主语言的情况下觉得学习Java作为高 ...