MongoDB یکی از محبوب ترین مدیران پایگاه داده منبع باز NoSQL است. داده ها را به جای قالب جدولی در یک سند فرمت شده ذخیره می کند. از آنجایی که MongoDB طرح سفت و سختی ندارد، مقیاس پذیری و انعطاف پذیری بالاتری نسبت به SQL ارائه می دهد.

این سیستم مدیریت پایگاه داده (DBMS) به دلیل عملکرد و سازگاری با زبان های برنامه نویسی مختلف در بین توسعه دهندگان محبوبیت دارد. با این حال، برای نصب MongoDB، کاربران اوبونتو به دستورات مختلفی نیاز دارند که باعث می شود process چالش برانگیز.

با در نظر گرفتن این موضوع، روش نصب MongoDB را توضیح خواهیم داد روی میزبانی سرور خصوصی مجازی اوبونتو (VPS). ما همچنین مراحل ایجاد یک پایگاه داده جدید، راه اندازی یک کاربر و فعال کردن احراز هویت از راه دور را پوشش خواهیم داد.

MongoDB یکی از محبوب ترین سیستم های مدیریت پایگاه داده منبع باز NoSQL است. به طور گسترده برای برنامه های کاربردی یا وب سایت های بزرگ استفاده می شود.
برخلاف SQL، MongoDB داده‌ها را در یک سند BSON با طرحی انعطاف‌پذیر ذخیره می‌کند و در نتیجه مقیاس‌پذیری بالاتری دارد. همچنین از سیستم عامل ها، زبان های برنامه نویسی و فریم ورک های مختلف پشتیبانی می کند.

پیش نیازهای نصب MongoDB روی اوبونتو

قبل از نصب بسته رسمی MongoDB، سازگاری سخت افزار و نرم افزار خود را بررسی کنید. برنامه میزبانی VPS شما باید از اوبونتو پشتیبانی کند، یک اتصال SSH ارائه دهد و دسترسی ریشه کامل را فراهم کند.

هاستینگerمیزبانی VPS توزیع های مختلف لینوکس از جمله اوبونتو را ارائه می دهد. با رفتن به آدرس می توانید آن را به راحتی نصب کنید داشبورد VPS سیستم عامل و پنل سیستم عامل.

منوی نصب سیستم عامل در Hostingerداشبورد VPS

توصیه می کنیم از جدیدترین سیستم عامل برای اطمینان از سازگاری و امنیت استفاده کنید. با این حال، مراحل نصب MongoDB روی اوبونتو 20.04 یا نسخه های دیگر مشابه هستند.

برنامه های میزبانی VPS ما همچنین به شما امکان می دهد از راه دور از طریق SSH متصل شوید. علاوه بر استفاده از برنامه‌هایی مانند PuTTY و Terminal، می‌توانید دستورات لینوکس را مستقیماً از مرورگر وب خود با استفاده از ما اجرا کنید. مرورگر terminal.

هاستینگerVPS همچنین دسترسی ریشه کامل را فراهم می کند و به کاربران اجازه می دهد تا دستورات نصب MongoDB را بدون مشکل مجوز اجرا کنند.

روش نصب MongoDB روی اوبونتو

در این قسمت روش نصب MongoDB را توضیح خواهیم داد روی اوبونتو 20.04 یا نسخه های دیگر قبل از ادامه، مطمئن شوید که از طریق SSH با استفاده از یک حساب root یا superuser به VPS خود متصل شده اید

1. MongoDB را نصب کنید

قبل از نصب بسته MongoDB، آن را دانلود کنید GnuPG و حلقه با اجرای این دستور در خود command-line رابط:

sudo apt-get install -y gnupg curl

از cURL و GnuPG برای وارد کردن کلید GPG عمومی MongoDB برای بازیابی بسته نصب استفاده کنید:

curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \ --dearmor

توجه داشته باشید که URL بسته به آن متفاوت است روی بسته های MongoDB در این آموزش، MongoDB Community Edition 7.0، آخرین نسخه پایدار در زمان نگارش را نصب خواهیم کرد.

