כיצד לתקן שולחנות המסומנים רעים או מושחתים ב- MySQL

במשך יותר משנה השתמשנו בתוסף Counterizer עבור וורדפרס וכך שמרנו נתונים סטטיסטיים של הבלוג וקוראיו, תוסף זה הושבת לפני מספר ימים מאחר (בין היתר) הוא שמר יותר מ -600 מגה בייט נתונים במסד הנתונים.

קורה ש (לפני השבתת התוסף וניקוי ה- DB) ניסיתי לזרוק את מסד הנתונים, כלומר לייצא אותו ל- .SQL וכך להוריד אותו ובמסוף האירוח קיבלתי את השגיאה הבאה:

mysqldump: שגיאה: 144: טבלה './dl_database/Counterize_Referers' מסומנת כקרסה ותיקון אחרון (אוטומטי?) נכשל בעת שימוש בטבלאות נעילה

לכן, ההשלכה לא בוצעה וטוב... עצם הרעיון לחשוב שיש בעיה ב-DesdeLinux DB גרם לשיער שלי להזדקף 

עשיתי קצת מחקר באינטרנט הצלחתי ללמוד כיצד לפתור את הבעיה הזו, כנראה שזה לא שבמאגר הנתונים יש בעיות בדיוק, רק שהטבלה מסומנת כ'בעיות ', למרבה המזל זה מאוד פשוט לתקן.

ראשית בואו ניגש לשרת MySQL:

mysql -u root -p

אנו לוחצים על [Enter] וזה יבקש מאיתנו את סיסמת השורש של MySQL, שמנו אותה ולחץ שוב על [Enter].

פקודה זו היא במקרה ששרת MySQL מותקן באותו מחשב, אם ברצונך להתחבר מרחוק לשרת MySQL אחר עליך להוסיף את השורה הבאה לשורה: -h IP-OF-SERVER

ברגע שנכנס ל- MySQL נגיד לך באיזה מסד נתונים להשתמש, למשל הבעיה על פי השגיאה לעיל נמצאת בטבלה Counterize_Referers ממאגר המידע  dl_database, אז זה:

use database dl_database;

ועכשיו לתקן את בסיס השולחן:

repair table Counterize_Referers;

שימו לב שבסוף שורות אלו יש נקודה-פסיק —– »  ;

ברגע שהפקודה הקודמת בוצעה, הכל היה צריך לחזור לקדמותו, לפחות במקרה שלי זה היה ככה יותר מפעם אחת 

ואז נותר רק לבצע את ההוראה שוב לזרוק את מסד הנתונים וואלה, לא יותר.

בכל מקרה, אני עושה את זה יותר מכל כתזכיר לעצמי, שכן אותו דבר כבר קרה לי פעמיים ואני לא רוצה לשכוח את ההוראות להצלת המצב 

ברכות ואני מקווה שזה מועיל למישהו אחר.


הוסף כמקור מועדף