Skip to main content

Install MongoDB 7.0 on Ubuntu 22.04 Jammy

sudo apt-get install gnupg curl
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
--dearmor

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

Check limits

ulimit -a

Set system limits

sudo nano /etc/security/limits.conf

* soft nofile 64000
* hard nofile 64000
* soft nproc 64000
* hard nproc 64000
* soft memlock unlimited
* hard memlock unlimited
* soft stack unlimited
* hard stack unlimited
* soft fsize unlimited
* hard fsize unlimited
* soft cpu unlimited
* hard cpu unlimited
* soft vmem unlimited
* hard vmem unlimited

Set Global Limits for System Services

sudo nano /etc/systemd/system.conf
# and for
sudo nano /etc/systemd/user.conf

DefaultLimitNOFILE=64000
DefaultLimitNPROC=64000
DefaultLimitMEMLOCK=infinity
DefaultLimitSTACK=infinity
DefaultLimitFSIZE=infinity
DefaultLimitCPU=infinity
DefaultLimitVMEM=infinity

Modify the PAM limits

sudo nano /etc/pam.d/common-session
session required pam_limits.so

Restart systemd

sudo systemctl daemon-reload

Reboot

sudo systemctl start mongod
sudo systemctl enable mongod

Listen on all interfaces

sudo nano /etc/mongod.conf

bindIp: 0.0.0.0

Create user root


mongosh
use admin

####

db.createUser({
user: "admin",
pwd: "123",
roles: [{ role: "root", db: "admin" }]
})

Restart MongoDB

sudo systemctl restart mongod

Create additional user

db.createUser({
user: "usr",
pwd: "123", // Choose a secure password
roles: [{ role: "readWrite", db: "mydatabase" }]
})

Change password for user


mongosh -u admin -p
use admin
db.updateUser("admin", { pwd: "123" })

Check users

use admin
db.getUsers()