کی بهتر از خود مدرس میتونه بهت مشاوره بده؟🤔 ۳۵٪ تخفیف + یک جلسه رایگان با خود مدرس🔥
۰ ثانیه
۰ دقیقه
۰ ساعت
۲۶ دیدگاه نظر نازنین کریمی مقدم
آموزش نصب mongodb روی ویندوز
آموزش نصب mongodb روی ویندوز

در مقاله‌ی مونگو دی بی چیست؟ با مونگو دی بی (MongoDB) و کاربردهای آن آشنا شدیم. آموختیم که مونگو دی بی پایگاه داده‌ی (Database) بسیار قدرتمندی است که در سطوح بالاتر توسعه‌ی نرم افزار و برنامه نویسی استفاده می‌شود. همچنین کوئری‌های ساده‌ای دارد و کار با آن، برای کسانی که تجربه‌ی حرفه‌ای در انجام پروژه‌های مختلف برنامه نویسی دارند کار چندان سختی نیست. در این مطلب می‌خواهیم به آموزش نصب mongodb روی ویندوز بپردازیم، تا بتوانید از قدرت این پایگاه داده بهره‌مند شوید. همان‌طور که می‌دانید MongoDB یکی از پرطرفدارترین پایگاه داده‌های NoSQL است که مزیت‌های زیادی در آن وجود دارد و امکانات خیلی خوبی را در اختیار کاربران قرار می‌دهد.

مرحله‌ی اول: نصب مونگو دی بی

برای نصب کردن این پایگاه داده در ابتدا وارد صفحه‌ی دانلود سایت مونگو دی بی شوید و آخرین نسخه را دانلود نمایید. توجه داشته باشید که برای این کار نیاز به پروکسی (Proxy) دارید؛ زیرا این سایت برای کاربران ایرانی قابل دسترس نمی‌باشد. بعد از دانلود بر روی فایل مورد نظر دو بار کلیک کنید و قوانین و شرایط آن را قبول کنید و بر روی گزینه next کلیک کنید و حالت Complete را انتخاب کرده و بر روی Install کلیک کنید. در انتها بر روی Finish کلیک کنید.

مرحله‌ی دوم: اضافه کردن MongoDB به متغیرهای سراسری

اگر مرحله‌ی اول را به درستی انجام داده و پوشه‌ی نصب را نیز همان طور پیش‌فرض انتخاب کرده باشید، در صورت وارد شدن به درایو C و مشاهده‌ی پوشه‌ی Program Files، می‌بینید که یک پوشه‌ی جدید با نام MongoDB اضافه شده است. حال برای راه اندازی سریع‌تر، بهتر است MongoDB را به متغیرهای سراسری و گلوبال ویندوز اضافه کنیم تا بتوانیم هر جایی که هستیم با استفاده از Command line یا CMD، پایگاه داده را باز کرده و با آن کار کنیم. برای این کار باید مسیر پوشه‌ی bin در MongoDB را کپی کنید.

آموزش نصب mongodb روی ویندوز

در Control Panel بر روی Advanced system settings کلیک کنید و در پایین بر روی Environment variables کلیک کنید:

آموزش نصب mongodb روی ویندوزحالا بر روی Path دوبار کلیک کنید:

آموزش نصب mongodb روی ویندوز

بعد از باز شدن اطلاعات مربوط به مسیر یا Path، بر روی گزینه‌ی New کلیک کنید و مسیر کپی شده ( به عنوان مثال این مسیر: C:\Program Files\MongoDB\Server\3.6\bin ) را وارد کرده و OK را بزنید.

آموزش نصب mongodb روی ویندوز

مرحله‌ی سوم: ساخت پوشه‌ی دیتا

در این مرحله باید یک پوشه برای data در ریشه درایو C بسازید و دو پوشه‌ی db و log را درون این پوشه قرار دهید. MongoDB به صورت پیش فرض اطلاعات مورد نظر را در این پوشه‌ها ذخیره می‌کند.

مرحله‌ی چهارم: اجرا کردن سرور و اتصال به آن

سرور MongoDB را اجرا کنید. برای این کار CMD را باز و mongod را تایپ کرده وگزینه‌ی Enter را ‌بزنید:

آموزش نصب mongodb روی ویندوز

مشاهده می‌کنید که سرور مونگو دی بی اجرا شده و حالا باید CMD را باز گذاشته و از جاهای دیگر به آن وصل شوید و از آن استفاده کنید. برای این کار می‌توانید از یک CMD دیگر با دستور mongo به این سرور وصل شوید و با پایگاه داده کار کنید. همچنین می‌توانید با نرم افزارهای مختلفی که در این زمینه وجود دارد، که معروف‌ترین آن Robo Mongo هست نیز این کار را انجام دهید. ما در اینجا راه اول را انتخاب کرده و یک CMD دیگر را باز می‌کنیم و mongo را تایپ کرده و گزینه‌ی enter را می‌زنیم:

آموزش نصب mongodb روی ویندوز

مرحله‌ی پنجم: ساخت فایل تنظیمات mongod.cfg

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

برای این کار وارد مسیری که MongoDB را نصب کردید ( مانند C:\Program Files\MongoDB\Server\3.6) شوید و یک فایل با نام mongod.cfg بسازید و کدهای زیر را درون آن قرار دهید:

systemLog:
    destination: file
    path: c:\data\log\mongod.log
storage:
    dbPath: c:\data\db

می‌بینید که مسیر پوشه‌های ساخته شده در data را در اینجا مشخص کردیم.

مرحله‌ی ششم: ساخت سرویس MongoDB8

یک CMD را به صورت Run as administrator راه اندازی کنید و کد زیر را درون آن قرار دهید و Enter بزنید:

sc.exe create MongoDB binPath= "\"C:\Program Files\MongoDB\Server\3.6\bin\mongod.exe\" --service --config=\"C:\Program Files\MongoDB\Server\3.6\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"
آموزش نصب mongodb روی ویندوز

همان‌طور که می‌بینید سرویس مورد نظر با موفقیت ساخته شد.

مرحله‌ی هفتم: راه اندازی سرویس MongoDB

برای این کار در همان CMD که باز هست دستور زیر را وارد کنید:

net start MongoDB

در اینجا اگر مراحل را درست انجام داده باشید، می‌بینید که سرویس MongoDB با موفقیت راه اندازی شده است. حال اگر Task manager را باز کنید و وارد بخش Service‌ها شوید، MongoDB را همانند شکل زیر خواهید دید:

آموزش نصب mongodb روی ویندوز

وضعیت سرویس Running است و هر بار که سیستم بالا بیاید، MongoDB هم به طور خودکار راه اندازی شده و می‌توان از هر طریقی که مایل بودید به آن متصل شده و کار کنید. برای توقف و حذف کردن این سرویس از دستورهای زیر استفاده کنید:

// Stop serrvice
net stop MongoDB
// Delete service
sc.exe delete MongoDB

جمع‌بندی:

در این مقاله با آموزش نصب MongoDB روی ویندوز آشنا شدیم و نحوه‌ی ساخت و اجرای یک سرویس در ویندوز را نیز یاد گرفتیم. اگر در مراحل نصب سوالی دارید یا دچار مشکلی شدید، آن را با ما و سایر کاربران به اشتراک بگذارید.

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

۲۶ دیدگاه
ما همه سوالات و دیدگاه‌ها رو می‌خونیم و پاسخ میدیم
حیدر ۱۰ مهر ۱۴۰۲، ۱۱:۲۴

