Skip to main content

מהו mysqldump וכיצד אני משתמש בו?

לימודי PHP - מתקינים שרת XAMPP ותוכנת עריכה חכמה NETBEANS (יוני 2026)

לימודי PHP - מתקינים שרת XAMPP ותוכנת עריכה חכמה NETBEANS (יוני 2026)
Anonim

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

מה משמש Mysqldump?

ה mysqldump כלי יש לך מכוסה עבור שני מצבים אלה. זה פונקציה בסיסית היא לקחת מסד נתונים MySQL ו "לזרוק" את זה בתור קובץ טקסט. אבל לא רק כל קובץ טקסט … הקובץ הוא קבוצה של משפטי SQL. הצהרות אלה, כאשר מבוצעות, יבנו מחדש את מסד הנתונים שלך למצב המדויק שבו היה כאשר ביצעת את המזבלה.

אז אתה יכול להשתמש mysqldump לקחת יצוא של מסד נתונים. אלה יכולים להיות לצורך גיבויים, או בגלל שאתה מעביר את מסד הנתונים למארח חדש. בכל מקרה, בשלב מסוים ייבוא את קובץ הטקסט בחזרה לשרת מסד הנתונים MySQL. זה יהיה לבצע את כל משפטי SQL בקובץ, אשר בונה מחדש את DB למצב המקורי. חלק זה לא ממש להשתמש mysqldump הפקודה, אבל זה לא יהיה אפשרי ללא כלי זה גם!

את רשימת המסמכים MySQL שיטות אחרות של ביצוע גיבויים, אבל כל אלה יש חסרונות משלהם:

  • Hotcopping DB מ MySQL Enterprise היא דרך מצוינת להשיג את הגיבויים האלה … אם לא אכפת לך תג המחיר Enterprise.
  • העתקת ספריות הנתונים של DB יכול להיות מסובך אם אתה עובר על מערכות הפעלה, כי היעדים שלהם יהיו שונים.
  • ייצוא לקובץ טקסט מופרד ייתן לך את התוכן, אבל תצטרך ליצור מחדש את המבנה בעצמך. ואתה צריך לקבל את זה בדיוק כמו שצריך …
  • אתה יכול לעתים קרובות גיבוי מסדי נתונים מתוכניות GUI כמו MySQL Workbench. אבל זה תהליך ידני, כלומר לא משהו שאתה יכול סקריפט או לכלול עבודה אצווה.

התקנת כלי Mysqldump

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

עבור Windows, עיין בהוראות שלנו כאן להתקנת MySQL ב- Windows 7 (תהליך ההתקנה עדיין מאוד זהה). כמו כן ב- MacOS, עיין בהוראות שלנו להתקנת MySQL ב- MacOS 10.7 (שוב, ישן יותר, אך עדיין רלוונטי). משתמשים במערכות לינוקס מבוססות אובונטו יכולים להשתמש בפקודה הבאה כדי להתקין את הלקוח והשירותים של MySQL:

sudo apt להתקין את הלקוח MySQL

מחלץ Dump MySQL

לאחר ההתקנה, אתה יכול להשתמש mysqldump כדי לקבל גיבוי מלא של מסד הנתונים שלך.

mysqldump -h שם המארח של DB או IP -u שם המשתמש של DB -p שם מסד הנתונים> db_backup.sql

בואו נשבור את הפקודה הזאת קצת:

  • "-h": דגל זה הוא מסד הנתונים מארח. זה יכול להיות שם מארח מלא (למשל myhost.domain.com) או כתובת IP. אתה יכול גם להשאיר את זה ריק אם אתה מפעיל אותו על אותו מארח כמו שרת MySQL.
  • "less: כאמור, זה שלך שם משתמש.
  • "-P": אם אתה מאובטח כראוי ההתקנה MySQL שלך, תצטרך סיסמה להתחבר. דגל זה ללא ארגומנט ינחה אותך כאשר אתה מבצע את הפקודה. לפעמים כדאי למסור את הסיסמה שלך ישירות כארגומנט לדגל זה, לדוגמה בתסריט גיבוי. אבל בהנחה, אתה לא צריך, כי אם מישהו קיבל גישה למחשב שלך, הם יכולים לקבל את הסיסמה הזאת בהיסטוריה הפקודה שלך.
  • "> db_backup.sql": החלק האחרון הזה אומר mysqldump כדי לכוון את כל הפלט שלו לקובץ. בדרך כלל, הפקודה תפיק הכל ישירות אל המסוף, כלומר תראה חבורה של משפטי SQL לעוף על ידי. במקום זאת, הסמל *> * הוא סימן כדי להעביר את כל הדברים האלה לקובץ הטקסט בשם. ואם קובץ זה אינו קיים, הוא ייווצר באופן אוטומטי.

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

הקובץ מחולק לחלקים. בתמונה לעיל, אנו יכולים לראות את החלק הראשון מגדיר את הטבלה עבור הערות וורדפרס. החלק השני יוצר מחדש את התוכן (כלומר, רשומות תגובה) שהיה בטבלאות אלה. כאשר אתה הולך לייבא מחדש את dump MySQL שוב, הפקודה תעבוד דרך הקובץ, ביצוע ההצהרות מחדש בניית מסד הנתונים שלך בדיוק כמו שזה היה. אז איך עושים את זה? בואו נסתכל.

ייבוא ​​קובץ Dump של MySQL

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

כדי לייבא מחדש את הנתונים שלך, בצע את הפעולות הבאות:

  1. התחבר לשרת MySQL עם MySQL פקודה.
  2. הקלד השתמש שם מסד נתונים בהנחה, להחליף את השם המתאים של DB.
  3. להיכנס מקור שם קובץ, והחלפת שם קובץ ה- dump שביצעת בעבר.

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

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

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