Керування MongoDB на Linux VPS включає встановлення, налаштування, безпеку та оптимізацію продуктивності.
1. Встановлення MongoDB на Linux VPS
MongoDB можна встановити за допомогою менеджерів пакетів, таких як apt (для Debian/Ubuntu) або yum (для CentOS/RHEL).
Для Ubuntu/Debian
- Оновити список пакунків:
sudo apt updatesudo apt update -y
- Імпортуйте ключ MongoDB GPG:
curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-keyring.gpg
**Запустіть наступну команду, щоб додати відсутній відкритий ключ:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B00A0BD1E2C63C11**Запустіть цю команду, щоб імпортувати ключ вручну:
wget -qO - https://pgp.mongodb.com/server-5.0.asc | sudo tee /etc/apt/trusted.gpg.d/mongodb-server-5.0.Перевірте, чи успішно було додано ключ:
gpg --dry-run --quiet --import --import-options import-show /etc/apt/trusted.gpg.d/mongodb-serverecho "deb [signed-by=/usr/share/keyrings/mongodb-server-keyring.gpg] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.listDebian:
echo "deb [signed-by=/etc/apt/trusted.gpg.d/mongodb-server-5.0.asc] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/5.0 main" | sudo tee /etc/apt/sources list.d/mongodb-org-5.0 listsudo apt update
sudo apt install -y mongodb-org
sudo systemctl start mongod
sudo systemctl enable mongodДля CentOS/RHEL
- Додайте сховище MongoDB:
sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo <<EOF
[mongodb-org-6.0]
name=Репозиторій mongoDB
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF - Встановіть MongoDB:
sudo yum install -y mongodb-org
- Запустіть та увімкніть MongoDB:
sudo systemctl start mongod
sudo systemctl enable mongod
2. Захист MongoDB
За замовчуванням MongoDB слухає на localhost (127.0.0.1). Щоб захистити його:
Увімкніть автентифікацію
- Створіть користувача admin:
mongosh
use admin
db.createUser({
user: "admin",
pwd: "StrongPassword",
roles: [{ role: "root", db: "admin" }]
}) - Увімкніть автентифікацію в конфігураційному файлі MongoDB:
sudo nano /etc/mongod.conf
Знайдіть розділ безпеки та додайте:
security:
authorization: enabled - Перезапустіть MongoDB:
sudo systemctl restart mongod
Обмеження зовнішнього доступу
- Змініть MongoDB так, щоб вона слухала тільки localhost:
sudo nano /etc/mongod.conf
Зміна:
bindIp: 127. 0.0.1
- Використовуйте UFW (Ubuntu) або FirewallD (CentOS), щоб дозволити лише певні IP-адреси:
sudo ufw allow from YOUR_IP to any port 27017
3. Керування MongoDB
Перевірка стану служби MongoDB
sudo systemctl status mongod
Перезапуск MongoDB
sudo systemctl restart mongod
Зупинка MongoDB
sudo systemctl stop mongod
Увімкніть запуск MongoDB при завантаженні
sudo systemctl enable mongod
4. Керування базами даних у MongoDB
Підключення до MongoDB
mongosh
Створення бази даних
use mydatabase
Показати бази даних
show dbs
Створення колекції
db.createCollection("users")
Вставити дані
db.users.insertOne({ name: "John Doe", age: 30, email: "john@example.com" })
Знайти дані
db.users.find()
Видалення бази даних
use mydatabase
db.dropDatabase()5. Резервне копіювання та відновлення
Створення резервної копії бази даних MongoDB
mongodump --db=mydatabase --out=/backup/
Відновлення бази даних MongoDB
mongorestore --db=mydatabase /backup/mydatabase/ --db=mydatabase
6. Оптимізація продуктивності
Індексування для швидших запитів
db.users.createIndex({ email: 1 })
Моніторинг продуктивності
db.serverStatus()
Обмеження використання пам’яті
Змініть wiredTigerCacheSizeGB у файлі /etc/mongod.conf:
storage:
wiredTiger:
engineConfig:
cacheSizeGB: 1Використання пулу з’єднань
Змініть /etc/mongod.conf:
net:
maxIncomingConnections: 10007. Журнали та налагодження
Перегляд журналів MongoDB
sudo journalctl -u mongod --no-pager | tail -n 50
Перевірка журналів помилок
sudo cat /var/log/mongodb/mongod.log
8. Видаліть MongoDB (якщо потрібно)
Для Ubuntu/Debian
sudo systemctl stop mongod
sudo apt purge -y mongodb-org* -y mongodb-org
sudo rm -r /var/log/mongodb /var/lib/mongodbДля CentOS/RHEL
sudo systemctl stop mongod
sudo yum remove -y mongodb-org*
sudo rm -r /var/log/mongodb /var/lib/mongodbВисновок
Керування MongoDB на Linux VPS вимагає правильного встановлення, посилення безпеки та оптимізації продуктивності. Дотримуючись цих кроків, ви забезпечите ефективну та безпечну роботу вашої бази даних MongoDB. 🚀
Вам потрібна допомога зі скриптами автоматизації для керування MongoDB? 😊
Схожі публікації
AmneziaWG VPN
Ключові слова Ключове слово Визначення 🛡️ AmneziaWG Вилка WireGuard, яка рандомізує заголовки пакетів, їх розміри та часи передачі, щоб протистояти...
Помилка 404 не знайдено: причини та можливі рішення
Під час роботи з віртуальним або виділеним сервером періодично можуть виникати помилки. Не лякайтеся і не панікуйте – рішення є!...
Додати або видалити “www” з вашого домену
Якщо ви створюєте веб-сайт, одним з найпоширеніших питань є те, чи використовувати “www” у вашому домені – наприклад, www.example.com –...


