Difference between revisions of "DB/MongoDB"
< DB
Jump to navigation
Jump to search
(Created page with "= Mongo client = == mongocli == <code>mongocli</code> is a client for connecting to MongoDB versions 5 and above. <source lang=bash> kubectl -n mongo run --image=ubuntu:20.04...") |
|||
Line 1: | Line 1: | ||
= Mongo client = | = Mongo client = | ||
== mongocli == | == <code>mongocli</code> == | ||
<code>mongocli</code> is a client for connecting to MongoDB versions 5 and above. | <code>mongocli</code> is a client for connecting to MongoDB versions 5 and above. | ||
<source lang=bash> | <source lang=bash> | ||
Line 14: | Line 14: | ||
apt-get install -y mongocli | apt-get install -y mongocli | ||
</source> | </source> | ||
= Operational mongo queries = | |||
<source lang=mongo> | |||
rs.conf() # show current replica set config | |||
rs.status() # show current replica set status | |||
printjson(db.serverStatus()) # server status | |||
</source> | |||
= Failover PRIMARY = | |||
<source lang=bash> | |||
# Print the RS (replication set) configuration | |||
k -n mongo exec mongodb-0 -- mongo -u root -p $PASSWORD --eval "rs.conf()" | |||
</source> | |||
<syntaxhighlight lang="json"> | |||
rs0:SECONDARY> rs.conf() | |||
{ | |||
"_id" : "rs0", | |||
"version" : 201111, | |||
"protocolVersion" : NumberLong(1), | |||
"writeConcernMajorityJournalDefault" : true, | |||
"members" : [ | |||
{ | |||
"_id" : 0, | |||
"host" : "mongodb-0.mongodb-headless.mongo:27017", | |||
"arbiterOnly" : false, | |||
"buildIndexes" : true, | |||
"hidden" : false, | |||
"priority" : 0.5, | |||
"tags" : { | |||
}, | |||
"slaveDelay" : NumberLong(0), | |||
"votes" : 1 | |||
}, | |||
{ | |||
"_id" : 1, | |||
"host" : "mongodb-arbiter-0.mongodb-arbiter-headless.mongo:27017", | |||
"arbiterOnly" : true, | |||
"buildIndexes" : true, | |||
"hidden" : false, | |||
"priority" : 0, | |||
"tags" : { | |||
}, | |||
"slaveDelay" : NumberLong(0), | |||
"votes" : 1 | |||
}, | |||
{ | |||
"_id" : 2, | |||
"host" : "mongodb-1.mongodb-headless.mongo:27017", | |||
"arbiterOnly" : false, | |||
"buildIndexes" : true, | |||
"hidden" : false, | |||
"priority" : 0.5, | |||
"tags" : { | |||
}, | |||
"slaveDelay" : NumberLong(0), | |||
"votes" : 1 | |||
}, | |||
{ | |||
"_id" : 3, | |||
"host" : "mongodb-2.mongodb-headless.mongo:27017", | |||
"arbiterOnly" : false, | |||
"buildIndexes" : true, | |||
"hidden" : false, | |||
"priority" : 0.5, | |||
"tags" : { | |||
}, | |||
"slaveDelay" : NumberLong(0), | |||
"votes" : 1 | |||
} | |||
], | |||
"settings" : { | |||
"chainingAllowed" : true, | |||
"heartbeatIntervalMillis" : 2000, | |||
"heartbeatTimeoutSecs" : 10, | |||
"electionTimeoutMillis" : 10000, | |||
"catchUpTimeoutMillis" : -1, | |||
"catchUpTakeoverDelayMillis" : 30000, | |||
"getLastErrorModes" : { | |||
}, | |||
"getLastErrorDefaults" : { | |||
"w" : 1, | |||
"wtimeout" : 0 | |||
}, | |||
"replicaSetId" : ObjectId("111111111122222222223333") | |||
} | |||
} | |||
</syntaxhighlight> |
Revision as of 18:03, 11 March 2022
Mongo client
mongocli
mongocli
is a client for connecting to MongoDB versions 5 and above.
kubectl -n mongo run --image=ubuntu:20.04 ubuntu-1 --rm -it -- bash # Install generic tools DEBIAN_FRONTEND=noninteractive apt install -yq dnsutils iproute2 iputils-ping iputils-tracepath net-tools netcat procps curl wget # Install mongo cli apt-get install gnupg -yy wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | apt-key add - touch /etc/apt/sources.list.d/mongodb-org-5.0.list echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" > /etc/apt/sources.list.d/mongodb-org-5.0.list apt-get update apt-get install -y mongocli
Operational mongo queries
rs.conf() # show current replica set config rs.status() # show current replica set status printjson(db.serverStatus()) # server status
Failover PRIMARY
# Print the RS (replication set) configuration k -n mongo exec mongodb-0 -- mongo -u root -p $PASSWORD --eval "rs.conf()"
rs0:SECONDARY> rs.conf() { "_id" : "rs0", "version" : 201111, "protocolVersion" : NumberLong(1), "writeConcernMajorityJournalDefault" : true, "members" : [ { "_id" : 0, "host" : "mongodb-0.mongodb-headless.mongo:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 0.5, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 1, "host" : "mongodb-arbiter-0.mongodb-arbiter-headless.mongo:27017", "arbiterOnly" : true, "buildIndexes" : true, "hidden" : false, "priority" : 0, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 2, "host" : "mongodb-1.mongodb-headless.mongo:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 0.5, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 3, "host" : "mongodb-2.mongodb-headless.mongo:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 0.5, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 } ], "settings" : { "chainingAllowed" : true, "heartbeatIntervalMillis" : 2000, "heartbeatTimeoutSecs" : 10, "electionTimeoutMillis" : 10000, "catchUpTimeoutMillis" : -1, "catchUpTakeoverDelayMillis" : 30000, "getLastErrorModes" : { }, "getLastErrorDefaults" : { "w" : 1, "wtimeout" : 0 }, "replicaSetId" : ObjectId("111111111122222222223333") } }