Meteor

Meteor framework: วิธีแก้ปัญหา Mongo Exit code 100

เรื่องที่เกี่ยวข้อง - , ,

Meteor framework นั้น ใช้ๆ ไปบางทีจะลืมไปว่าเรากำลังทำเว็บแอพที่มีฐานข้อมูล (Database) ทำงานควบคู่กันไปด้วย

ในบางครั้งการทำงานของเรา อาจจะทำให้เกิดปัญหาเปิด Mongo DB ไม่ขึ้นเมื่อใช้คำสั่ง meteor ในโปรเจคของเราก็เป็นได้ แบบตัวอย่างด้านล่างนี้

Unexpected mongo exit code 100. Restarting.   
Unexpected mongo exit code 100. Restarting.   
Unexpected mongo exit code 100. Restarting.   
Can't start Mongo server.                     
MongoDB had an unspecified uncaught exception.
This can be caused by MongoDB being unable to write to a local database.
Check that you have permissions to write to .meteor/local. MongoDB does
not support filesystems like NFS that do not allow file locking.

ไอ้หย๋า! MongoDB เปิดสตาร์ทไม่ติด แล้วเราจะทำงานต่อกันยังไงครับพี่น้องงงง?!

สาเหตุและวิธีแก้ปัญหา

อาจเกิดขึ้นได้จาก 2 ส่วนดังนี้

1. MongoDB ล็อคตัวเอง ทำให้ Meteor เริ่มการทำงานไม่ได้

อันนี้เกิดได้จากหลายสาเหตุ เช่น

  • ทำงานอยู่ แล้วจู่ๆ เครื่องดับ! หรือจอฟ้า! (หัวใจวาย)
  • ปิด MongoDB Server ผิดวิธี!

ด้วยเหตุการณ์ไม่คาดฝันนี้จะทำให้ MongoDB ล็อคตัวเองเพื่อให้เรา (ที่เป็นผู้ดูแลระบบเนี่ยล่ะ) จัดการสำรวจสถานการณ์ เพื่อป้องกันระบบข้อมูลล้มเหลวหลังจากเกิดเหตุการณ์ด้านบน

วิธีแก้มีทั้งแบบใช้คำสั่งเพื่อรีเซ็ทฐานข้อมูล (ข้อมูลที่มีอยู่จะถูกลบทั้งหมด)

meteor reset

หรือให้เข้าไปในโฟลเดอร์ของโปรเจคใน Terminal เช่นนี่คือโฟลเดอร์โปรเจคของโค้ชพล ชื่อ NextflowMyTweet

Teerasejs-MacBook-Air:NextflowMyTweet teerasej$

แล้วสั่งคำสั่งต่อไปนี้ เพื่อลบไฟล์ mongodb.lock ออก

rm .meteor/local/db/mongodb.lock

จากนั้นให้ลองสั่งคำสั่ง meteor เพื่อเริ่มระบบใหม่อีกครั้งจากโฟลเดอร์โปรเจค Meteor ของเรา

2. เราเอาโฟลเดอร์ของโปรเจค Meteor ไปไว้ใน Shared folder

อันนี้เป็นอีกเคสที่พี่น้องที่มาเรียนกับโค้ชพลเจอมาครับ

บางครั้ง เราอาจจะต้องการแชร์โปรเจคของเราไว้ในเครือข่าย (Network) โดยเอาไปไว้ในโฟลเดอร์ที่ตั้งค่าเอาไว้

ส่วนนี้ Meteor ไม่ชอบครับ ให้ลองย้ายโฟลเดอร์ของโปรเจค Meteor ออกมาไว้ด้านนอกโฟลเดอร์แล้วตามไปสั่งรันโปรเจคอีกครั้งดู

ติดตาม

อัพเดตใหม่เกี่ยวกับ Meteor ได้ที่แฟนเพจของ Nextflow หรือ YouTube Channel ของโค้ชพลได้เลย

เปิดอบรมสร้าง Cross Platform Mobile Application ด้วย Ionic Framework

เหมาะสำหรับคนทำเว็บ, เริ่มต้น JavaScript ES6 และ Angular เข้าใจง่าย, ใช้ได้จริง

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

โปรหน้าฝน! เรียนรอบสด รับคอร์สออนไลน์มูลค่ากว่า 5800 บาทฟรี!

อ้างอิง – StackOverflow (1,2), Meteor Forum

Loading Facebook Comments ...
Menu