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安装及副本集搭建的更多相关文章

  1. mongodb 4.0副本集搭建

    近期有同学问mongodb副本集难不难部署,我的回答是不难,很快,几分钟搞定,比mysql MHA简单的不止一点半点. 那么到底如何部署呢?请看下文. 1.  准备工作 1.1 下载软件 选择版本并下 ...

  2. Mongodb 安装和副本集集群搭建

    通用步骤,适用于所有你需要用的软件. 总结为5大步骤: 找到官网-->下载包-->解压-->修改配置-->启动 不懂的,首选官网api,次选百度 1.安装mongodb mon ...

  3. MongoDB 安装及副本集简单操作

    安装MongoDB 3.4 # 查看现有yum源 [root@localhost ~]# ll /etc/yum.repos.d/ total 36 -rw-r--r--. 1 root root 1 ...

  4. mongodb中的副本集搭建实践

    准备运行1个主节点,2个从节点,从节点中其中是一个是仲裁节点(Arb). --oplogSize --oplogSize --oplogSize 其中application是副本集的名称,节点必须相同 ...

  5. Mongodb副本集搭建经验

    一.环境配置经验 1.一般安装的副本集的时候,主实例可以有数据库和用户:从实例不能.仲裁机不能有任何数据库包括用户 2.搭建副本集的时候Host使用外网IP,否则使用Mongodb VUE 1.6.9 ...

  6. mongodb副本集搭建过程中的问题和解决技巧

    在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天 ...

  7. windows版本 MongoDB副本集搭建及开启身份验证

    ------------恢复内容开始------------ ------------恢复内容开始------------ MongoDB副本集搭建 我搭建的是一个主节点,两个副节点 构建目录结构如下 ...

  8. MongoDB副本集搭建及备份恢复

    一.MongoDB副本集(repl set)介绍 早起版本使用master-slave,一主一从和MySQL类似,但slave在此架构中为只读,当主库宕机后,从库不能自动切换为主: 目前已经淘汰了ma ...

  9. mongo副本集搭建及服务器复用方案

    比较常见的mongodb副本集搭建是有:常规节点.数据副本.仲裁节点组成,也就是需要三台服务器组建.常规节点即数据的主存储节点,数据副本是主存储节点的从属节点,它定期去主节点获取更新日志来更新自己.仲 ...

随机推荐

  1. CH7-WEB开发(集成在一起)

  2. DiscuzX的目录权限设置1

    经常有朋友遇到Discuz目录权限设置出错的问题,网上千奇百怪的教程非常多,所谓的终极安全的教程更是满天飞,各种所谓的安全加强软件也随处可见,可实际过程中发现,老手用不上,新手则只会因为这些东西徒增麻 ...

  3. php学习八:封装

    一:在php中,用class关键字来创建一个类,即进行封装:在类里面有成员属性和方法行为组成: 1.成员属性:用关键字var来声明,可以给初始值也可以不给;现在var废弃,用public来声明,pub ...

  4. Sql中将字符串按分割符拆分

    创建函数 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO Create FUNCTION [dbo].[F_Split] ( @SplitString ...

  5. MQTT协议笔记之mqtt.io项目Websocket协议支持

    前言 MQTT协议专注于网络.资源受限环境,建立之初不曾考虑WEB环境,倒也正常.虽然如此,但不代表它不适合HTML5环境. HTML5 Websocket是建立在TCP基础上的双通道通信,和TCP通 ...

  6. JavaIO再回顾

    File类 JavaIO访问文件名和文件检测相关操作 分隔符最好是使用File类提供的File.separator,使程序更加的健壮. File类提供的方法基本上是见名知意,例如getName()就是 ...

  7. 删除编辑文件警告Swap file “…” already exists!

    Linux下多个用户同时编辑一个文件,或编辑时非正常关闭,再下次编辑打开文件时均为显示如下警告信息: Swap file "test.xml.swp" already exists ...

  8. 使用HttpClient以文件流的方式上传文件(非multipartFormData方式)

    @Test public void testAdd() throws IOException { HttpPost post = new HttpPost("http://localhost ...

  9. 【BZOJ4196】[Noi2015]软件包管理器 树链剖分

    [Noi2015]软件包管理器 树链剖分 Description Linux用户和OSX用户一定对软件包管理器不会陌生.通过软件包管理器,你可以通过一行命令安装某一个软件包,然后软件包管理器会帮助你从 ...

  10. iOS 如何在视图中添加一个用xib创建的view

    NSArray *nib = [[NSBundle mainBundle]loadNibNamed:[pages objectAtIndex:] owner:self options:nil]; // ...