سلام من در cmd دستور mongod رو می‌زنم ولی این دستورات میاد اخرین نسخه رو هم نصب کردم نشد ممنون میشم راهنمایی کنید Microsoft Windows [Version 10.0.19045.3448] (c) Microsoft Corporation. All rights reserved. C:\Users\pc-_-sorena>mongod {"t":{"$date":"2023-10-02T14:53:05.683+03:30"},"s":"I", "c":"NETWORK", "id":4915701, "ctx":"thread1","msg":"Initialized wire specification","attr":{"spec":{"incomingExternalClient":{"minWireVersion":0,"maxWireVersion":17},"incomingInternalClient":{"minWireVersion":0,"maxWireVersion":17},"outgoing":{"minWireVersion":6,"maxWireVersion":17},"isInternalClient":true}}} {"t":{"$date":"2023-10-02T14:53:05.684+03:30"},"s":"I", "c":"CONTROL", "id":23285, "ctx":"thread1","msg":"Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'"} {"t":{"$date":"2023-10-02T14:53:05.685+03:30"},"s":"I", "c":"NETWORK", "id":4648602, "ctx":"thread1","msg":"Implicit TCP FastOpen in use."} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"REPL", "id":5123008, "ctx":"thread1","msg":"Successfully registered PrimaryOnlyService","attr":{"service":"TenantMigrationDonorService","namespace":"config.tenantMigrationDonors"}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"REPL", "id":5123008, "ctx":"thread1","msg":"Successfully registered PrimaryOnlyService","attr":{"service":"TenantMigrationRecipientService","namespace":"config.tenantMigrationRecipients"}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"REPL", "id":5123008, "ctx":"thread1","msg":"Successfully registered PrimaryOnlyService","attr":{"service":"ShardSplitDonorService","namespace":"config.tenantSplitDonors"}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"CONTROL", "id":5945603, "ctx":"thread1","msg":"Multi threading initialized"} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"CONTROL", "id":4615611, "ctx":"initandlisten","msg":"MongoDB starting","attr":{"pid":18920,"port":27017,"dbPath":"C:/data/db/","architecture":"64-bit","host":"DESKTOP-P0M27ED"}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"CONTROL", "id":23398, "ctx":"initandlisten","msg":"Target operating system minimum version","attr":{"targetMinOS":"Windows 7/Windows Server 2008 R2"}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"CONTROL", "id":23403, "ctx":"initandlisten","msg":"Build Info","attr":{"buildInfo":{"version":"6.0.10","gitVersion":"8e4b5670df9b9fe814e57cb5f3f8ee9407237b5a","modules":[],"allocator":"tcmalloc","environment":{"distmod":"windows","distarch":"x86_64","target_arch":"x86_64"}}}} {"t":{"$date":"2023-10-02T14:53:05.686+03:30"},"s":"I", "c":"CONTROL", "id":51765, "ctx":"initandlisten","msg":"Operating System","attr":{"os":{"name":"Microsoft Windows 10","version":"10.0 (build 19045)"}}} {"t":{"$date":"2023-10-02T14:53:05.687+03:30"},"s":"I", "c":"CONTROL", "id":21951, "ctx":"initandlisten","msg":"Options set by command line","attr":{"options":{}}} {"t":{"$date":"2023-10-02T14:53:05.688+03:30"},"s":"I", "c":"STORAGE", "id":22270, "ctx":"initandlisten","msg":"Storage engine to use detected by data files","attr":{"dbpath":"C:/data/db/","storageEngine":"wiredTiger"}} {"t":{"$date":"2023-10-02T14:53:05.688+03:30"},"s":"I", "c":"STORAGE", "id":22315, "ctx":"initandlisten","msg":"Opening WiredTiger","attr":{"config":"create,cache_size=7586M,session_max=33000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,remove=true,path=journal,compressor=snappy),builtin_extension_config=(zstd=(compression_level=6)),file_manager=(close_idle_time=600,close_scan_interval=10,close_handle_minimum=2000),statistics_log=(wait=0),json_output=(error,message),verbose=[recovery_progress:1,checkpoint_progress:1,compact_progress:1,backup:0,checkpoint:0,compact:0,evict:0,history_store:0,recovery:0,rts:0,salvage:0,tiered:0,timestamp:0,transaction:0,verify:0,log:0],"}} {"t":{"$date":"2023-10-02T14:53:06.007+03:30"},"s":"I", "c":"STORAGE", "id":4795906, "ctx":"initandlisten","msg":"WiredTiger opened","attr":{"durationMillis":319}} {"t":{"$date":"2023-10-02T14:53:06.007+03:30"},"s":"I", "c":"RECOVERY", "id":23987, "ctx":"initandlisten","msg":"WiredTiger recoveryTimestamp","attr":{"recoveryTimestamp":{"$timestamp":{"t":0,"i":0}}}} {"t":{"$date":"2023-10-02T14:53:06.012+03:30"},"s":"W", "c":"CONTROL", "id":22120, "ctx":"initandlisten","msg":"Access control is not enabled for the database. Read and write access to data and configuration is unrestricted","tags":["startupWarnings"]} {"t":{"$date":"2023-10-02T14:53:06.013+03:30"},"s":"W", "c":"CONTROL", "id":22140, "ctx":"initandlisten","msg":"This server is bound to localhost. Remote systems will be unable to connect to this server. Start the server with --bind_ip <address> to specify which IP addresses it should serve responses from, or with --bind_ip_all to bind to all interfaces. If this behavior is desired, start the server with --bind_ip 127.0.0.1 to disable this warning","tags":["startupWarnings"]} {"t":{"$date":"2023-10-02T14:53:06.014+03:30"},"s":"I", "c":"NETWORK", "id":4915702, "ctx":"initandlisten","msg":"Updated wire specification","attr":{"oldSpec":{"incomingExternalClient":{"minWireVersion":0,"maxWireVersion":17},"incomingInternalClient":{"minWireVersion":0,"maxWireVersion":17},"outgoing":{"minWireVersion":6,"maxWireVersion":17},"isInternalClient":true},"newSpec":{"incomingExternalClient":{"minWireVersion":0,"maxWireVersion":17},"incomingInternalClient":{"minWireVersion":17,"maxWireVersion":17},"outgoing":{"minWireVersion":17,"maxWireVersion":17},"isInternalClient":true}}} {"t":{"$date":"2023-10-02T14:53:06.015+03:30"},"s":"I", "c":"REPL", "id":5853300, "ctx":"initandlisten","msg":"current featureCompatibilityVersion value","attr":{"featureCompatibilityVersion":"6.0","context":"startup"}} {"t":{"$date":"2023-10-02T14:53:06.015+03:30"},"s":"I", "c":"STORAGE", "id":5071100, "ctx":"initandlisten","msg":"Clearing temp directory"} {"t":{"$date":"2023-10-02T14:53:06.016+03:30"},"s":"I", "c":"CONTROL", "id":20536, "ctx":"initandlisten","msg":"Flow Control is enabled on this deployment"} {"t":{"$date":"2023-10-02T14:53:06.089+03:30"},"s":"I", "c":"FTDC", "id":20625, "ctx":"initandlisten","msg":"Initializing full-time diagnostic data capture","attr":{"dataDirectory":"C:/data/db/diagnostic.data"}} {"t":{"$date":"2023-10-02T14:53:06.092+03:30"},"s":"I", "c":"REPL", "id":6015317, "ctx":"initandlisten","msg":"Setting new configuration state","attr":{"newState":"ConfigReplicationDisabled","oldState":"ConfigPreStart"}} {"t":{"$date":"2023-10-02T14:53:06.092+03:30"},"s":"I", "c":"STORAGE", "id":22262, "ctx":"initandlisten","msg":"Timestamp monitor starting"} {"t":{"$date":"2023-10-02T14:53:06.093+03:30"},"s":"I", "c":"NETWORK", "id":23015, "ctx":"listener","msg":"Listening on","attr":{"address":"127.0.0.1"}} {"t":{"$date":"2023-10-02T14:53:06.093+03:30"},"s":"I", "c":"NETWORK", "id":23016, "ctx":"listener","msg":"Waiting for connections","attr":{"port":27017,"ssl":"off"}}