پس از وارد کردن بسته های رسمی MongoDB، یک فایل لیست برای نصب ایجاد کنید. دستور بسته به آن متفاوت است روی نسخه اوبونتو شما برای اوبونتو 22.04 یا بعد، اجرا کنید:

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

در همین حال، برای پیکربندی فایل لیست، موارد زیر را اجرا کنید روی اوبونتو 20.04:

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

برای همگام سازی پایگاه داده بسته محلی، مخزن APT را به روز کنید:

sudo apt-get update

دستور زیر را برای نصب آخرین نسخه پایدار MongoDB با استفاده از سیستم مدیریت بسته APT اجرا کنید:

sudo apt-get install -y mongodb-org

در صورت تمایل، یک نسخه خاص از بسته رسمی mongodb-org را انتخاب کنید. برای مثال دستور زیر را برای نصب اجرا کنید MongoDB نسخه 7.0.2:

sudo apt-get install -y mongodb-org=7.0.2 mongodb-org-database=7.0.2 mongodb-org-server=7.0.2 mongodb-mongosh=7.0.2 mongodb-org-mongos=7.0.2 mongodb-org-tools=7.0.2

اگر فقط نسخه MongoDB و نه سایر مؤلفه ها را مشخص کنید، APT جدیدترین بسته را نصب می کند.

از آنجایی که APT به طور خودکار بسته کامپوننت را به روز می کند، نصب را برای حفظ نسخه فعلی پین کنید. در اینجا نمونه های دستور هستند:

echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-mongosh hold" | sudo dpkg --set-selections

نکته حرفه ای

اگر کلید عمومی GPG را به پایگاه داده بسته محلی خود وارد نکنید، APT بسته غیر رسمی MongoDB را نصب می کند. این ممکن است منجر به سازگاری، مسائل امنیتی و حقوقی و همچنین عدم پشتیبانی شود.

پیشنهاد می‌کنیم بخوانید:  بایگانی VPS

2. سرویس MongoDB خود را راه اندازی کنید

پس از نصب، MongoDB Community Edition را با وارد کردن موارد زیر اجرا کنید:

sudo systemctl start mongod

را systemctl دستور برای مدیریت سرویس MongoDB ضروری است. برای مثال، اگر با خطا مواجه شدید، برای راه‌اندازی مجدد سرویس‌های در حال اجرا، دستور زیر را اجرا کنید و دوباره DBMS را راه‌اندازی کنید:

sudo systemctl daemon-reload

برای اینکه بفهمید سرور پایگاه داده MongoDB به درستی بارگذاری شده است، وضعیت آن را با این دستور بررسی کنید:

sudo systemctl status mongod

باید ببینی فعال (در حال اجرا) اگر سرویس MongoDB کار می کند، مشابه خروجی زیر است.

وضعیت سرویس Mongod در ترمینالوضعیت سرویس Mongod در ترمینال

به طور پیش فرض، سرویس در هنگام بوت شروع نمی شود. برای بارگیری خودکار آن در هنگام راه اندازی، MongoDB را با استفاده از دستور زیر فعال کنید. :

sudo systemctl enable mongod

وضعیت سرویس را با استفاده از آن بررسی کنید systemctl. اگر نشان دهد فعال شد بجای لود شده، MongoDB آماده استفاده است.

دیمون اصلی MongoDB process نامیده میشود مغول. درخواست های داده را مدیریت می کند، دسترسی را مدیریت می کند و عملیات مدیریت پس زمینه را اجرا می کند.

3. MongoDB را پیکربندی کنید

با تغییر فایل پیکربندی اصلی، تنظیمات پایگاه داده MongoDB را تغییر دهید. در حین نصب به طور خودکار ایجاد می شود process و از طریق قابل دسترسی است /etc/mongod.conf.

از یک ویرایشگر متن مانند nano برای باز کردن و تغییر فایل استفاده کنید. این دستور این است:

