چگونه سرویس mongodb-community را با Homebrew روی macOS با اصلاح دسترسیها اجرا کنیم
لینک مطلب به انگلیسی در وبلاگ hamidreza.tech
هنگام نصب نسخهی Community از MongoDB روی مکبوک خودم با استفاده از Homebrew (مستندات رسمی MongoDB)، با مشکلی مواجه شدم: سرویس mongodb-community
به نظر میرسید که با موفقیت شروع به کار کرده، اما وقتی وضعیت آن را بررسی کردم به صورت خطا نمایش داده شد. اگر شما هم با همین مشکل مواجه هستید، این راهنما میتواند به شما کمک کند.
پس از اجرای دستور زیر:
brew services start mongodb-community
پیام تأیید دریافت کردم. با این حال، وقتی وضعیت سرویس را بررسی کردم:
brew services list
این نتیجه نمایش داده شد:
Name Status User Plist mongodb-community error
فایل لاگ MongoDB (/usr/local/var/log/mongodb/mongo.log
) شامل هشدارهایی بود:
"You are running this process as the root user, which is not recommended"
"Received signal","attr":{"signal":15,"error":"Terminated: 15"}}
این هشدارها نشان میداد که MongoDB به عنوان کاربر root اجرا شده است، که این میتواند باعث مشکلات دسترسی و توقف سرویس شود.
مشکل اصلی مربوط به مالکیت نادرست دایرکتوریهای داده و لاگ MongoDB بود. در اینجا مراحل رفع این مشکل آمده است:
brew services stop mongodb-community
pkill -f mongod
sudo chown -R $(whoami) /usr/local/var/mongodb
sudo chown -R $(whoami) /usr/local/var/log/mongodb
ls -ld /usr/local/var/mongodb
ls -ld /usr/local/var/log/mongodb
brew services start mongodb-community
brew services list
mongosh
با اصلاح دسترسی دایرکتوریها و اطمینان از اجرای MongoDB تحت حساب کاربری خود (و نه به عنوان root)، میتوانید خطای مرتبط با شروع سرویس mongodb-community
با Homebrew روی macOS را برطرف کنید. به یاد داشته باشید که از استفاده از sudo
با دستورات brew
اجتناب کنید تا از مشکلات اینچنین جلوگیری شود.