Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save lookphp/135632415552517ccdfcb82c414ffc26 to your computer and use it in GitHub Desktop.
Save lookphp/135632415552517ccdfcb82c414ffc26 to your computer and use it in GitHub Desktop.
install mongodb-2.6.12 from the tarball
#!/usr/bin/env bash
# run this script from your home folder
# sudo bash
curl -O http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.12.tgz
tar -zxvf mongodb-linux-x86_64-2.6.12.tgz
cp mongodb-linux-x86_64-2.6.12/bin/* /usr/local/bin
groupadd mongodb
useradd --system --no-create-home -g mongodb mongodb
mkdir -p /var/log/mongodb
touch /var/log/mongodb/mongodb.log
mkdir -p /var/lib/mongodb/
chown mongodb:mongodb -R /var/lib/mongodb
chown mongodb:mongodb -R /var/log/mongodb
cat > /etc/mongod.conf <<EOF
dbpath=/var/lib/mongodb
logpath=/var/log/mongodb/mongodb.log
logappend=true
EOF
cat > /etc/systemd/system/mongodb.service <<EOF
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/local/bin/mongod --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl restart mongodb.service
systemctl status mongodb.service
# mongod.conf
#where to log
logpath=/var/log/mongodb/mongodb.log
logappend=true
# fork and run in background
#fork=true
#port=27017
dbpath=/var/lib/mongodb
# location of pidfile
#pidfilepath=/var/run/mongodb/mongod.pid
# Listen to local interface only. Comment out to listen on all interfaces.
#bind_ip=127.0.0.1
# Disables write-ahead journaling
# nojournal=true
# Enables periodic logging of CPU utilization and I/O wait
#cpu=true
# Turn on/off security. Off is currently the default
#noauth=true
#auth=true
# Verbose logging output.
#verbose=true
# Inspect all client data for validity on receipt (useful for
# developing drivers)
#objcheck=true
# Enable db quota management
#quota=true
# Set oplogging level where n is
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#diaglog=0
# Ignore query hints
#nohints=true
# Enable the HTTP interface (Defaults to port 28017).
#httpinterface=true
# Turns off server-side scripting. This will result in greatly limited
# functionality
#noscripting=true
# Turns off table scans. Any query that would do a table scan fails.
#notablescan=true
# Disable data file preallocation.
#noprealloc=true
# Specify .ns file size for new databases.
# nssize=<size>
# Replication Options
# in replicated mongo databases, specify the replica set name here
#replSet=setname
# maximum size in megabytes for replication operation log
#oplogSize=1024
# path to a key file storing authentication info for connections
# between replica set members
#keyFile=/path/to/keyfile
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment