שרתים ומסדי נתונים | mongodb השתגע!
-
@LEVI-H
כמו שאפשר לראות יש שגיאות במנוע האחסון של מונגו (שנקרא WiredTiger).
בגדול תצטרך לגבות את כל הנתונים של MongoDB שאתה צריך (אמור להיות בפורמט bson או tar).
את הגיבוי תוכל לבצע עם אחד הכלים הרלוונטים לכך, כדוגמת mongodump או mongorestore.
(אני מכיר בעיקר את mongodump. תוכל ליצור קובץ גיבוי חדש באמצעות:mongodump --db <database_name> --out <output_directory>
את <database_name> תחליף בשם המסד שתרצה לגבות, ו<output_directory> אם שם תיקית היעד, למשל תיקיית הHome, יווצר הרבה קבצי BSON לכל מסד נתונים או קולקשן, מומלץ להוסיף את הדגל --archive כדי ליצור קובץ tar (קובץ דחוס) שיכיל את כל קבצי הגיבוי, במקום לקבל עשרות קבצי גיבוי בתיקיה).
לאחר הגיבוי תצטכך למחוק את /var/lib/mongodb ולהפעיל מחדש את מונגו. זה יצור קובץ WiredTiger.wt חדש. אם הוא לא יצור - תוכל ליצור ידנית.
בסוף, תצטרך לשחזר את הגיבוי למסד החדש.
אם זה בפורמט bson תוכל להשתמש בכלי mongorestore לייבוא המידע. משהו כזה:mongorestore --db <database_name> <path_to_bson_file>
או לTar:
tar -xvf <path_to_tar_file> -C /var/lib/mongodb/
זה תהליך מסוכן ולא וודאי, ולכן אעדיף שלא להיכנס אליו. מאמין שמומחי הפורום יוכלו לעזור בזה יותר (אני לא ממש מבין בזה, אני משתמש בMongo כמסד נתונים, אין לי ידע איך לפתור את התקלות שלו...).
-
@יושב-אהלים אוקי, תודה רבה.
לבנתיים, אני מצאתי את הקובץ הזה
הקטע הוא שיש רק קובץ אחד כזה, ולי יש כמה מסדי נתונים, הוא כאילו מכיל את המידע של כולם?מצאתי עוד קבצים בתיקייה /var/lib/mongodb/diagnostic.data#
זה נראה כמו גיבוי לפי תאריכים או משהו, לא?