Skip to content

Instantly share code, notes, and snippets.

@mayhems1
Last active May 4, 2022 08:42
Show Gist options
  • Save mayhems1/9d7924234e573dd76b97af698059a11b to your computer and use it in GitHub Desktop.
Save mayhems1/9d7924234e573dd76b97af698059a11b to your computer and use it in GitHub Desktop.
MongoDB cheat sheet

MongoDB cheatsheet

Replica Set

Perform Maintenance on Replica Set Members

Stop a secondary

use admin
db.shutdownServer()

Remove Members from Replica Set

rs.remove("mongod3.example.net:27017")
rs.remove("mongod3.example.net")

Remove a Member Using rs.reconfig()

cfg = rs.conf()
cfg.members.splice(2,1)
rs.reconfig(cfg)
rs.conf()

Force a Member to Become Primary

cfg = rs.conf()
cfg.members[0].priority = 0.5
cfg.members[1].priority = 0.5
cfg.members[2].priority = 1
rs.reconfig(cfg)
cfg = rs.conf()
cfg.members[0].priority = 0.5
cfg.members[0].votes = 1;
cfg.members[1].priority = 0.5
cfg.members[1].votes = 1;
cfg.members[2].priority = 1
cfg.members[2].votes = 1;
rs.reconfig(cfg)
rs.freeze(120)
rs.stepDown(120)

Configure Non-Voting Replica Set Member

cfg = rs.conf();
cfg.members[n].votes = 0;
cfg.members[n].priority = 0;
rs.reconfig(cfg);

backup

To backup data from a mongod instance running on the same machine

mongodump --out=/data/backup/

sudo mkdir /var/lib/mongobackups

sudo mongodump --db newdb --out /var/lib/mongobackups/`date +"%m-%d-%y"`

sudo mongodump --out /var/lib/mongobackups/`date +"%m-%d-%y"`

# mongo command

rs.add( { host: "<hostname>:27017", priority: 0, votes: 0 } )

Define wiredTigerCacheSizeGB in mongod.conf

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true
#  engine:
#  mmapv1:
  wiredTiger:
    engineConfig:
      configString: cache_size=1024M

Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment