در این آموزش، روند نصب mongodb روی اوبونتو ۲۲.۰۴ را بررسی میکنیم. مانگو دیبی از محبوبترین دیتابیسهایی است که به دلیل انعطافپذیری بالا، اغلب برای مدیریت حجم بالایی از دادهها از آن استفاده میشود. با ما همراه باشید تا با نحوه نصب مانگو دی بی ۷.۰ روی اوبونتو ۲۲.۰۴ آشنا شوید.
جهت مطالعه بیشتر اینجا بخوانید: در مراحل زیر، به آموزش نصب MongoDB نسخه ۷.۰ میپردازیم. با تکمیل این مراحل میتوانید از این دیتابیس استفاده کنید. قبل از انجام هر کاری باید پکیج ایندکس APT خود را بهروزرسانی کنید: سپس، تمامی پکیجهای مورد نیاز خود را نصب کنید: اکنون، کلید GPG را برای ریپازیتوری MongoDB 7.0 وارد کنید: حالا MongoDB 7.0 Repo را در اوبونتو ۲۲.۰۴ اضافه کنید: پس از اضافه شدن ریپازیتوری، ایندکس پکیجهای خود را بهروزرسانی کرده و MongoDB 7.0 را با استفاده از دستور زیر نصب کنید: در ادامه توضیحات زیر را مشاهده میکنید. کافیست با استفاده از y فرایند نصب را ادامه دهید: اکنون با استفاده از دستور زیر سرویس را راه اندازی و فعال کنید: حال باید بررسی کنید که آیا سرویس فعال است یا خیر. برای انجام این کار دستور زیر را به کار ببرید: خروجی زیر را مشاهده خواهید کرد: سپس باید نسخه MongoDB نصب شده را تأیید کنید: خروجی زیر را مشاهده خواهید کرد: MongoDB فایل پیکربندی خود را در etc/mongod.conf/ ذخیره میکند. در این فایل میتوانید تمام تنظیمات دلخواه MongoDB از جمله مسیر پایگاه داده، دایرکتوری لاگها و غیره را انجام دهید. در ادامه آموزش نصب MongoDB روی اوبونتو ۲۲.۰۴، برخی از تنظیماتی که میتوانیم برای نسخه ۷.۰ انجام دهیم، آورده شده است. برای انجام این کار، ابتدا فایل را برای ویرایش باز کنید: برای فعال کردن احراز هویت رمز عبور در MongoDB 7.0، خطوط زیر را در پیکربندی از حالت کامنت خارج نمایید: برای اینکه بتوانید از راه دور به پایگاه داده دسترسی داشته باشید، باید آن را طوری تنظیم کنید که نه تنها به لوکال هاست؛ بلکه به همه اینترفیسها متصل شود. برای این کار باید تغییرات زیر را اعمال کنید: اکنون پس از انجام تنظیمات، پیکربندی را ذخیره کرده و سرویس را مجددا راه اندازی کنید: اگر فایروال فعال است، در فایروال به سرویس اجازه دسترسی دهید: در برخی از سناریوها ممکن است پس از نصب MogoDB نیاز به تغییر مسیر داده برای MongoDB داشته باشید. مسیر پیش فرض برای مانگو دی بی var/lib/mongodb/ است. در ادامه، یک مسیر متفاوت ایجاد و استفاده خواهیم کرد. کار خود را با متوقف کردن سرویس شروع کنید. برای این کار دستور زیر را اجرا کنید: مسیر داده جدید را ایجاد کرده و سطوح دسترسی لازم را تنظیم کنید: اکنون میتوانید محتویات مسیر قدیمی را با استفاده از دستور Rsync کپی کنید: سپس، مسیر قدیمی را به یک فایل پشتیبان منتقل کنید: حالا فایل پیکربندی خود را طوری تغییر دهید که مسیر داده جدید را در خود جای دهد: خطهای زیر را تغییر دهید: در نهایت، تغییرات را ذخیره کرده و سرویس را راه اندازی کنید: در این مرحله از آموزش نصب MongoDB روی اوبونتو ۲۲.۰۴ به نحوه استفاده از آن میپردازیم. برای اتصال به shell مانگو دی بی از دستور زیر استفاده کنید: اکنون خروجی مشابه زیر را مشاهده خواهید کرد: در این مرحله یک کاربر نمونه با نام ali ایجاد میکنیم و نقشهای admin را به آن اختصاص میدهیم: اکنون، رمز عبور دلخواه را برای کاربر تنظیم کنید و با اجرای دستور زیر خارج شوید: در نهایت، با استفاده از کاربر تست میکنیم آیا مراحل انجام شده درست است. سپس پسورد را وارد نمایید. برای ایجاد یک دیتابیس در MongoDB، کافی است به یک non-existing database سوئیچ کرده و مانند زیر از دستور testdb استفاده کنید: خروجی مشابه زیر را مشاهده خواهید کرد: اکنون میتوانید کالکشنهایی در پایگاه داده ایجاد کنید: در نهایت با اجرای دستور زیر میتوانید کالکشنهای ایجاد شده را مشاهده کنید: در این مطلب به آموزش نصب MongoDB روی اوبونتو ۲۲.۰۴ پرداختیم. همچنین اشاره کردیم که پس از نصب MongoDB چطور میتوان از آن استفاده کرد.مراحل آموزش نصب MongoDB 7.0
مرحله اول – MongoDB 7.0 Repo را اضافه کنید
sudo apt update -y
sudo apt install wget curl gnupg2 software-properties-common apt-transport-https ca-certificates lsb-release vim
curl -fsSL https://pgp.mongodb.com/server-7.0.asc |sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-server-7.0.gpg
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
مرحله دوم – پکیجهای MongoDB را نصب کنید
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 501 not upgraded.
Need to get 157 MB of archives.
After this operation, 511 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
sudo systemctl enable --now mongod
systemctl status mongod
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2023-08-26 10:22:19 EAT; 9s ago
Docs: https://docs.mongodb.org/manual
Main PID: 9811 (mongod)
Memory: 81.7M
CPU: 629ms
CGroup: /system.slice/mongod.service └─9811 /usr/bin/mongod --config /etc/mongod.conf Ago 27 12:36:44 computingforgeeks systemd[1]: Started MongoDB Database Server. ....
mongod --version
db version v7.0.0
Build Info: {
"version": "7.0.0",
"gitVersion": "37d84072b5c5b9fd723db5fa133fb202ad2317f1",
"openSSLVersion": "OpenSSL 3.0.2 15 Mar 2022",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "ubuntu2204",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
مرحله سوم – MongoDB را پیکربندی کنید
sudo vim /etc/mongod.conf
security:
authorization: enabled
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
sudo systemctl restart mongod
sudo ufw allow 27017:
مرحله چهارم – تغییر مسیر پیشفرض MongoDB
sudo systemctl stop mongod.service
sudo mkdir -p /monogdb/data
sudo chown -R mongodb:mongodb /monogdb/data
sudo rsync -av /var/lib/mongodb/ /monogdb/data
sudo mv /var/lib/mongodb /var/lib/mongodb.bak
sudo vim /etc/mongod.conf
# Where and how to store data.
storage:
dbPath: /monogdb/data
sudo systemctl daemon-reload
sudo systemctl start mongod
مرحله پنجم- نحوه استفاده از پایگاه داده MongoDB
mongosh
Current Mongosh Log ID: 64eb1de75716266ec1174a00
Connecting to: mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.10.6
Using MongoDB: 7.0.0
Using Mongosh: 1.10.6
For mongosh info see: https://docs.mongodb.com/mongodb-shell/
To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy).
You can opt-out by running the disableTelemetry() command.
test>
use admin
db.createUser(
{
user: "ali",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
exit
mongosh -u ali -p --authenticationDatabase admin
Enter password: *********
Current Mongosh Log ID: 64eb1ed66fed4f50be41bc36
Connecting to: mongodb://<credentials>@127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&authSource=admin&appName=mongosh+1.10.6
Using MongoDB: 7.0.0
Using Mongosh: 1.10.6
For mongosh info see: https://docs.mongodb.com/mongodb-shell/
test>
use testdb
switched to db testdb
db.employeedetails.insertOne(
{F_Name: "Ahmad",
L_NAME: "Ahmadi",
ID_NO: "12345",
AGE: "30",
TEL: "1234567890"
}
)
show collections
جمعبندی