sudo nano /etc/mongod.conf

چندین گزینه پیکربندی وجود دارد که رفتار سرور MongoDB را تعیین می کند. مثلا، systemLog تنظیمات ثبت پایگاه داده شما را تعریف می کند، در حالی که خالص به شما امکان می دهد تنظیمات مربوط به شبکه را تغییر دهید.

هشدار! در هنگام ویرایش دقت کنید مغول فایل پیکربندی، زیرا ممکن است سرویس را خراب کنید یا سرور خود را در معرض خطر امنیتی قرار دهید.

همه گزینه ها چندین پارامتر دارند. به عنوان مثال، systemLog گزینه را دارد مسیر پارامتری که مکان ذخیره سازی گزارش پیش فرض را تعیین می کند /var/log/mongodb/mongod.log.

محتوای فایل mongod.conf در نانومحتوای فایل mongod.conf در نانو

به جای حذف پارامترها و گزینه ها، یک نماد هش اضافه کنید (#) آنها را غیرفعال کنید. این یک تمرین خوب است زیرا می توانید به راحتی با حذف کاراکتر آنها را دوباره فعال کنید.

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

sudo systemctl restart mongod

4. یک پایگاه داده جدید ایجاد کنید

نصب MongoDB process به طور خودکار ایجاد می کند مدیر پایگاه داده از آنجایی که معمولاً برای اهداف اداری مانند ذخیره داده های احراز هویت استفاده می شود، توصیه می کنیم یک مورد جدید ایجاد کنید.

برای انجام این کار، با اجرای دستور زیر وارد پوسته Mongo شوید:

mongosh
پیام خوشامدگویی پوسته مونگوشپیام خوشامدگویی پوسته مونگوش

MongoDB برای ایجاد و دسترسی به پایگاه های داده نیز دستور مشابهی دارد. اگر یکی با نام مشخص شده وجود داشته باشد، پوسته به آن تغییر خواهد کرد.

به عنوان مثال، از آنجایی که نام وجود دارد، موارد زیر شما را به پایگاه داده پیش فرض سوئیچ می کند:

use admin

در همین حال، این دستور را در پوسته MongoDB برای ایجاد آن اجرا کنید مشتریان پایگاه داده:

use customers

برای بررسی تمام پایگاه های داده MongoDB در سیستم خود، موارد زیر را اجرا کنید:

show dbs
ترمینال تمام پایگاه های داده MongoDB را فهرست می کندترمینال تمام پایگاه های داده MongoDB را فهرست می کند

5. یک کاربر جدید ایجاد کنید

از آنجایی که MongoDB هیچ حساب پیش فرضی ندارد، باید برای هر پایگاه داده یک کاربر جدید ایجاد کنید و امتیازات آن ها را تنظیم کنید. شما می توانید این کار را با استفاده از db.createUser() تابع.

به عنوان مثال، ما یک جدید ایجاد خواهیم کرد ریشه MongoDB حساب کاربری با مجوزهای کامل پس از تغییر به پایگاه داده مدیر حالت با استفاده از استفاده کنید دستور، وارد کنید:

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

می توانید تابع را در یک یا چند خط بنویسید. به خاطر داشته باشید که به حروف بزرگ توجه کنید زیرا به حروف بزرگ و کوچک حساس است.

MongoDB نقش های مختلفی دارد، پسندیدن dbAdmin، dbOwner، و بخوان بنویس. توصیه می کنیم حداقل مجوزها را به حساب کاربری اعطا کنید تا از تغییرات غیرمجاز و دسترسی به داده ها جلوگیری شود.

مهم! مدیریت کاربر MongoDB متکی است روی پایگاه های داده، به این معنی که باید آن را اجرا کنید استفاده کنید قبل از وارد کردن یک تابع دستور دهید.

برای نمایش همه کاربران در پایگاه داده فعلی خود، از این دستور استفاده کنید:

show users
ترمینال کاربران را در پایگاه داده فعلی MongoDB فهرست می کندترمینال کاربران را در پایگاه داده فعلی MongoDB فهرست می کند

برای تست اتصال پایگاه داده، MongoDB را ترک کنید console با ورود به خروج فرمان روی ترمینال و موارد زیر را اجرا کنید:

mongosh --port [port] -u [username] -p '[password]' '[database]'

به عنوان مثال، ما به ریشه کاربر با استفاده از پورت پیش فرض 27017:

mongosh --port 27017 -u root -p '$tr0ngPa$$w0rD' 'admin'

6. احراز هویت از راه دور را فعال کنید

به‌طور پیش‌فرض، MongoDB همه ورود به سیستم را مجاز می‌کند host دستگاه. در حالی که این برای استقرار محلی کافی است، ممکن است هنگام فشار دادن یک برنامه از دستگاه دیگری با مشکلاتی مواجه شوید.

پیشنهاد می‌کنیم بخوانید:  11

برای دسترسی به MongoDB از یک سیستم دیگر، آن را تغییر دهید mongod.conf فایل ها bindIP پارامتر. مقدار پیش‌فرض آن آدرس IP محلی است، به این معنی که دسترسی از ماشین‌های دیگر غیر از آن را رد می‌کند host سرور

هشدار! هنگام تغییر آدرس های IP در فایل پیکربندی MongoDB خود مراقب باشید زیرا می تواند پایگاه داده شما را عمومی کند و سرویس شما را در معرض خطرات امنیتی جدی قرار دهد.

استفاده کنید نانو برای باز کردن مغول.conf فایل و آدرس IP عمومی VPS خود را به آن اضافه کنید bindIP پارامتر، مانند:

bindIP: 127.0.0.1,123.123.12.1

ما توصیه نمی کنیم مقدار را به 0.0.0.0 از آنجایی که اجازه دادن به همه آدرس های IP سیستم ها برای اتصال، سرور شما را در معرض حملات سایبری قرار می دهد.

برای اطمینان از اینکه فقط کاربران مجاز می توانند به پایگاه داده شما دسترسی داشته باشند، احراز هویت را با افزودن خط زیر در زیر فعال کنید امنیت بخش:

authorization: enabled

مطمئن شوید که نماد هش را در ابتدای علامت حذف کرده اید امنیت گزینه. مطبوعات Ctrl + X، Y، و وارد برای ذخیره تغییرات MongoDB را با استفاده از دستور زیر راه اندازی مجدد کنید:

sudo systemctl restart mongod

پس از نصب ابزار Mongo در سیستم محلی خود، باید بتوانید با اجرای این دستور دستوری به سرور پایگاه داده متصل شوید:

mongo "mongodb://user:password@ip:port/?authSource=database_name"

به عنوان مثال، ما با استفاده از آن به MongoDB متصل خواهیم شد ریشه کاربر، با مدیر پایگاه داده به عنوان احراز هویت این دستور این است:

mongo "mongodb://root:$tr0ngPa$$w0rD@123.123.1.1:27017/?authSource=admin"

برای بهبود امنیت دسترسی از راه دور، پورت گوش دادن MongoDB را فقط به آدرس IP سیستم محلی خود محدود کنید. در اوبونتو، می توانید این کار را با استفاده از فرمان Uncomplicated Firewall (UFW) انجام دهید:

sudo ufw allow from your_local_machine_ip_address to any port 27017

این بدان معنی است که فایروال فقط اتصالات را از آدرس IP مشخص شده می پذیرد و دیگران را مسدود می کند.

درباره VPS و پایگاه داده بیشتر بدانید

روش نمایش کاربران در MySQL با استفاده از دستورات لینوکس
روش نصب PostgreSQL روی اوبونتو
روش نصب phpMyAdmin روی اوبونتو

نتیجه

MongoDB یک سیستم مدیریت پایگاه داده NoSQL (DBMS) منبع باز و رایگان است که برای وب سایت ها یا برنامه های کاربردی در مقیاس بزرگ محبوب است. از آنجایی که از یک ساختار شماتیک ثابت برای ذخیره داده ها استفاده نمی کند، نسبت به SQL انعطاف پذیرتر و مقیاس پذیرتر است.

در این مقاله راهنمای نصب MongoDB برای اوبونتو را ارائه کرده ایم. این هم خلاصه:

  1. MongoDB را نصب کنید. با استفاده از کلید مخزن رسمی MongoDB وارد کنید GnuPG و حلقه. فایل لیست را ایجاد کرده و با استفاده از مدیریت بسته APT نصب کنید.
  2. MongoDB را راه اندازی کنید. نمونه MongoDB را با استفاده از systemctl فرمان دیمون را فعال کنید تا از شروع خودکار آن در هنگام راه‌اندازی سیستم مطمئن شوید.
  3. MongoDB را راه اندازی کنید. باز کن mongod.conf فایل پیکربندی با استفاده از ویرایشگر متن تنظیمات پایگاه داده خود را تغییر دهید و Mongod را مجددا راه اندازی کنید تا تغییرات اعمال شود.
  4. یک پایگاه داده جدید ایجاد کنید. با استفاده از پوسته Mongo را وارد کنید منگوش فرمان را اجرا کنید استفاده کنید دستور ایجاد یک پایگاه داده MongoDB جدید یا دسترسی به پایگاه داده موجود در صورت وجود نام مشخص شده.
  5. یک کاربر جدید ایجاد کنید. به پوسته MongoDB دسترسی پیدا کنید و وارد شوید db.createUser() عملکرد ایجاد یک کاربر جدید در پایگاه داده فعلی شما. رمز عبور و مجوزهای آن را تنظیم کنید.
  6. احراز هویت از راه دور را فعال کنید. تغییر دادن mongod.conf فایل ها bindIP تنظیمات برای فعال کردن دسترسی از راه دور به پایگاه داده شما. برای بهبود امنیت، تنظیمات احراز هویت MongoDB را فعال کنید و آدرس IP مجاز را با استفاده از UFW محدود کنید.

هنگام استقرار MongoDB، از یک VPS با دسترسی ریشه کامل و سازگاری با نرم افزار گسترده مانند استفاده کنید هاستینگerبرای اطمینان از یک پیکربندی صاف process. ما همچنین یک نصب کننده سیستم عامل و مرورگر را با یک کلیک ارائه می دهیم terminal برای ساده کردن کار

روش نصب MongoDB روی سوالات متداول اوبونتو

در این بخش به چندین سوال رایج در مورد نصب MongoDB پاسخ خواهیم داد روی اوبونتو

چگونه بررسی کنیم که آیا MongoDB به درستی نصب شده است؟

برای بررسی اینکه آیا سیستم اوبونتو MongoDB نصب شده است یا خیر، شماره نسخه آن را با استفاده از آن بررسی کنید mongod – نسخه فرمان

اگر نسخه MongoDB را مشاهده کردید، به این معنی است که پایگاه داده به درستی پیکربندی شده است. متناوبا وارد کنید منگوش دستور دهید و بررسی کنید که آیا ترمینال خطایی را برمی گرداند یا خیر.

چگونه MongoDB را حذف کنیم؟

برای حذف نصب MongoDB Community Edition، نمونه را با اجرا متوقف کنید سرویس sudo mongod stop. سپس بسته را با استفاده از apt purge “mongodb-org*” فرمان

دیتابیس ها و فایل های لاگین را حذف کنید /var/log/mongodb و var/lib/mongodb دایرکتوری ها با استفاده از rm فرمان

تفاوت بین MongoDB و MongoDB Community Edition چیست؟

MongoDB Community Edition نسخه رایگان و منبع باز راه حل مدیریت پایگاه داده است. MongoDB ممکن است به نسخه Enterprise Advanced یا Atlas مبتنی بر ابر مراجعه کند.