نازنین کریمی مقدم ۲۴ مهر ۱۴۰۲، ۰۶:۵۲

درود این تاپیک رو بررسی کنید: https://stackoverflow.com/questions/73150918/when-i-try-to-run-mongodb-this-warning-showed

۱۲ آبان ۱۴۰۱، ۱۶:۵۶

با سلام و وقت بخیر... دستور mongo رو میزنم اما اجرا نمیشه و میگه این فرمان رو نمیشناسه... علتش چیه؟ متن ارور: &amp;#39;mongo&amp;#39; is not recognized as an internal or external command, operable program or batch file.

نازنین کریمی مقدم ۱۳ آبان ۱۴۰۱، ۱۵:۳۱

درود <a href="https://stackoverflow.com/questions/51224959/mongo-is-not-recognized-as-an-internal-or-external-command-operable-program-o" target="_blank" rel="noopener nofollow ugc">این لینک</a> رو ببینید.

۲۰ بهمن ۱۴۰۰، ۰۸:۱۱

سلام خسته نباشید ممنونم من یک وی پی اس ویندوزی تهیه کردم و مانگو دیبی رو روی اون نصب کردم مشکلی با کار کردن با خود دستورات مانگو دیبی ندارم اما میخوام مانگو رو به اپلیکیشنی که دارم مینویسم متصل کنم که نمیشه فک میکنم نمیتونم String Connection درست رو بوجود بیارم . final String uriString = &amp;quot;mongodb://185.105.239.70:27017 از این کانکشن استرینگ استفاده میکنم که اون مقدار ایپی در واقع همون ip ای هستش که با remote به سرور متصل میشم لطفا راهنمایی کنید اینترنتو زیرو رو کردم نتیجه ای نداشتم

نازنین کریمی مقدم ۲۳ بهمن ۱۴۰۰، ۰۶:۰۱

سلام روندتون درست و بدون ایراد هست. منتها در کامنت قبلی لینک دوم طبق دستور و مرحله به مرحله دوباره چک بزنید تا تغییرات رو سرورتون بشینه (بازبودن پورت + ریست سیستم و..) درضمن برای اتصال، در انتهای آدرس کانکشن که نوشتید باید نام دیتابیس هم قرار بگیره. شاید بد نباشه پورت رو هم یدور چک کنید اگر اوکی بود از آدرس بردارید.

milad ۱۴ آذر ۱۴۰۰، ۱۹:۱۸

سلام برای اجرا حتما باید این مرحله‌ها رو طی کنیم ؟ سرویس mongodb بعد از نصب خودش اجرا میشه و اشتباه کانفیگ نکنیم ؟

Nazanin KarimiMoghaddam ۱۵ آذر ۱۴۰۰، ۰۶:۰۹

درود بله بهتر هست که مراحل رو طی کنید و یکبار برای همیشه تنظیمات رو انجام بدید تا آسوده باشید :)

کیان ۰۷ تیر ۱۴۰۰، ۰۷:۵۰

با سلام آیا امکان دارد که مونگو دی بی را روی یک سرور نصب کنم و iis برنامه روی سرور دیگری باشد و بتوانند با هم ارتباط برقرار نمایند. با تشکر

نازنین کریمی مقدم ۰۷ تیر ۱۴۰۰، ۱۰:۴۰

درود از لحاظ فنی امکانپذیر هست اما باید به موارد امنیتی توجه داشته باشید. توصیه میکنم <a href="https://stackoverflow.com/questions/23267612/can-create-a-remote-server-with-mongodb-how" target="_blank" rel="noopener nofollow ugc">این پست استک</a> رو مطالعه کنید.

سعید ۰۵ تیر ۱۴۰۰، ۰۸:۲۳

با سلام وو قت بخیر خوبین من ویندوز 8 دارم و نمیتونه منگو دی بیرو نصب کنه راهی هست؟ ممنونمیشم راهنمایی کنین

نازنین کریمی مقدم ۰۵ تیر ۱۴۰۰، ۱۷:۲۹

سلام متاسفانه مونگو 4.4 پشتیبانی شو از ویندوزهای پایین 10 برداشته، میتونید در <a href="https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/" target="_blank" rel="noopener nofollow ugc">داکیومنتهای رسمی سایت</a> هم بخونید. میتونید ورژن مونگو رو هنگام دانلود پایینتر انتخاب کنید (یادمه که ورژن 2 جواب میداد اما ورژن 3 رو مطمئن نیستم باید بررسی کنید) یا از مونگو کلاد که فضای ابری در اختیارتون قرار میده استفاده کنید و چیزی نصب نکنید.

morteza ۰۶ اردیبهشت ۱۴۰۰، ۰۹:۴۶

ممنون ولی بدون مرحله ششم هم برا من کار کرد موفق باشید

ahmad ۱۵ دی ۱۳۹۹، ۰۸:۲۶

بعد از این کامند این ارور رو بم میده net start MongoDB. More help is available by typing NET HELPMSG پ

نازنین کریمی مقدم ۱۵ دی ۱۳۹۹، ۱۵:۴۷

درود. شما باید فایل لاگ رو نگاه کنید تا ببینید مشکل دقیقا رو چیه. اما بر اساس تجربه میتونم بهتون بگم که این خطا وقتی ایجاد میشه که اسم فایل کانفیگتون مثلا mongod.conf هست اما دستور مرحله ششم با نام mongod.cfg میخواد متصل بشه. بررسی کنید که اگر مشکل از همین بود، فایل با دستور رو همنام کنید. در غیر این صورت بفرمایید تا با هم بیشتر بررسی کنیم و مشکل رو حل کنیم.

متینه ۱۴ اردیبهشت ۱۳۹۹، ۱۸:۴۷

سلام من mongo DB را با موفقیت نصب کردم ولی زمانیکه mongodb compass رو باز می‌کنم روی صفحه activating plugins باقی میمونه . کسی میدونه باید پکار کنم؟

saharahsani ۱۴ آبان ۱۳۹۷، ۲۳:۲۴

سلام ممنونم از پاسخگوييتون.. ببخشيد من تو Replication يکم مشکل دارم ممنون ميشم اگه کار کرديد راهنمايي کنيد. اگر تو کد نگاه کنيد من سه تا replica set ساختم که اولي (پورت 1000) primery است و پورت 2000 و 3000 , secondary هستند اما براي اين پورت‌ها توي "stateStr" نوشته "(not reachable/healthy)" به جاي secondary ... چراا؟؟! درواقع اون پورت‌ها secondary نشدن. توي داکيومنت mongodb هم ظاهرا گفته شده publicKey و priveteKey و فايل هاي mongodb.pem و .. نياز هست داشته باشيم. اما اين فايل‌ها محتوتاش بايد چي بزاريم؟؟ درست متوجهش نشدم.. ممنون ميشم اگر توضيح بدين. روي mongodb version 3.6.8 کار ميکنم.[codeBox]MongoDB Enterprise rs0-0:PRIMARY&gt; rs.status() { &quot;set&quot; : &quot;rs0-0&quot;, &quot;date&quot; : ISODate(&quot;2018-11-05T22:26:56.674Z&quot;), &quot;myState&quot; : 1, &quot;term&quot; : NumberLong(1), &quot;syncingTo&quot; : &quot;&quot;, &quot;syncSourceHost&quot; : &quot;&quot;, &quot;syncSourceId&quot; : -1, &quot;heartbeatIntervalMillis&quot; : NumberLong(2000), &quot;optimes&quot; : { &quot;lastCommittedOpTime&quot; : { &quot;ts&quot; : Timestamp(1541456814, 1), &quot;t&quot; : NumberLong(1) }, &quot;readConcernMajorityOpTime&quot; : { &quot;ts&quot; : Timestamp(1541456814, 1), &quot;t&quot; : NumberLong(1) }, &quot;appliedOpTime&quot; : { &quot;ts&quot; : Timestamp(1541456814, 1), &quot;t&quot; : NumberLong(1) }, &quot;durableOpTime&quot; : { &quot;ts&quot; : Timestamp(1541456814, 1), &quot;t&quot; : NumberLong(1) } }, &quot;members&quot; : [ { &quot;_id&quot; : 0, &quot;name&quot; : &quot;localhost:1000&quot;, &quot;health&quot; : 1, &quot;state&quot; : 1, &quot;stateStr&quot; : &quot;PRIMARY&quot;, &quot;uptime&quot; : 25701, &quot;optime&quot; : { &quot;ts&quot; : Timestamp(1541456814, 1), &quot;t&quot; : NumberLong(1) }, &quot;optimeDate&quot; : ISODate(&quot;2018-11-05T22:26:54Z&quot;), &quot;syncingTo&quot; : &quot;&quot;, &quot;syncSourceHost&quot; : &quot;&quot;, &quot;syncSourceId&quot; : -1, &quot;infoMessage&quot; : &quot;&quot;, &quot;electionTime&quot; : Timestamp(1541431598, 1), &quot;electionDate&quot; : ISODate(&quot;2018-11-05T15:26:38Z&quot;), &quot;configVersion&quot; : 3, &quot;self&quot; : true, &quot;lastHeartbeatMessage&quot; : &quot;&quot; }, { &quot;_id&quot; : 1, &quot;name&quot; : &quot;localhost:2000&quot;, &quot;health&quot; : 0, &quot;state&quot; : 8, &quot;stateStr&quot; : &quot;(not reachable/healthy)&quot;, &quot;uptime&quot; : 0, &quot;optime&quot; : { &quot;ts&quot; : Timestamp(0, 0), &quot;t&quot; : NumberLong(-1) }, &quot;optimeDurable&quot; : { &quot;ts&quot; : Timestamp(0, 0), &quot;t&quot; : NumberLong(-1) }, &quot;optimeDate&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;optimeDurableDate&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;lastHeartbeat&quot; : ISODate(&quot;2018-11-05T22:26:55.635Z&quot;), &quot;lastHeartbeatRecv&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;pingMs&quot; : NumberLong(0), &quot;lastHeartbeatMessage&quot; : &quot;replica set IDs do not match, ours: 5be0612c5ec90f13546a8057; remote node's: 5be06953187dc649b5c18f79&quot;, &quot;syncingTo&quot; : &quot;&quot;, &quot;syncSourceHost&quot; : &quot;&quot;, &quot;syncSourceId&quot; : -1, &quot;infoMessage&quot; : &quot;&quot;, &quot;configVersion&quot; : -1 }, { &quot;_id&quot; : 2, &quot;name&quot; : &quot;localhost:3000&quot;, &quot;health&quot; : 0, &quot;state&quot; : 8, &quot;stateStr&quot; : &quot;(not reachable/healthy)&quot;, &quot;uptime&quot; : 0, &quot;optime&quot; : { &quot;ts&quot; : Timestamp(0, 0), &quot;t&quot; : NumberLong(-1) }, &quot;optimeDurable&quot; : { &quot;ts&quot; : Timestamp(0, 0), &quot;t&quot; : NumberLong(-1) }, &quot;optimeDate&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;optimeDurableDate&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;lastHeartbeat&quot; : ISODate(&quot;2018-11-05T22:26:55.635Z&quot;), &quot;lastHeartbeatRecv&quot; : ISODate(&quot;1970-01-01T00:00:00Z&quot;), &quot;pingMs&quot; : NumberLong(0), &quot;lastHeartbeatMessage&quot; : &quot;Our set name of rs0-2 does not match name rs0-0 reported by remote node&quot;, &quot;syncingTo&quot; : &quot;&quot;, &quot;syncSourceHost&quot; : &quot;&quot;, &quot;syncSourceId&quot; : -1, &quot;infoMessage&quot; : &quot;&quot;, &quot;configVersion&quot; : -1 } ], &quot;ok&quot; : 1, &quot;operationTime&quot; : Timestamp(1541456814, 1), &quot;$clusterTime&quot; : { &quot;clusterTime&quot; : Timestamp(1541456814, 1), &quot;signature&quot; : { &quot;hash&quot; : BinData(0,&quot;AAAAAAAAAAAAAAAAAAAAAAAAAAA=&quot;), &quot;keyId&quot; : NumberLong(0) } } } [/codeBox]

محمد اسفندیاری ۱۵ آبان ۱۳۹۷، ۰۳:۲۵

سلام این دو تا لینک رو ببینید کمکتون میکنه: https://serverfault.com/questions/909071/mongodb-secondary-replica-permanently-in-not-reachable-healthy-state https://docs.mongodb.com/manual/tutorial/enforce-keyfile-access-control-in-existing-replica-set/

saharahsani ۰۶ آبان ۱۳۹۷، ۲۲:۵۱

سلام ممنونم.. وقتي که دستور mongod رو توي cmd ميزنم ميگه که tls/ssl فعال نيست. براي فعال سازيش هم همين کاري که گفته رو انجام ميدم اما باز خطا ميده .(خروجيش رو ببينيد) توي تصويري که شما گذاشتين بعد اجراي mongod , هيچ ايرادي از ssl نميگيره و اينکه open ssl دارين تو تصوير , اما واسه من اينجوري نيست .. بايد open ssl رو جدا نصب کنم؟؟ توي داکيومنت سايت mongo db هم يسري توضيحات داده ظاهرا يه فايل pem. و.. ميخواد ولي من اصلا اين چيزا رو تو پوشه نصب ندارم. ميشه يه لطف کنيد توضيح بديد که چجوري ميتونم اين مشکل رو حل کنم؟ فکر کنم يکي از مشکلاتم توي sharding و replication , همين مساله باشه.. کانکت نشدن پورت‌ها و... ممنون ميشم اگه راهنمايي کنيد.[codeBox]2018-10-27T23:11:05.753+0330 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none' 2018-10-27T23:11:06.212+0330 I CONTROL [initandlisten] MongoDB starting : pid=6 984 port=27017 dbpath=C:\data\db\ 64-bit host=Parsian-PC 2018-10-27T23:11:06.212+0330 I CONTROL [initandlisten] targetMinOS: Windows 7/W indows Server 2008 R2 2018-10-27T23:11:06.212+0330 I CONTROL [initandlisten] db version v4.0.3 2018-10-27T23:11:06.212+0330 I CONTROL [initandlisten] git version: 7ea530946fa 7880364d88c8d8b6026bbc9ffa48c 2018-10-27T23:11:06.213+0330 I CONTROL [initandlisten] allocator: tcmalloc 2018-10-27T23:11:06.213+0330 I CONTROL [initandlisten] modules: none 2018-10-27T23:11:06.213+0330 I CONTROL [initandlisten] build environment: 2018-10-27T23:11:06.213+0330 I CONTROL [initandlisten] distmod: 2008pl[/codeBox]

محمد اسفندیاری ۰۷ آبان ۱۳۹۷، ۰۳:۵۴

احتمالا شما نسخه MongoDB 4 رو دانلود و نصب کردید و این نسخه نسبت به نسخه‌های قبلی تغییراتی کرده است که در آدرس زیر میتونین ببینید: https://docs.mongodb.com/manual/release-notes/4.0-compatibility/ شما باید برای حل کردن این مشکل TLS 1.0 رو غیر فعال کنید و روش اون در این قسمت گفته شده است: https://docs.mongodb.com/manual/release-notes/4.0-compatibility/#disable-tls-1-0 موفق باشید

saharahsani ۰۳ آبان ۱۳۹۷، ۲۳:۴۳

ممنون از پاسخگوييتون.. ببخشيد در مورد sharding mongodb يکم مشکل داشتم , چجوري ميتونم سوالاتمو بپرسم؟ و بعد يه سوال ديگه آيا توي robomongo ميشه عمل sharding رو انجام داد؟ براي تست رو لوکال

محمد اسفندیاری ۰۵ آبان ۱۳۹۷، ۰۳:۴۶

در مورد sharding خیلی اطلاع ندارم متاسفانه میتونین لینکهای زیر رو ببینید و فکر کنم کمکتون کنه: https://sanaulla.info/2015/02/02/setting-up-sharded-mongodb-cluster-in-localhost/ https://coderwall.com/p/bzz1ra/set-up-mongodb-shard-windows-local فک نکنم robomongo این کار رو انجام بده ولی اگر سایت mongodb بتونین حالت cloud که پولی هست رو تهیه کنید، sharding در اون پیاده سازی شده است. موفق باشید

saharahsani ۲۵ مهر ۱۳۹۷، ۲۳:۰۱

سلام ببخشيد ميشه يکم دقيق‌تر توضيح بدين براي نصب mongo db روي ويندوز کدوم رو بايد دانلود کنيم؟ آيا بايد تويه صفحه دانلود ,بريم تو تب community server و اون فايل .msi رو دانلود کنيم, يا بخش ديگه؟؟

محمد اسفندیاری ۲۶ مهر ۱۳۹۷، ۰۹:۳۷

بله باید همینکاری که گفتید رو انجام بدین

Tabesh Rouhani ۲۴ مهر ۱۳۹۷، ۱۴:۰۶

ok شد دوست من بالاخره پیداش کردم MongoDB Compass Community رو باید نصب میکردم

محمد اسفندیاری ۲۵ مهر ۱۳۹۷، ۰۸:۲۴

آها منظورتون نرم افزار GUI برای کار کردن با MongoDB بوده. اوکی خیلی هم خوب البته شما میتونین از RoboMongo هم استفاده کنید موفق باشید

  • مرحله‌ی اول: نصب مونگو دی بی
  • مرحله‌ی دوم: اضافه کردن MongoDB به متغیرهای سراسری
  • مرحله‌ی سوم: ساخت پوشه‌ی دیتا
  • مرحله‌ی چهارم: اجرا کردن سرور و اتصال به آن
  • مرحله‌ی پنجم: ساخت فایل تنظیمات mongod.cfg
  • مرحله‌ی ششم: ساخت سرویس MongoDB8
  • مرحله‌ی هفتم: راه اندازی سرویس MongoDB
اشتراک گذاری مقاله در :