آموزش نصب MongoDB در ubuntu – Debian – Rocky Linux – Alma Linux و ویندوز
آموزش نصب MongoDB
MongoDB یک دیتابیس منبع باز، NoSQL High-performance و schema-free document-oriented است که می تواند برای ایجاد وب سایت ها و برنامه های قدرتمند مورد استفاده قرار گیرد. MongoDB در حال حاضر از مخازن پیش فرض اوبونتو قابل نصب است، با این حال نسخه موجود در مخازن اوبونتو جدیدترین نیست. به منظور نصب جدیدترین ، باید مخزن بسته MongoDB را در اوبونتو نصب کنید، برای نصب مراحل زیر رو دنبال کنین. برای نصب دیتابیس مونگو دی بی در vps میتونین لیست کانفیگ های خرید سرور مجازی بلوسرور مشاهده کنین.
MongoDB یک پایگاه داده منبع باز NoSQL است که بر اساس زبان برنامه نویسی C++ ساخته شده است. MongoDB یک پایگاه داده document-oriented است که از JSON-like documents و یک Dynamic Schema برای ذخیره اطلاعات استفاده می کند. این بدان معناست که در حین ذخیره داده های خود، لازم نیست نگران ساختار داده، تعداد فیلدها یا انواع فیلدهای مورد استفاده برای ذخیره مقادیر باشید. اشیاء JSON با اسناد MongoDB یکسان هستند.
شما می توانید ساختار رکوردها را به سادگی با افزودن فیلدهای جدید یا حذف فیلدهای موجود (که MongoDB از آن به عنوان Documents یاد می کند) تغییر دهید. این قابلیت می تواند برای توصیف روابط سلسله مراتبی، آرایه های ذخیره و دیگر ساختارهای داده پیچیده تر در MongoDB استفاده شود. MongoDB برای ذخیره حجم عظیمی از داده ها توسط تعدادی از شرکت های دیجیتال از جمله فیس بوک، eBay، Adobe و Google استفاده می شود.
ویژگی های کلیدی MongoDB
در مقایسه با سایر پایگاه های داده سنتی، MongoDB دارای تعدادی ویژگی منحصر به فرد است که آن را به یک انتخاب برتر تبدیل می کند. در زیر به برخی از این ویژگی ها اشاره می شود:
Index-based Document: در پایگاه داده MongoDB، هر فیلد در Document با شاخص های اولیه و ثانویه ایندکس می شود، و دریافت داده ها از استخر را آسان تر می کند.
Horizontal Scalability : اینکار با اشتراک گذاری MongoDB امکان پذیر است. عمل توزیع داده ها بر روی سرورهای متعدد به عنوان اشتراک گذاری شناخته می شود. کلید Shard برای تقسیم حجم عظیمی از داده ها به تکه های داده استفاده می شود که سپس به طور یکنواخت در بین Shard هایی که چندین سرور فیزیکی را در بر می گیرند پراکنده می شوند.
Schema-Less Database: این نوع پایگاه داده انواع مختلفی از اسناد را در یک مجموعه واحد (معادل یک جدول) ذخیره می کند. به بیان دیگر، یک مجموعه واحد در پایگاه داده MongoDB می تواند اسناد متعددی را در خود جای دهد که هر کدام مجموعه ای از فیلدها، محتوا و اندازه خود را دارند. نیازی نیست که یک سند با سند دیگر قابل مقایسه باشد، همانطور که در پایگاه های داده رابطه ای وجود دارد. MongoDB به دلیل این قابلیت، آزادی زیادی برای مصرف کنندگان فراهم می کند.
Replication: مونگو دی بی با تولید چندین کپی از داده ها و ارسال این کپی ها به یک سرور جداگانه، دسترسی بالایی به داده ها را فراهم می کند و امکان بازیابی داده ها را حتی در صورت خرابی یک سرور فراهم می کند.
در این آموزش نحوه نصب MongoDB در ubuntu – Debian – Rocky Linux – Alma Linux 9 و ویندوز بررسی میکنیم.
آموزش نصب MongoDB در Ubuntu 22
ابتدا با اجرای دستورات apt زیر در ترمینال، مطمئن شوید که تمام بسته های سیستم عامل بروز هستند.
sudo apt update sudo apt upgrade sudo apt install dirmngr gnupg apt-transport-https ca-certificates software-properties-common
نصب MongoDB در اوبونتو 22
به طور پیش فرض MongoDB در مخزن پایه اوبونتو 22.04 در دسترس است. اکنون دستور زیر را اجرا کنید تا مخزن repository MongoDB را به سیستم اوبونتو اضافه کنید :
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
اضافه کردن MongoDB Package repository در Ubuntu
در مرحله بعد بعد، MongoDB GPG key را اضافه کنید :
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
دستور نصب MongoDB در Ubuntu
پس از اضافه شدن مخزن، بسته های MongoDB Server را با استفاده از دستور زیر نصب کنید. برای راه اندازی دیتابیس مانگو دی بی در سرورهای بلوسرور، لیست پلن های در صفحه خرید VPS ایران و خرید VPS آلمان قابل مشاهده است.
sudo apt update sudo apt install mongodb-org
مدیریت MongoDB
پس از نصب ، از دستورات زیر می توان برای متوقف کردن ، شروع و فعال کردن MongoDB استفاده کرد تا هنگام شروع سیستم، بطور خودکار راه اندازی شود.
sudo systemctl stop mongod.service sudo systemctl start mongod.service sudo systemctl enable mongod.service
تست MongoDB
بعد از نصب و فعالسازی برای تست اتصال به پایگاه داده MongoDB، دستور زیر را اجرا می کنیم :
mongo –eval ‘db.runCommand({connectionStatus: 1})’
خروجی :
MongoDB shell version v5.0.6 connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("1022b711-gdt-e46-aec6-f6172bmw666") } MongoDB server version: 5.0.6 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }
برای اتصال به MongoDB shell دستور زیر را تایپ کنید:
mongo
ایجاد کاربر ادمین در MongoDB
ابتدا با دستور mongo به MongoDB shell دسترسی پیدا کنید، سپس به admin database متصل شوید.
use admin
برای ایجاد یک حساب کاربری جدید Mongodb، موارد زیر را اجرا کنید. برای تست، یک شناسه کاربری با اسم Blue ساخته خواهد شد :
db.createUser( { user: "Blue", pwd: "your-password-Blue-user", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
با دستور زیر از mongo shell خارج بشید.
quit()
در نهایت MongoDB را با حساب جدیدی که برای اتصال ایجاد کردید، تست کنید :
mongo --port 27017 --authenticationDatabase "admin" -u "Blue" -p
خروجی :
mongo -u mongoAdmin -p --authenticationDatabase admin MongoDB shell version v5.0.9 Enter password:
به طور پیش فرض، احراز هویت (authentication) برای کاربران MongoDB فعال نیست. در محیط production environment، ممکن است لازم باشد سرور خود را ایمن کرده و تایید اعتبار کاربر را فعال کنید. برای انجام این کار از مراحل زیر استفاده کنید. اگر می خواهید تایید هویت را فعال کنید. برای فعال کردن تأیید هویت ورود به سیستم MongoDB، از محیط shell در سرور مجازی امارات خارج بشین و این مراحل رو ادامه بدین. دستورات زیر را اجرا کنید تا فایل کانفیگ MongoDB باز بشه.
sudo nano /lib/systemd/system/mongod.service
سپس خط نارنجی رنگ را تغییر دهید تا شبیه خط زیر باشد و ذخیره کنید.
[Unit] Description=High-performance, schema-free document-oriented database After=network.target Documentation=https://docs.mongodb.org/manual [Service] User=mongodb Group=mongodb ExecStart=/usr/bin/mongod --auth --config /etc/mongod.conf PIDFile=/var/run/mongodb/mongod.pid # file size
تنظیمات بالارو ذخیره کنید و خارج بشین و MongoDB را دوباره اجرا کنید تا تغییرات اعمال شود.
sudo systemctl daemon-reload sudo service mongod restart
پس از نصب MongoDB، فایل پیکربندی پیش فرض آن در این آدرس است /etc/mongod.conf
توصیه می شود که احراز هویت (authentication) را فعال کنید زیرا همه کاربران می توانند بدون احراز هویت به پایگاه داده دسترسی پیدا کنند. برای انجام این کار ، با اجرای دستورات زیر فایل پیکربندی را باز کنید:
sudo nano /etc/mongod.conf
سپس خط نمایش داده شده در زیر را ویرایش کنید تا فعال شود:
security:
authorization: enabled
سرویس MongoDB را بعد از ایجاد تغییرات بالا دوباره راه اندازی کنید.
sudo service mongod restart
اکنون فقط به کاربران احراز هویت شده اجازه دسترسی به سرور پایگاه داده، داده می شود.
mongo -u admin -p new_password_here --authenticationDatabase admin
برای تایید صحت احراز هویت دستورات زیر را اجرا کنید، سپس از شما خواسته می شود که یک رمز عبور را وارد کنید.
mongo -u admin -p --authenticationDatabase admin
نصب MongoDB در Debian 10 -11
در این راهنما برای نصب MongoDB در دبیان، نسخه Community را نصب می کنیم، اما از آنجایی که در مخازن پیش فرض ارائه نشده است، باید مخازن را به سیستم عامل اضافه کنیم. ابتدا ابزارهای مورد نیاز را نصب کنید:
sudo apt install wget curl gnupg software-properties-common apt-transport-https ca-certificates lsb-release
سپس کلید GPG را وارد کنید
curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-6.gpg
اکنون مخزن MongoDB 6.0 را بسته به نسخه سیستم عامل به سیستم اضافه کنید.
##On Debian 11 echo "deb http://repo.mongodb.org/apt/debian bullseye/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list ##On Debian 10 echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
بعد از اضافه کردن آپدیت میکنیم
sudo apt update
با دستور زیر نصب میکنیم
sudo apt install mongodb-org
خروجی : The following additional packages will be installed: mongodb-database-tools mongodb-mongosh mongodb-org-database mongodb-org-database-tools-extra mongodb-org-mongos mongodb-org-server mongodb-org-shell mongodb-org-tools The following NEW packages will be installed: mongodb-database-tools mongodb-mongosh mongodb-org mongodb-org-database mongodb-org-database-tools-extra mongodb-org-mongos mongodb-org-server mongodb-org-shell mongodb-org-tools 0 upgraded, 9 newly installed, 0 to remove and 39 not upgraded. Need to get 134 MB of archives. After this operation, 458 MB of additional disk space will be used. Do you want to continue? [Y/n] y
نصب MongoDB در Rocky Linux/Alma Linux 9
از آنجایی که ما بر روی نصب و پیکربندی MongoDB Community Server تمرکز می کنیم، ابتدا مطمئن شوید که یک کاربر Sudo با امتیازات یا دسترسی کاربر root در سرور مجازی خود هستید. پس از آن، ادامه دهید و سیستم عامل را به روز کنید.
sudo dnf update
مخازن Mongodb به طور پیش فرض در راکی لینوکس 9 در دسترس نیستند. با ایجاد فایل /etc/yum.repos.d/mongodb-org-6.0.repo و افزودن محتوای مخزن، مخزن را اضافه کنیم. از این دستور استفاده کنید:
sudo vim /etc/yum.repos.d/mongodb-org-6.0.repo
سپس این محتویات رو داخل اون قرار میدیم.
[mongodb-org-6.0] name=MongoDB Repository 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
آپدیت رو انجام میدیم تا مخازن Yum آپدیت بشن.
sudo dnf clean all sudo dnf makecache
با دستور sudo dnf repolist هم میتونین بررسی کنین که MongoDB repo در سیستم عامل اضافه شده
$ sudo dnf repolist ... mongodb-org-6.0 MongoDB Repository ...
برای نصب آخرین نسخه پایدار MongoDB، دستور زیر را وارد کنید:
sudo dnf install -y mongodb-org
بعد از نصب با دستور mongod -version میتوانید نسخه نصب شده MongoDB را مشاهده کنید.
باز کردن پورت MongoDB بر روی فایروال
sudo firewall-cmd --add-port=27017/tcp --permanent sudo firewall-cmd --reload
مدیریت سرویس MongoDB در Rocky Linux
sudo systemctl start mongod
sudo service mongod stop
برای فعال کردن سرویس مونگو دی بی در بوت سیستم عامل دستور زیر را حتما وارد ترمینال ssh کنید.
sudo systemctl enable mongod
آموزش نصب MongoDB در Windows
برای نصب مونگو دی بی در سیستم عامل ویندوز (windows)، به آدرس زیر برید و فایل msi مربوط به سیستم عامل ویندوز را دانلود و نصب کنید.
https://www.mongodb.com/try/download/community
Translation is too long to be saved پس از اتمام مراحل نصب، نرم افزار MongoDB را در درایو C خود خواهید دید. برای مشاهده آن به آدرس زیر برید
C:Program FilesMongoDBServer{version}bin.
نصب Windows MongoDB Shell
برای شروع فرآیند نصب Windows MongoDB Shell، به صفحه دانلود زیر بروید.
https://www.mongodb.com/try/download/shell
می توانید با اجرای دستور mongosh به یک نمونه MongoDB به صورت محلی متصل شوید. دستور ‘mongosh’ به پورت پیشفرض MongoDB – 27017 متصل میشود. این روش همچنین معادل اتصال با یک connection string است.
> mongosh "mongodb://localhost:27017"