برنامه نویسی

میانبرهای دستور MongoDB: راهنمای نهایی

این پست یک راهنمای جامع برای مهم ترین دستورات و عملیات MongoDB است. پرس و جوهای اساسی، عملیات CRUD، نمایه سازی، تجمیع و مفاهیم پیشرفته تر را پوشش می دهد.


1. مبانی MongoDB

اتصال به MongoDB

mongo --host <hostname> --port  -u  -p  --authenticationDatabase 
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نمایش پایگاه های داده

show dbs;
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

از یک پایگاه داده استفاده کنید

use myDatabase;
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نمایش مجموعه ها

show collections;
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


2. عملیات CRUD

یک مجموعه ایجاد کنید

db.createCollection("myCollection");
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

درج اسناد

db.myCollection.insertOne({ name: "John", age: 30 });
db.myCollection.insertMany([{ name: "Jane", age: 25 }, { name: "Doe", age: 22 }]);
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اسناد را بخوانید

db.myCollection.find();
db.myCollection.find({ name: "John" });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

به روز رسانی اسناد

db.myCollection.updateOne({ name: "John" }, { $set: { age: 31 } });
db.myCollection.updateMany({ age: { $lt: 30 } }, { $set: { status: "young" } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

حذف اسناد

db.myCollection.deleteOne({ name: "John" });
db.myCollection.deleteMany({ age: { $lt: 25 } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


3. استعلام اسناد

پرس و جوهای اساسی

db.myCollection.find({ name: "John" });
db.myCollection.find({ age: { $gt: 25 } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

فرافکنی

db.myCollection.find({}, { name: 1, age: 1 });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرتب سازی

db.myCollection.find().sort({ age: -1 });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

محدود کردن و پرش

db.myCollection.find().limit(5);
db.myCollection.find().skip(5).limit(5);
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


4. به روز رسانی اسناد

به روز رسانی اپراتورها

  • $set: مقدار یک فیلد را تعیین می کند
db.myCollection.updateOne({ name: "John" }, { $set: { age: 31 } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

db.myCollection.updateOne({ name: "John" }, { $unset: { age: "" } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • $ inc: مقدار یک فیلد را افزایش می دهد
db.myCollection.updateOne({ name: "John" }, { $inc: { age: 1 } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • فشار $: یک مورد را به یک آرایه اضافه می کند
db.myCollection.updateOne({ name: "John" }, { $push: { hobbies: "reading" } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


5. حذف اسناد

حذف اپراتورها

  • حذف یک: یک سند را حذف می کند
db.myCollection.deleteOne({ name: "John" });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • حذف بسیاری: چندین سند را حذف می کند
db.myCollection.deleteMany({ age: { $lt: 25 } });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


6. شاخص ها

ایجاد شاخص ها

db.myCollection.createIndex({ name: 1 });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مشاهده شاخص ها

db.myCollection.getIndexes();
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کاهش شاخص ها

db.myCollection.dropIndex("name_1");
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


7. تجمیع

تجمیع پایه

db.myCollection.aggregate([
    { $match: { status: "active" } },
    { $group: { _id: "$age", total: { $sum: 1 } } }
]);
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مراحل تجمیع مشترک

  • $match: اسناد را فیلتر می کند
{ $match: { status: "active" } }
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • گروه $: اسناد را بر اساس یک فیلد مشخص گروه بندی می کند
{ $group: { _id: "$age", total: { $sum: 1 } } }
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

{ $sort: { total: -1 } }
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • پروژه $: اسناد را تغییر شکل می دهد
{ $project: { name: 1, age: 1 } }
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


8. مدل سازی داده ها

جاسازی اسناد

let post = {
    title: "Post Title",
    content: "Post Content",
    comments: [
        { user: "John", comment: "Great post!" },
        { user: "Jane", comment: "Thanks for sharing!" }
    ]
};
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

ارجاع به اسناد

let user = { name: "John" };
let post = { title: "Post Title", content: "Post Content", userId: user._id };
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


9. همانند سازی

راه اندازی یک مجموعه ماکت

rs.initiate();
rs.add("mongodb1.example.net:27017");
rs.add("mongodb2.example.net:27017");
rs.add("mongodb3.example.net:27017");
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

بررسی وضعیت Replica Set

rs.status();
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


10. شاردینگ

فعال کردن Sharding

sh.enableSharding("myDatabase");
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اشتراک گذاری یک مجموعه

sh.shardCollection("myDatabase.myCollection", { shardKey: 1 });
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


11. معاملات

شروع یک معامله

const session = db.getMongo().startSession();
session.startTransaction();
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

انجام معامله

session.commitTransaction();
session.endSession();
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

لغو یک معامله

session.abortTransaction();
session.endSession();
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


12. امنیت

ایجاد کاربر

db.createUser({
    user: "myUser",
    pwd: "myPassword",
    roles: [{ role: "readWrite", db: "myDatabase" }]
});
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

احراز هویت یک کاربر

db.auth("myUser", "myPassword");
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید


13. بهترین شیوه ها

  • از شاخص ها استفاده کنید: با استفاده از ایندکس ها از کارآمد بودن پرس و جوهای شما اطمینان حاصل کنید.
  • مدل سازی داده ها: مدل داده مناسب (جاسازی در مقابل ارجاع) را بر اساس مورد استفاده خود انتخاب کنید.
  • به طور منظم پشتیبان گیری کنید: برای جلوگیری از از دست رفتن داده ها، به طور مرتب از اطلاعات خود نسخه پشتیبان تهیه کنید.
  • نظارت بر عملکرد: از ابزارهای نظارتی برای نظارت بر عملکرد نمونه MongoDB خود استفاده کنید.
  • پایگاه داده خود را ایمن کنید: پیاده سازی مکانیسم های احراز هویت و مجوز مناسب.

نتیجه گیری

این پست مفاهیم، ​​دستورات و عملیات کلیدی برای کار با MongoDB را خلاصه می کند. هنگامی که با MongoDB کار می کنید، این را به عنوان یک مرجع سریع نگه دارید!

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا