MongoDB Shell (mongosh) হলো MongoDB এর কমান্ড-লাইন টুল, যা MongoDB ডেটাবেসের সাথে ইন্টারঅ্যাক্ট করার জন্য ব্যবহৃত হয়। এটি MongoDB ডেটাবেসে ডেটা ইনসার্ট, কুয়েরি, আপডেট, ডিলিট এবং অন্যান্য কার্যক্রম সম্পাদন করতে ব্যবহৃত হয়। MongoDB Shell (mongosh) একটি শক্তিশালী কমান্ড-লাইন ইন্টারফেস প্রদান করে যা MongoDB ডেটাবেসের সাথে দ্রুত এবং কার্যকরভাবে কাজ করতে সাহায্য করে।
MongoDB Shell (mongosh) ইনস্টলেশন
1. mongosh ইনস্টলেশন (Windows, macOS, Linux)
MongoDB Shell (mongosh) সাধারণত MongoDB এর সাথে ইনস্টল হয়ে থাকে, তবে যদি আপনি এটি আলাদা করে ইনস্টল করতে চান, তাহলে নিচের ধাপগুলি অনুসরণ করতে পারেন:
Windows এ mongosh ইনস্টলেশন:
- MongoDB Download Center থেকে Windows এর জন্য mongosh ডাউনলোড করুন।
.msiইনস্টলার ফাইল চালু করুন এবং উইজার্ড অনুসরণ করে ইনস্টল করুন।
macOS এ mongosh ইনস্টলেশন (Homebrew এর মাধ্যমে):
Homebrew ইনস্টল করুন (যদি না থাকে):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"mongosh ইনস্টল করুন:
brew install mongosh
Linux এ mongosh ইনস্টলেশন:
Ubuntu/Debian:
sudo apt update sudo apt install -y mongoshRedHat/CentOS/Fedora:
sudo yum install -y mongosh
MongoDB Shell (mongosh) ব্যবহার শুরু করা
1. MongoDB Shell (mongosh) চালু করা
MongoDB Shell চালু করার জন্য, কমান্ড লাইন বা টার্মিনালে mongosh কমান্ড টাইপ করুন:
mongosh
এটি MongoDB সার্ভারের সাথে কানেক্ট হবে। যদি আপনি লোকালহোস্টে MongoDB সার্ভার চালাচ্ছেন, তবে এটি স্বয়ংক্রিয়ভাবে mongodb://localhost:27017 এ কানেক্ট করবে। যদি আপনি MongoDB Atlas বা অন্য কোথাও কানেক্ট করতে চান, তবে কানেকশন URI ব্যবহার করতে হবে।
2. MongoDB Shell এ কানেক্ট হওয়া
লোকাল MongoDB সার্ভারে কানেক্ট হওয়া:
mongoshMongoDB Atlas বা রিমোট MongoDB সার্ভারে কানেক্ট হওয়া: MongoDB Atlas থেকে কানেকশন স্ট্রিং পাবেন এবং এটি mongosh এ ব্যবহার করতে হবে:
mongosh "mongodb+srv://<username>:<password>@cluster0.mongodb.net/myFirstDatabase"
3. ডেটাবেস নির্বাচন এবং কাজ করা
MongoDB Shell এ কাজ করার জন্য প্রথমে একটি ডেটাবেস নির্বাচন করতে হবে। MongoDB তে একটি ডেটাবেস নির্বাচন করার জন্য use <databaseName> কমান্ড ব্যবহার করতে হয়।
ডেটাবেস নির্বাচন করা:
use myDatabaseডেটাবেস তালিকা দেখতে:
show dbs
4. ডেটাবেসের কালেকশন দেখতে
MongoDB তে ডেটা কালেকশনে সংরক্ষিত থাকে। ডেটাবেসের সমস্ত কালেকশন দেখতে:
show collections
5. ডকুমেন্ট ইনসার্ট করা
MongoDB তে ডকুমেন্ট ইনসার্ট করতে insertOne() বা insertMany() ব্যবহার করা হয়।
একটি ডকুমেন্ট ইনসার্ট করা:
db.myCollection.insertOne({ name: "John", age: 30 })একাধিক ডকুমেন্ট ইনসার্ট করা:
db.myCollection.insertMany([ { name: "Jane", age: 25 }, { name: "Alex", age: 35 } ])
6. কুয়েরি করা
MongoDB তে ডেটা খোঁজার জন্য find() ফাংশন ব্যবহার করা হয়।
একটি ডকুমেন্ট খোঁজা:
db.myCollection.find({ name: "John" })সব ডকুমেন্ট খোঁজা:
db.myCollection.find()কুয়েরি ফিল্টারিং (উদাহরণস্বরূপ, বয়স 30 এর বেশি):
db.myCollection.find({ age: { $gt: 30 } })
7. ডেটা আপডেট করা
MongoDB তে ডেটা আপডেট করতে updateOne(), updateMany(), বা replaceOne() ব্যবহার করা হয়।
একটি ডকুমেন্ট আপডেট করা:
db.myCollection.updateOne( { name: "John" }, { $set: { age: 31 } } )একাধিক ডকুমেন্ট আপডেট করা:
db.myCollection.updateMany( { age: { $gt: 30 } }, { $set: { status: "Older" } } )
8. ডেটা ডিলিট করা
MongoDB তে ডেটা মুছতে deleteOne() অথবা deleteMany() ব্যবহার করা হয়।
একটি ডকুমেন্ট ডিলিট করা:
db.myCollection.deleteOne({ name: "John" })একাধিক ডকুমেন্ট ডিলিট করা:
db.myCollection.deleteMany({ age: { $lt: 30 } })
9. অ্যাগ্রিগেশন ব্যবহার
MongoDB তে ডেটার উপর বিভিন্ন অ্যাগ্রিগেশন অপারেশন করার জন্য aggregate() ফাংশন ব্যবহার করা হয়।
ডেটা গ্রুপিং এবং গননা করা:
db.myCollection.aggregate([ { $group: { _id: "$age", count: { $sum: 1 } } } ])
mongosh এর কিছু সুবিধা
- প্রদর্শনযোগ্য এবং ইন্টারেক্টিভ: mongosh একটি ইন্টারেক্টিভ শেল সরবরাহ করে, যা আপনাকে MongoDB ডেটাবেসে কাজ করতে সহায়ক।
- অ্যাগ্রিগেশন পিপলাইন: mongosh অ্যাগ্রিগেশন পিপলাইন নির্মাণে সহায়তা করে এবং MongoDB এর শক্তিশালী অ্যাগ্রিগেশন ফিচার ব্যবহার করা সহজ করে।
- ভাল ডিবাগিং এবং লজ: এটি কনসোল আউটপুটকে সহজে ডিবাগ করতে সাহায্য করে, যা MongoDB তে ট্রাবলশুটিংকে সহজ করে তোলে।
সারাংশ
MongoDB Shell (mongosh) একটি শক্তিশালী টুল যা MongoDB ডেটাবেসের সাথে কাজ করার জন্য সরাসরি কমান্ড-লাইন ভিত্তিক ইন্টারফেস প্রদান করে। এটি ডেটা ইনসার্ট, কুয়েরি, আপডেট, ডিলিট, অ্যাগ্রিগেশন এবং অন্যান্য কার্যক্রম দ্রুত এবং দক্ষভাবে সম্পাদন করতে সাহায্য করে। MongoDB Shell ব্যবহার করে আপনি MongoDB ডেটাবেসের সমস্ত মৌলিক কাজ কমান্ড লাইনেই করতে পারবেন।
Read more