MongoDB o'rnatish va mongosh
Oldingi darsda MongoDB hujjatlarni qanday saqlashini ko’rdik. Endi bazaning o’zi kerak. Ikki yo’l bor: uni o’z kompyuteringizga o’rnatish yoki bulutdagi bepul klasterdan foydalanish.
Ikkalasi ham shu darsda ko’rsatiladi — birini tanlaysiz, qolgan darslar ikkalasida ham bir xil ishlaydi.
Ikki yo’l: qaysi birini tanlash
| Mezon | Lokal o’rnatish | Atlas (bulut) |
|---|---|---|
| Internet kerakmi | Yo’q | Ha |
| O’rnatish vaqti | 10-15 daqiqa | 5 daqiqa |
| Disk joyi | ~500 MB | 0 |
| Ma’lumot qayerda | Kompyuteringizda | Serverda |
| Ilovani boshqalarga ulash | Qiyin | Oson |
1-yo’l: lokal o’rnatish
MongoDB Community Server — bepul va ochiq versiya. Uni mongodb.com/try/download/community sahifasidan operatsion tizimingizga mos holda yuklab oling.
Qadamlar:
- Yuklab olingan o’rnatuvchini ishga tushiring;
- O’rnatish turi sifatida Complete ni tanlang;
- “Install MongoDB as a Service” belgisini qoldiring — shunda baza kompyuter yoqilganda o’zi ishga tushadi;
- MongoDB Compass taklif qilinsa, belgilab qo’ying: bu grafik dastur, hujjatlarni ko’z bilan ko’rish uchun qulay;
- O’rnatish tugagach terminalni yoping va qaytadan oching.
Ishladimi? Terminalda versiyani so’rang:
mongod --version
db version v8.0.4
Build Info: {
"version": "8.0.4",
"modules": []
}
Versiya raqami boshqacha bo’lishi mumkin — muhimi, buyruq javob qaytarishi.
mongosh — baza bilan gaplashish qobig’i
Server ishlab tursa ham, unga buyruq beradigan vosita kerak. Bu — mongosh (MongoDB Shell).
mongosh --version
2.3.3
Buyruq topilmasa, uni
mongodb.com/try/download/shell
sahifasidan alohida yuklab oling: yangi versiyalarda mongosh server
bilan birga kelmasligi mumkin.
Lokal serverga ulanish
Argumentsiz chaqirilsa, mongosh o’z kompyuteringizdagi serverga
ulanadi:
mongosh
Current Mongosh Log ID: 671f2a4c8b1e4d3a9c5f0e21
Connecting to: mongodb://127.0.0.1:27017/?directConnection=true
Using MongoDB: 8.0.4
Using Mongosh: 2.3.3
test>
Oxiridagi test> — taklif qatori. Bu yerga buyruq yozasiz. test esa
hozirgi tanlangan baza nomi.
27017 — MongoDB’ning standart porti. Server nima
darsidagi port tushunchasi shu yerda ham amal qiladi.
2-yo’l: Atlas bepul klaster
Atlas — MongoDB kompaniyasining bulut xizmati. Bepul darajasi karta so’ramaydi.
Qadamlar:
- mongodb.com/cloud/atlas da ro’yxatdan o’ting;
- Klaster turini tanlashda Free (M0) variantini belgilang;
- Serverga yaqin mintaqani tanlang — masalan Frankfurt yoki Ireland;
- Database Access bo’limida foydalanuvchi yarating: login va parol o’ylab toping va ularni saqlab qo’ying;
- Network Access bo’limida
Add IP Addressni bosing va o’z IP manzilingizni qo’shing; - Klaster sahifasida Connect → Shell ni tanlang va ko’rsatilgan buyruqni nusxa oling.
Ulanish buyrug’i shunday ko’rinadi:
mongosh "mongodb+srv://cluster0.abcde.mongodb.net/" --username learner
Parol so’raladi, kiritasiz:
Enter password: ********
Current Mongosh Log ID: 671f2b7d9c2f5e4b0d6a1f32
Connecting to: mongodb+srv://<credentials>@cluster0.abcde.mongodb.net/
Using MongoDB: 8.0.4
Atlas atlas-abc123-shard-0 [primary] test>
Birinchi buyruqlar
Ulanganingizdan keyin bazalar ro’yxatini ko’ring:
show dbs
admin 40.00 KiB
config 60.00 KiB
local 72.00 KiB
Bu uchta baza MongoDB’ning o’ziga tegishli — ularga tegmaysiz.
Endi o’z bazangizni tanlang:
use shop
switched to db shop
Birinchi hujjatni yozamiz:
db.products.insertOne({ name: "O'tkan kunlar", price: 45000 })
{
acknowledged: true,
insertedId: ObjectId('671f2c8a4e5b7d9f1a2c3e40')
}
Endi baza haqiqatan paydo bo’ldi:
show dbs
admin 40.00 KiB
config 60.00 KiB
local 72.00 KiB
shop 40.00 KiB
Yozilganini o’qib tekshiring:
db.products.find()
[
{
_id: ObjectId('671f2c8a4e5b7d9f1a2c3e40'),
name: "O'tkan kunlar",
price: 45000
}
]
Bu — ulanish ishlayotganining eng ishonchli dalili: yozdingiz va qaytib o’qidingiz.
Qobiqdan chiqish
exit
bye
Ma’lumot joyida qoladi: mongosh faqat qobiq, baza emas.
Compass — grafik muqobil
Terminal o’rniga sichqoncha bilan ishlashni afzal ko’rsangiz, MongoDB Compass dasturi bor. Unda ulanish satrini kiritasiz, kolleksiyalar ro’yxati chapda chiqadi, hujjatlar o’ngda ko’rinadi.
Amaliy mashq
- Ikki yo’ldan birini tanlang va o’rnatishni oxirigacha bajaring.
mongosh --versionbilan qobiq o’rnatilganini tasdiqlang.mongoshni ishga tushirib,test>taklif qatorini ko’ring.show dbsbilan mavjud bazalarni chiqaring va uchta tizim bazasini toping.use learningbilan yangi bazaga o’ting, so’ngshow dbsda u hali yo’qligini tekshiring.db.notes.insertOne({ title: "Birinchi yozuv", done: false })buyrug’ini bering vashow dbsni takrorlab,learningpaydo bo’lganini ko’ring.
5 va 6-qadamlar birga eng muhim: baza yozuvdan oldin mavjud emasligini o’z ko’zingiz bilan ko’rasiz.
Qisqacha xulosa
- MongoDB’ni ikki yo’l bilan olish mumkin: lokal o’rnatish yoki Atlas bepul klasteri.
mongod— serverning o’zi,mongosh— unga buyruq beradigan qobiq.- Lokal server standart holda
27017portida ishlaydi. ECONNREFUSEDxatosi qobiq topilmadi degani emas — server ishlamayapti degani.use <nom>bazani tanlaydi, lekin baza birinchi hujjat yozilganda yaratiladi.- Atlas’da parolni ulanish satriga yozmang,
--usernamebilan bering. - Compass — hujjatlarni ko’z bilan tekshirish uchun grafik vosita.
Keyingi darsda hujjat va kolleksiya — BSON formati va ma’lumot turlari.