با سلام و درود، در حال حاضر خود سایت مونگو آموزش نصب پایاه داده مونگو روی اوبونتو ۱۸.۰۴ و ۱۶.۰۴ را ارائه کرده است. نصب روی اوبونتو ۲۰.۰۴ نیز همانند همان ۱۸.۰۴ می باشد.
قدم اول : افزودن پکیج رپوزیتوری MongoDB در اوبونتو
برای گرفتن آخرین نسخه از MongoDB باید رپوزیتوری به اوبونتو اضافه کنیم. برای این کار کافیست دستور زیر را اجرا کنید:
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
پس از افزودن رپوزیتوری (مخزن اوبونتو)، از دستور زیر استفاده کنید تا رپوزیتوری مونگو به سیستم اضافه شود:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
در دستور فوق از bionic استفاده شده، یعنی همان ۱۸.۰۴، ولی روی اوبونتو ۲۰.۰۴ یا Focalنیز جوابگو می باشد.
قدم دوم: نصب MongoDB روی اوبونتو 20.04
خب برای نصب کافیست دو دستور زیر را اجرا کنید:
sudo apt update sudo apt install mongodb-org
قدم سوم: مدیریت MongoDB
پس از نصب از دستورات زیر برای Stop، Start و Enableمونگو دیبی استفاده کنید:
sudo systemctl stop mongod.service sudo systemctl start mongod.service sudo systemctl enable mongod.service
به صورت پیش فرض، مونگو به پورت 27017 گوش می دهد. پس از نصل Local server باید بتواند با MongoDB ارتباط برقرار کند. برای آنکه متوجه شوید مونگو در حال اجرا است یا خیر، از دستور زیر استفاده کنید:
sudo systemctl status mongod
● mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-07-13 16:27:20 +0430; 21min ago Docs: https://docs.mongodb.org/manual Main PID: 112771 (mongod) Memory: 173.0M CGroup: /system.slice/mongod.service └─112771 /usr/bin/mongod --auth --config /etc/mongod.conf جولای 13 16:27:20 asemanexpress.local systemd[1]: Started MongoDB Database Server.
برای ارتباط با شل MongoDB از دستور زیر استفاده کنید:
mongo --host 127.0.0.1:27017
با چیزی شبیه زیر روبرو خواهید شد:
ongoDB shell version v4.2.8 connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("1b88c27f-e477-4a29-b562-835ee56591b5") } MongoDB server version: 4.2.6 Welcome to the MongoDB shell. For interactive help, type "help".
قدم چهارم: اضافه کردن کاربر ادمین
به صورت پیش فرض، authentication برای کاربران MongoDB فعال نمی باشد. در محیط های عملیاتی ممکن است نیاز داشته باشید که سرورتان را ایمن کنید و احراز هویت کاربر را فعال کنید.
برای این کار دستورات زیر را پیش روید، پس از لاگین به MongoDB server:
> use admin
سپس از دستور زیر برای ساخت یک کاربر ادمین استفاده کنید:
> db.createUser({user:"admin", pwd:"new_password_here", roles:[{role:"root", db:"admin"}]})
پس از دستور فوق خروجی زیر را خواهید دید:
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }
از محیط شل خارج شوید و MongoDB logon authentication را فعال کنید، دستور زیر را اجرا کنید تا فایل کانفیگ MongoDB باز شود:
sudo nano /lib/systemd/system/mongod.service
سپس خط ExecStart=/usr/bin/mongod –config /etc/mongod.conf را باید همانند زیر تغییر دهید (اضافه کردن –auth به آن)
[Unit] Description=MongoDB Database Server Documentation=https://docs.mongodb.org/manual After=network.target [Service] User=mongodb Group=mongodb EnvironmentFile=-/etc/default/mongod ExecStart=/usr/bin/mongod --auth --config /etc/mongod.conf PIDFile=/var/run/mongodb/mongod.pid # file size LimitFSIZE=infinity # cpu time LimitCPU=infinity # virtual memory size LimitAS=infinity # open files LimitNOFILE=64000 # processes/threads LimitNPROC=64000 # locked memory LimitMEMLOCK=infinity # total threads (user+kernel) TasksMax=infinity TasksAccounting=false # Recommended limits for for mongod as specified in # http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings [Install] WantedBy=multi-user.target
ذخیره و خارج شوید.
MongoDB را ری استارت کنید تا تغییرات اعمال شود:
sudo systemctl daemon-reload sudo service mongod restart
پس از نصب MongoDB فایل کانفیگ پیش فرض آن در مسیر /etc/mongod.conf قرار دارد.
پیشنهاد میشه تا authentication را فعال کنید تا تمامی گاربران بتوانند بدون انجام اهراز هویت به پیاگاه داده وصل شوند. برای این کار، فایل کانفیگ را باز کنید:
sudo nano /etc/mongod.conf
سپس دو خط زیر را در قسمت security آن وارد کنید:
security: authorization: enabled
محتویات فایل کانفیگ، به شکل زیر خواهد شد:
GNU nano 4.8 /etc/mongod.conf # mongod.conf # for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/ # Where and how to store data. storage: dbPath: /var/lib/mongodb journal: enabled: true # engine: # mmapv1: # wiredTiger: # where to write logging data. systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log # network interfaces net: port: 27017 bindIp: 127.0.0.1 # how the process runs processManagement: timeZoneInfo: /usr/share/zoneinfo #security: security: authorization: enabled #operationProfiling: #replication: #sharding: ## Enterprise-Only Options: #auditLog: #snmp:
سرویس مونگو را ریست کنید:
sudo service mongod restart
حال از دستور زیر استفاده کنید تا مطمین شوید رمز عبور تعریف شده برقرار است :
mongo -u admin -p --authenticationDatabase admin
ارسال پاسخ