זוהי הפקודה mysqldump שניתן להריץ בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS
תָכְנִית:
שֵׁם
mysqldump - תוכנת גיבוי למסד נתונים
תַקצִיר
mysqldump [אפשרויות] [db_name [tbl_name ...]]
תיאור
השמיים mysqldump לקוח היא תוכנית גיבוי שנכתבה במקור על ידי איגור רומננקו. זה יכול להיות
משמש להורדת מסד נתונים או אוסף של מסדי נתונים לגיבוי או העברה ל-SQL אחר
שרת (לאו דווקא שרת MariaDB). ה-dump מכיל בדרך כלל הצהרות SQL ל
צור את הטבלה, אכלס אותה או שניהם. למרות זאת, mysqldump יכול לשמש גם כדי ליצור
קבצים ב-CSV, טקסט מופרד אחר או פורמט XML.
אם אתה עושה גיבוי בשרת והשולחנות שלך כולם הם טבלאות MyISAM, שקול
באמצעות mysqlhotcopy במקום זאת מכיוון שהוא יכול לבצע גיבויים מהירים יותר ומהירים יותר
משחזר. לִרְאוֹת mysqlhotcopy(1).
ישנן שלוש דרכים כלליות להפעיל mysqldump:
מעטפת> mysqldump [אפשרויות] db_name [tbl_name ...]
מעטפת> mysqldump [אפשרויות] --מאגרי מידע db_name ...
מעטפת> mysqldump [אפשרויות] --כל מסדי הנתונים
אם אתה לא שם שום טבלאות הבאות db_name או אם אתה משתמש ב --מאגרי מידע or
--כל מסדי הנתונים אפשרות, מסדי נתונים שלמים נזרקים.
mysqldump אינו משליך את מסדי הנתונים INFORMATION_SCHEMA או performance_schema כברירת מחדל.
כדי לזרוק אותם, שם אותם במפורש בשורת הפקודה, אם כי עליך להשתמש גם ב-
--דלג-נעילת-טבלאות אוֹפְּצִיָה.
כדי לראות רשימה של האפשרויות של הגרסה שלך mysqldump תומך, מבצע mysqldump - עזרה.
כמה mysqldump אפשרויות הן קיצור של קבוצות של אפשרויות אחרות:
· שימוש ב --העדיף זהה לציון - הוסף שולחן, --add-locks,
- ליצור אפשרויות, -מקשים ניתנים לביטול, ---extended-sert, --נעילת-שולחנות, --מָהִיר, ו
--set-charset. כל האפשרויות ש --העדיף מייצג גם מופעלים כברירת מחדל מכיוון
--העדיף מופעלת כברירת מחדל.
· שימוש ב --קוֹמפָּקטִי זהה לציון --דלג-הוסף-שחרר-טבלה, --דלג-הוסף-נעילות,
--דלג-הערות, --דלג-השבת-מקשי, ו --דלג-סט-תווים אפשרויות.
כדי להפוך את ההשפעה של אפשרות קבוצתית, משתמש בה --לדלג-xxx טופס (--דלג-אופט or
--דילוג-קומפקטי). אפשר גם לבחור רק חלק מהאפקט של אפשרות קבוצתית
על ידי ביצועו עם אפשרויות המאפשרות או משביתות תכונות ספציפיות. הנה כמה
דוגמאות:
· לבחירת האפקט של --העדיף למעט תכונות מסוימות, השתמש ב- --לדלג אפשרות לכל אחד
תכונה. כדי להשבית תוספות מורחבות ואגירת זיכרון, השתמש --העדיף
--דלג-מורחב-הוספה --דלג-מהר. (בעצם, --דלג-מורחב-הוספה --דלג-מהר is
מספיק כי --העדיף מופעל כברירת מחדל.)
· להפוך --העדיף עבור כל התכונות מלבד השבתת אינדקס ונעילת טבלה, השתמש
--דלג-אופט -מקשים ניתנים לביטול --נעילת-שולחנות.
כאשר אתה מפעיל או משבית באופן סלקטיבי את ההשפעה של אפשרות קבוצה, הסדר חשוב
כי האפשרויות מעובדות מההתחלה עד האחרונה. לדוגמה, -מקשים ניתנים לביטול --נעילת-שולחנות
--דלג-אופט לא תהיה ההשפעה המיועדת; זה אותו דבר כמו --דלג-אופט בעצמו.
mysqldump יכול לאחזר ולהשליך את תוכן הטבלה שורה אחר שורה, או שהוא יכול לאחזר את כולו
תוכן מטבלה ומאגר אותו בזיכרון לפני השלכתו. חציצה בזיכרון יכולה להיות
בעיה אם אתה זורק שולחנות גדולים. כדי להשליך טבלאות שורה אחר שורה, השתמש ב- --מָהִיר
אפשרות (או --העדיף, המאפשר --מָהִיר). --העדיף אפשרות (ומכאן --מָהִיר) מופעל
כברירת מחדל, אז כדי לאפשר אחסון זיכרון, השתמש --דלג-מהר.
אם אתה משתמש בגרסה עדכנית של mysqldump כדי ליצור dump לטעינה מחדש לתוך a
שרת MySQL ישן מאוד, אתה לא צריך להשתמש ב --העדיף or ---extended-sert אוֹפְּצִיָה. להשתמש
--דלג-אופט במקום.
mysqldump תומך באפשרויות הבאות, שניתן לציין בשורת הפקודה או ב
קבוצות קבצי האפשרויות [mysqldump] ו-[client]. mysqldump תומך גם באפשרויות עבור
קובץ אפשרויות עיבוד.
· - עזרה, -?
הצג הודעת עזרה וצא.
· --add-drop-database
הוסף משפט DROP DATABASE לפני כל משפט CREATE DATABASE. אפשרות זו היא
משמש בדרך כלל בשילוב עם --כל מסדי הנתונים or --מאגרי מידע אפשרות בגלל
לא נכתבות הצהרות CREATE DATABASE אלא אם צוינה אחת מהאפשרויות הללו.
· - הוסף שולחן
הוסף משפט DROP TABLE לפני כל משפט CREATE TABLE.
· --add-locks
הקף כל מזבלה של שולחן עם הצהרות LOCK TABLES ו-UNLOCK TABLES. התוצאות האלה
בהוספות מהירות יותר כאשר קובץ ה-dump נטען מחדש.
· --כל מסדי הנתונים, -A
זרוק את כל הטבלאות בכל מסדי הנתונים. זה זהה לשימוש ב- --מאגרי מידע אפשרות ו
מתן שמות לכל מסדי הנתונים בשורת הפקודה.
· --כל מרחבי השולחנות, -Y
מוסיף ל-Table dump את כל הצהרות ה-SQL הדרושות ליצירת מרחבי טבלה המשמשים
טבלת NDBCLUSTER. מידע זה אינו כלול בדרך אחרת בפלט מ
mysqldump. אפשרות זו רלוונטית כרגע רק לטבלאות MySQL Cluster.
· --לאפשר-מילות מפתח
אפשר יצירת שמות עמודות שהן מילות מפתח. זה עובד על ידי הקדמת כל עמודה
שם עם שם הטבלה.
· --החל-הצהרות-עבד
מוסיף את 'STOP SLAVE' לפני 'CHANGE MASTER' ו-'START SLAVE' לתחתית ה-dump.
· --character-sets-dir=נתיב
הספרייה שבה מותקנות ערכות תווים.
· --הערות, -i
כתוב מידע נוסף בקובץ ה-dump כגון גרסת תוכנית, גרסת שרת,
ומארח. אפשרות זו מופעלת כברירת מחדל. כדי לדכא מידע נוסף זה,
להשתמש --דלג-הערות.
· --קוֹמפָּקטִי
הפק פלט קומפקטי יותר. אפשרות זו מאפשרת את --דלג-הוסף-שחרר-טבלה,
--דלג-הוסף-נעילות, --דלג-הערות, --דלג-השבת-מקשי, ו --דלג-סט-תווים
אפשרויות.
· --תואם=שם
הפק פלט שתואם יותר למערכות מסד נתונים אחרות או ל-MySQL ישנים יותר
שרתים. הערך של שם יכול להיות ansi, mysql323, mysql40, postgresql, oracle, mssql,
db2, maxdb, no_key_options, no_table_options או no_field_options. כדי להשתמש בכמה
ערכים, הפרידו אותם בפסיקים. לערכים אלו יש משמעות זהה ל-
אפשרויות מתאימות להגדרת מצב SQL של השרת.
אפשרות זו אינה מבטיחה תאימות עם שרתים אחרים. זה מאפשר רק את אלה
ערכי מצב SQL הזמינים כעת להפיכת פלט dump לתואם יותר.
לדוגמה, --תואם=אורקל אינו ממפה סוגי נתונים לסוגי Oracle או משתמש ב-Oracle
תחביר הערות.
· --הוספה מלאה, -c
השתמש בהצהרות INSERT מלאות הכוללות שמות עמודות.
· --לִדחוֹס, -C
דחוס את כל המידע שנשלח בין הלקוח לשרת אם שניהם תומכים
דחיסה.
· - ליצור אפשרויות, -a
כלול את כל אפשרויות הטבלה הספציפיות ל-MariaDB בהצהרות CREATE TABLE. להשתמש --לדלג-
אפשרויות יצירה להשבית.
· --מאגרי מידע, -B
זרוק מספר מסדי נתונים. בדרך כלל, mysqldump מתייחס לטיעון השם הפרטי ב-
שורת הפקודה כשם מסד נתונים ושמות עוקבים כשמות טבלה. עם אפשרות זו,
זה מתייחס לכל הארגומנטים של השם כשמות של מסד נתונים. צור מסד נתונים והצהרות שימוש
כלולים בפלט לפני כל מסד נתונים חדש.
· --debug[=debug_options], -# [debug_options]
כתוב יומן ניפוי באגים. טיפוסי debug_options מחרוזת היא ´d:t:o,שם קובץ´. ה
ערך ברירת המחדל הוא 'd:t:o,/tmp/mysqldump.trace'.
· --בדיקת באגים
הדפס קצת מידע על ניפוי באגים כשהתוכנית יוצאת.
· ---debug-info
הדפס מידע איתור באגים וסטטיסטיקות זיכרון ושימוש במעבד כאשר התוכנית
יציאות.
· --ברירת מחדל-אישור
תוסף ברירת המחדל של אימות בצד הלקוח לשימוש.
· --default-character-set=charset_name
השתמש charset_name כקבוצת התווים המוגדרת כברירת מחדל. אם לא צוין ערכת תווים,
mysqldump משתמש ב-utf8.
· --defaults-extra-file=שם הקובץ
לקבוע שם הקובץ כקובץ לקריאת אפשרויות ברירת המחדל לאחר קובצי ברירת המחדל הגלובלית
נקרא. חייב להינתן כאופציה ראשונה.
· --defaults-file=שם הקובץ
לקבוע שם הקובץ כקובץ שממנו יש לקרוא אפשרויות ברירת מחדל, עוקף קובצי ברירת מחדל גלובליים.
חייב להינתן כאופציה ראשונה.
· --defaults-group-suffix=str,
קרא גם קבוצות עם סיומת של str. לדוגמה, מאז mysqldump קורא בדרך כלל את
קבוצות [client] ו-[mysqldump], --defaults-group-suffix=x יגרום לזה לקרוא גם
הקבוצות [mysqldump_x] ו-[client_x].
· --הוספה מושהית
כתוב הצהרות INSERT DELAYED במקום הצהרות INSERT.
· --delete-master-logs
בשרת שכפול ראשי, מחק את היומנים הבינאריים על ידי שליחת PURGE BINARY LOGS
הצהרה לשרת לאחר ביצוע פעולת ה-dump. אפשרות זו אוטומטית
מאפשר --קובץ מקור.
· -מקשים ניתנים לביטול, -K
עבור כל טבלה, הקף את הצהרות INSERT ב- /*!40000 ALTER TABLE tbl_name
השבת מפתחות */; ו /*!40000 ALTER TABLE tbl_name הפעל מפתחות */; הצהרות. זֶה
הופך את טעינת קובץ ה-dump למהירה יותר מכיוון שהאינדקסים נוצרים לאחר שכל השורות
מוּכנָס. אפשרות זו יעילה רק עבור אינדקסים לא ייחודיים של טבלאות MyISAM.
· --תאריך dump
אם --הערות ניתנת אפשרות, mysqldump מייצר הערה בסוף המזבלה
מהטופס הבא:
-- השלמה הושלמה בתאריך תאריך
עם זאת, התאריך גורם לקובצי dump שצולמו בזמנים שונים להיראות כך
שונים, גם אם הנתונים זהים אחרת. --תאריך dump ו --דלג-dump-date
לקבוע אם התאריך יתווסף להערה. ברירת המחדל היא --תאריך dump (כולל
התאריך בתגובה). --דלג-dump-date מדכא הדפסת תאריך
· --אירועים, -E
כלול אירועי מתזמן אירועים עבור מסדי הנתונים שהושלכו בפלט.
· ---extended-sert, -e
השתמש בתחביר INSERT מרובה שורות הכוללות מספר רשימות VALUES. כתוצאה מכך א
קובץ dump קטן יותר ומאיץ את ההוספות כאשר הקובץ נטען מחדש.
· --fields-terminated-by=..., --fields-enclosed-by=...,
--fields-optionally-enclosed-by=..., --fields-escaped-by=...
אפשרויות אלה משמשות עם --טאב אפשרות ובעלי אותה משמעות כמו ה-
סעיפי FIELDS התואמים עבור LOAD DATA INFILE.
· --העבד הראשון
הוסר ב- MariaDB 5.5. להשתמש --נעל-כל-שולחנות במקום.
· ---flush-logs, -F
יש לשטוף את קובצי היומן של שרת MariaDB לפני התחלת ה-dump. אפשרות זו דורשת את
הרשאת טען מחדש. אם אתה משתמש באפשרות זו בשילוב עם --כל מסדי הנתונים
אפשרות, היומנים נשטפים ל כל אחד מסד נתונים זרוק. היוצא מן הכלל הוא בעת שימוש
--נעל-כל-שולחנות or --קובץ מקור: במקרה זה, היומנים נשטפים פעם אחת בלבד,
מתאים לרגע שבו כל השולחנות נעולים. אם אתה רוצה את המזבלה שלך ואת
log flush להתרחש בדיוק באותו רגע, אתה צריך להשתמש ---flush-logs יַחַד
עם שניהם --נעל-כל-שולחנות or --קובץ מקור.
· --שטף-פריבילגיות
שלח הצהרת FLUSH PRIVILEGES לשרת לאחר השלכת מסד הנתונים של mysql. זֶה
יש להשתמש באפשרות בכל פעם שה-dump מכיל את מסד הנתונים mysql וכל אחר
מסד נתונים שתלוי בנתונים במסד הנתונים של mysql לצורך שחזור תקין.
· --כּוֹחַ, -f
המשך גם אם מתרחשת שגיאת SQL במהלך dump טבלה.
שימוש אחד עבור אפשרות זו הוא לגרום mysqldump להמשיך בביצוע גם כאשר זה
נתקל בתצוגה שהפכה לא חוקית מכיוון שההגדרה מתייחסת לטבלה
שהושמט. לְלֹא --כּוֹחַ, mysqldump יוצא עם הודעת שגיאה. עם
--כּוֹחַ, mysqldump מדפיס את הודעת השגיאה, אבל הוא כותב גם הערת SQL
מכיל את הגדרת התצוגה לפלט ה-dump וממשיך בביצוע.
· --gtid
זמין מ-MariaDB 10.0.13, ומשמש יחד עם --קובץ מקור ו
--מזבלה-עבד כדי להגדיר בצורה נוחה יותר עבד GTID חדש. זה גורם לאפשרויות האלה
פלט הצהרות SQL שמגדירות את העבד להשתמש במזהה העסקה הגלובלי
התחבר למאסטר במקום מיקומי שם קובץ/אופסט בסגנון ישן. הסגנון הישן
עמדות עדיין נכללות בהערות מתי --gtid משמש; כמו כן ה-GTID
עמדה נכללת בהערות גם אם --gtid אינו בשימוש.
· -- כתם משושה
זרוק עמודות בינאריות באמצעות סימון הקסדצימלי (לדוגמה, 'abc' הופך ל-0x616263).
סוגי הנתונים המושפעים הם BINARY, VARBINARY, סוגי BLOB ו-BIT.
· -מארח =שם מארח, -h שם מארח
זרוק נתונים משרת MariaDB במארח הנתון. מארח ברירת המחדל הוא localhost.
· --ignore-table=db_name.tbl_name
אל תזרקו את הטבלה הנתונה, אותה יש לציין באמצעות מסד הנתונים והטבלה
שמות. כדי להתעלם ממספר טבלאות, השתמש באפשרות זו מספר פעמים. אפשרות זו גם יכולה
לשמש כדי להתעלם מצפיות.
· --include-master-host-port
הוסף את האפשרויות MASTER_HOST ו-MASTER_PORT עבור הצהרת CHANGE MASTER TO כאשר
באמצעות --מזבלה-עבד אפשרות למזבלה של עבדים.
· --הכנס-התעלם
כתוב הצהרות INSERT IGNORE במקום הצהרות INSERT.
· --lines-terminated-by=...
אפשרות זו משמשת עם --טאב אפשרות ובעלת אותה משמעות כמו ה-
משפט LINES המתאים עבור LOAD DATA INFILE.
· --נעל-כל-שולחנות, -x
נעל את כל הטבלאות בכל מסדי הנתונים. זה מושג על ידי רכישת מנעול קריאה גלובלי
למשך כל המזבלה. אפשרות זו נכבית אוטומטית
--עסקה בודדת ו --נעילת-שולחנות.
· --נעילת-שולחנות, -l
עבור כל מסד נתונים שנזרק, נעל את כל הטבלאות להשלכה לפני השלכתן. השולחנות
נעולים עם READ LOCAL כדי לאפשר הוספות במקביל במקרה של טבלאות MyISAM.
עבור טבלאות טרנזקציות כגון InnoDB, --עסקה בודדת היא אופציה הרבה יותר טובה
מֵאֲשֶׁר --נעילת-שולחנות כי זה לא צריך לנעול את השולחנות בכלל.
כי --נעילת-שולחנות נועל טבלאות עבור כל מסד נתונים בנפרד, אפשרות זו לא
להבטיח שהטבלאות בקובץ ה-dump עקביות לוגית בין מסדי נתונים.
טבלאות במסדי נתונים שונים עשויות להיות מושלכות במצבים שונים לחלוטין.
השתמש --דלג-נעילת-טבלאות להשבית.
· --log-error=שם קובץ
רישום אזהרות ושגיאות על ידי צירופן לקובץ בעל השם. ברירת המחדל היא לעשות לא
רישום.
· --מאסטר-נתונים[=ערך]
השתמש באפשרות זו כדי לזרוק שרת שכפול ראשי כדי לייצר קובץ dump שיכול להיות
משמש להגדרת שרת אחר כעבד של המאסטר. זה גורם לפלט ה-dump ל
כלול משפט CHANGE MASTER TO המציין את קואורדינטות היומן הבינאריות (קובץ
שם ומיקום) של השרת שהושלך. אלו הן קואורדינטות השרת הראשי מהן
אשר ה-slave אמור להתחיל לשכפל לאחר טעינת קובץ ה-dump לתוך ה-slave.
אם ערך האופציה הוא 2, המשפט CHANGE MASTER TO נכתב כהערת SQL,
ולכן הוא אינפורמטיבי בלבד; אין לזה השפעה כאשר קובץ ה-dump נטען מחדש. אם ה
ערך האופציה הוא 1, ההצהרה אינה כתובה כהערה ונכנסת לתוקף כאשר
קובץ dump נטען מחדש. אם לא צוין ערך אופציה, ערך ברירת המחדל הוא 1.
אפשרות זו דורשת את הרשאת RELOAD ויש להפעיל את היומן הבינארי.
השמיים --קובץ מקור האפשרות נכבית אוטומטית --נעילת-שולחנות. זה גם נדלק
--נעל-כל-שולחנותאלא אם כן --עסקה בודדת מצוין גם. בכל המקרים, כל
פעולה ביומנים מתרחשת ברגע המדויק של ההשלכה.
אפשר גם להקים עבד על ידי השלכת עבד קיים של האדון. ל
עשה זאת, השתמש בהליך הבא על העבד הקיים:
1. עצור את שרשור ה-SQL של העבד וקבל את המצב הנוכחי שלו:
mysql> עצור עבד SQL_THREAD;
mysql> לְהַצִיג עבד סטָטוּס;
2. מהפלט של הצהרת SHOW SLAVE STATUS, קואורדינטות היומן הבינארי של
השרת הראשי שממנו העבד החדש צריך להתחיל לשכפל הם הערכים
של השדות Relay_Master_Log_File ו-Exec_Master_Log_Pos. סמן את הערכים האלה
as שם קובץ ו file_pos.
3. זרוק את שרת העבדים:
מעטפת> mysqldump --מאסטר-נתונים=2 --כל מסדי הנתונים > dumpfile
4. הפעל מחדש את העבד:
mysql> התחלה עֶבֶד;
5. ב-slave החדש, טען את קובץ ה-dump:
מעטפת> MySQL < dumpfile
6. ב-slave החדש, הגדר את קואורדינטות השכפול לאלו של השרת הראשי
שהושג קודם לכן:
mysql> שנה MASTER ל
-> MASTER_LOG_FILE = ´שם קובץ', MASTER_LOG_POS = file_pos;
ייתכן שהמשפט CHANGE MASTER TO יצטרך גם פרמטרים אחרים, כגון
MASTER_HOST כדי להפנות את העבד למארח השרת הראשי הנכון. הוסף כל כזה
פרמטרים לפי הצורך.
· --max-allowed-packet=אורך
מגדיר את אורך החבילה המרבי לשליחה או קבלה מהשרת.
· --net-buffer-length=אורך
מגדיר את גודל המאגר עבור תקשורת TCP/IP ושקע.
· --ללא התחייבות אוטומטית
הוסף את הצהרות INSERT עבור כל טבלה שהושלכה בתוך SET autocommit = 0 ו
comMIT הצהרות.
· --no-create-db, -n
אפשרות זו מדחיקה את הצהרות CREATE DATABASE שנכללות אחרת
הפלט אם ה --מאגרי מידע or --כל מסדי הנתונים ניתנת אפשרות.
· --לא-ליצור-מידע, -t
אל תכתוב הצהרות CREATE TABLE שיוצרות מחדש כל טבלה שהושלכה.
· --אין מידע, -d
אל תכתוב שום מידע על שורת הטבלה (כלומר, אל תשליך את תוכן הטבלה). זה
שימושי אם ברצונך לזרוק רק את המשפט CREATE TABLE עבור הטבלה (לדוגמה,
כדי ליצור עותק ריק של הטבלה על ידי טעינת קובץ ה-dump).
· --ללא ברירת מחדל
אל תקראו אפשרויות ברירת מחדל מכל קובץ אופציות. זה חייב להינתן בתור הראשון
ויכוח.
· --ללא-סט-שמות, -N
יש לזה אותה השפעה כמו --דלג-סט-תווים.
· --העדיף
אפשרות זו היא קיצור. זה אותו דבר כמו לציין - הוסף שולחן --add-locks
- ליצור אפשרויות -מקשים ניתנים לביטול ---extended-sert --נעילת-שולחנות --מָהִיר --set-charset.
זה אמור לתת לך פעולת dump מהירה ולייצר קובץ dump שניתן לטעון מחדש
לתוך שרת MariaDB במהירות.
השמיים --העדיף אוֹפְּצִיָה is מופעל by ברירת המחדל. השתמש --דלג-אופט ל להשבית זה. ראה
דיון בתחילת סעיף זה לקבלת מידע על הפעלה סלקטיבית
או ביטול קבוצת משנה של האפשרויות המושפעות מ --העדיף.
· --סדר לפי ראשוני
זרוק את השורות של כל טבלה ממוינות לפי המפתח הראשי שלה, או לפי האינדקס הייחודי הראשון שלה, אם
מדד כזה קיים. זה שימושי בעת השלכת טבלת MyISAM לטעינה לתוך
טבלת InnoDB, אך תגרום לפעולת ה-dump להימשך זמן רב יותר.
· --סיסמה[=סיסמא], -p[סיסמא]
הסיסמה לשימוש בעת חיבור לשרת. אם אתה משתמש בטופס האפשרות הקצרה
(-p), אתה לא יכול יש רווח בין האפשרות לסיסמה. אם תשמיט את ה
סיסמא ערך בעקבות ה --סיסמה or -p אפשרות בשורת הפקודה, mysqldump
מבקש אחד.
ציון סיסמה בשורת הפקודה צריך להיחשב לא מאובטח. אתה יכול להשתמש
קובץ אופציות כדי להימנע ממתן הסיסמה בשורת הפקודה.
· --צינור, -W
ב-Windows, התחבר לשרת באמצעות צינור עם שם. אפשרות זו חלה רק אם
השרת תומך בחיבורי צינור בשם.
· --plugin-dir
ספרייה עבור תוספים בצד הלקוח.
· --port=port_num, -P port_num
מספר יציאת ה-TCP/IP לשימוש עבור החיבור.
· -פרוטוקול = {TCP | SOCKET | PIPE | MEMORY}
פרוטוקול החיבור לשימוש לחיבור לשרת. זה שימושי כאשר
פרמטרים אחרים של חיבור בדרך כלל יגרמו לשימוש בפרוטוקול שאינו
אחד שאתה רוצה.
· --מָהִיר, -q
אפשרות זו שימושית להשלכת שולחנות גדולים. זה מאלץ mysqldump כדי לאחזר שורות
עבור טבלה מהשרת שורה בכל פעם במקום לאחזר את כל ערכת השורות
ומאגר אותו בזיכרון לפני כתיבתו.
· --ברירות מחדל להדפסה
הדפס את רשימת הארגומנטים של התוכנית וצא. יש לתת זאת כטענה ראשונה.
· --שמות-ציטוטים, -Q
מזהי ציטוטים (כגון שמות מסד נתונים, טבלאות ועמודות) בתוך תווי "`".
אם מצב ANSI_QUOTES SQL מופעל, המזהים יצוינו במרכאות בתוך תווי """.
אפשרות זו מופעלת כברירת מחדל. ניתן להשבית עם --דלג-שמות-ציטוטים, אבל
אפשרות זו צריכה להינתן לאחר כל אפשרות כגון --תוֹאֵם שעשוי לאפשר
--שמות-ציטוטים.
· --החלף
כתוב הצהרות REPLACE במקום הצהרות INSERT.
· --result-file=שם קובץ, -r שם קובץ
פלט ישיר לקובץ נתון. יש להשתמש באפשרות זו ב-Windows כדי למנוע
תווי "\n" בשורה חדשה מהמרה ל"\r\n" החזרת כרכרה/שורה חדשה
רצפים. קובץ התוצאה נוצר והתוכן הקודם שלו מוחלף, גם אם
מתרחשת שגיאה בעת יצירת ה-dump.
· - נוהלים, -R
כללו שגרות מאוחסנות (נהלים ופונקציות) עבור מסדי הנתונים שהושלכו ב-
תְפוּקָה. שימוש באפשרות זו מחייב את הרשאת SELECT עבור הטבלה mysql.proc. ה
פלט שנוצר על ידי שימוש - נוהלים מכיל CREATE PROCEDURE ו-CREATE FUNCTION
הצהרות כדי ליצור מחדש את השגרה. עם זאת, הצהרות אלו אינן כוללות
תכונות כגון חותמות זמן של יצירה ושינוי שגרתיים. זה אומר ש
כאשר השגרות נטענות מחדש, הן ייווצרו עם חותמות הזמן השווים ל-
זמן טעינה.
אם אתה דורש שרוטינות ייצרו מחדש עם תכונות חותמת הזמן המקוריות שלהן, עשה זאת
לא בשימוש - נוהלים. במקום זאת, זרוק וטען מחדש את התוכן של הטבלה mysql.proc
ישירות, באמצעות חשבון MariaDB שיש לו הרשאות מתאימות עבור ה-mysql
מאגר מידע.
· --set-charset
הוסף SET NAMES default_character_set לפלט. אפשרות זו מופעלת כברירת מחדל.
כדי לדכא את המשפט SET NAMES, השתמש --דלג-סט-תווים.
· --עסקה בודדת
אפשרות זו שולחת משפט START TRANSACTION SQL לשרת לפני השלכת נתונים.
זה שימושי רק עם טבלאות טרנזקציות כגון InnoDB, כי אז הוא משליך את ה
מצב עקבי של מסד הנתונים בזמן שבו הונפק BEGIN ללא חסימה
יישומים כלשהם.
בעת שימוש באפשרות זו, עליך לזכור שרק טבלאות InnoDB מושלכות פנימה
מדינה עקבית. לדוגמה, כל טבלאות MyISAM או MEMORY שהושלכו בזמן השימוש בזה
האפשרות עדיין עשויה לשנות מצב.
בעוד --עסקה בודדת dump נמצא בתהליך, כדי להבטיח קובץ dump חוקי (נכון
תוכן הטבלה וקואורדינטות יומן בינאריות), אין חיבור אחר צריך להשתמש ב-
ההצהרות הבאות: ALTER TABLE, CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE
שולחן. קריאה עקבית אינה מבודדת מהצהרות אלו, לכן השימוש בהן על א
הטבלה שתושק עלולה לגרום ל-SELECT שמתבצע על ידי mysqldump כדי לאחזר את
תוכן הטבלה כדי להשיג תוכן שגוי או להיכשל.
השמיים --עסקה בודדת אפשרות וה --נעילת-שולחנות האופציות סותרות זו את זו
מכיוון ש-LOCK TABLES גורם לביצוע כל עסקאות ממתינות באופן מרומז.
כדי לזרוק שולחנות גדולים, כדאי לשלב את --עסקה בודדת אפשרות עם --מָהִיר.
· --דלג-הוסף-שחרר-טבלה
השבת את - הוסף שולחן אוֹפְּצִיָה.
· --דלג-הוסף-נעילות
השבת את --add-locks אוֹפְּצִיָה.
· --דלג-הערות
השבת את --הערות אוֹפְּצִיָה.
· --דילוג-קומפקטי
השבת את --קוֹמפָּקטִי אוֹפְּצִיָה.
· --דלג-השבת-מקשי
השבת את -מקשים ניתנים לביטול אוֹפְּצִיָה.
· --דלג-מורחב-הוספה
השבת את ---extended-sert אוֹפְּצִיָה.
· --דלג-אופט
השבת את --העדיף אוֹפְּצִיָה.
· --דלג-מהר
השבת את --מָהִיר אוֹפְּצִיָה.
· --דלג-שמות-ציטוטים
השבת את --שמות-ציטוטים אוֹפְּצִיָה.
· --דלג-סט-תווים
השבת את --set-charset אוֹפְּצִיָה.
· --דילוג-טריגרים
השבת את --טריגרים אוֹפְּצִיָה.
· --skip-tz-utc
השבת את --tz-utc אוֹפְּצִיָה.
· --socket=נתיב, -S נתיב
עבור חיבורים ל-localhost, קובץ שקע ה-Unix לשימוש, או, ב-Windows, השם של
הצינור הנקרא לשימוש.
· --ssl
אפשר SSL לחיבור (מופעל אוטומטית עם דגלים אחרים). השבת עם
--דלג-ssl.
· --ssl-ca=שם
קובץ CA בפורמט PEM (בדוק את OpenSSL docs, מרמז --ssl).
· --ssl-capath=שם
ספריית CA (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-cert=שם
אישור X509 בפורמט PEM (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-cipher=שם
צופן SSL לשימוש (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-key=שם
מפתח X509 בפורמט PEM (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-crl=שם
רשימת ביטולי אישורים (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-crlpath=שם
נתיב רשימת ביטולי האישורים (בדוק את מסמכי OpenSSL, מרמז --ssl).
· --ssl-verify-server-cert
אמת את "השם המשותף" של השרת באישור שלו מול שם המארח בשימוש בעת החיבור. זֶה
האפשרות מושבתת כברירת מחדל.
· --tab=נתיב, -T נתיב
הפק קבצי נתונים בפורמט טקסט מופרדים בטאבים. עבור כל שולחן שנזרק, mysqldump יוצר
a tbl_nameקובץ .sql המכיל את המשפט CREATE TABLE שיוצר את הטבלה,
והשרת כותב א tbl_nameקובץ txt המכיל את הנתונים שלו. ערך האופציה הוא
הספרייה שבה לכתוב את הקבצים.
הערות
יש להשתמש באפשרות זו רק כאשר mysqldump מופעל על אותה מכונה כמו ה
mysqld שרת. אתה חייב להיות בעל הרשאת FILE, ולשרת חייבת להיות
הרשאה לכתוב קבצים בספרייה שציינת.
כברירת מחדל, קובצי הנתונים .txt מעוצבים באמצעות תווי טאב בין העמודות
ערכים ושורה חדשה בסוף כל שורה. ניתן לציין את הפורמט במפורש
באמצעות --שדות-xxx ו --lines-terminated-by אפשרויות.
ערכי עמודות מומרים לקבוצת התווים שצוינה על ידי
- סט-תווים-סט אוֹפְּצִיָה.
· --טבלאות
לבטל את --מאגרי מידע or -B אוֹפְּצִיָה. mysqldump מתייחס לכל טיעוני השם הבאים
האפשרות בתור שמות טבלאות.
· --טריגרים
כלול טריגרים עבור כל טבלה שהושלכה בפלט. אפשרות זו מופעלת על ידי
בְּרִירַת מֶחדָל; להשבית את זה עם --דילוג-טריגרים.
· --tz-utc
אפשרות זו מאפשרת לזרוק עמודות TIMESTAMP ולטעון מחדש בין שרתים פנימה
אזורי זמן שונים. mysqldump מגדיר את אזור זמן החיבור שלו ל-UTC ומוסיף SET
TIME_ZONE='+00:00' לקובץ ה-dump. ללא אפשרות זו, עמודות TIMESTAMP מושלכות
ונטען מחדש באזורי הזמן המקומיים לשרתי המקור והיעד, שיכולים
לגרום לערכים להשתנות אם השרתים נמצאים באזורי זמן שונים. --tz-utc גם
מגן מפני שינויים עקב שעון קיץ. --tz-utc מופעל כברירת מחדל.
כדי להשבית אותו, השתמש --skip-tz-utc.
· --user=USER_NAME, -u USER_NAME
שם המשתמש של MariaDB לשימוש בעת חיבור לשרת.
· --מִלוּלִי, -v
מצב מילולי. הדפס מידע נוסף על מה שהתוכנית עושה.
· --גִרְסָה, -V
הצג מידע גרסה וצא.
· --where=´where_condition´, -w ´where_condition´
dump רק שורות שנבחרו לפי התנאי הנתון של WHERE. ציטוטים סביב התנאי הם
חובה אם הוא מכיל רווחים או תווים אחרים המיוחדים לפקודה שלך
מְתוּרגְמָן.
דוגמאות:
--where="user=´jimf´"
-w"userid>1"
-w"userid<1"
· --xml, -X
כתוב פלט dump כ-XML מעוצב היטב.
ריק ריק, ו ריק ערכים: עבור עמודה בשם שם העמודה, הערך NULL, an
מחרוזת ריקה, וערך המחרוזת 'NULL' מובחנים זה מזה ב-
פלט שנוצר על ידי אפשרות זו כדלקמן.
┌──────────────────────┬────────────────────────── ───────────────────────────────────
│ערך: │ XML נציגות: │
├──────────────────────┼────────────────────────── ───────────────────────────────────
│NULL (לא ידוע ערך) │שם העמודה" xsi:nil="true" /> │
├──────────────────────┼────────────────────────── ───────────────────────────────────
│´´ (ריק מחרוזת) │שם העמודה"> │
├──────────────────────┼────────────────────────── ───────────────────────────────────
│'NULL' (מחרוזת ערך) │שם העמודה">NULL │
└──────────────────────┴────────────────────────── ─────────────────────────────────────
הפלט מה MySQL לקוח בעת הפעלה באמצעות ה --xml האפשרות גם עוקבת אחר ה
כללים קודמים. (ראה את הסעיף שנקרא "אפשרויות MYSQL".)
פלט XML מ mysqldump כולל את מרחב השמות של XML, כפי שמוצג כאן:
מעטפת> mysqldump --xml -u שורש עוֹלָם עִיר
<mysqldump xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<field Field="ID" Type="int(11)" Null="NO" Key="PRI" Extra="auto_increment" />
<field Field="Name" Type="char(35)" Null="NO" Key="" Default="" Extra="" />
<field Field="CountryCode" Type="char(3)" Null="NO" Key="" Default="" Extra="" />
<field Field="District" Type="char(20)" Null="NO" Key="" Default="" Extra="" />
<field Field="Population" Type="int(11)" Null="NO" Key="" Default="0" Extra="" />
<key Table="City" Non_unique="0" Key_name="PRIMARY" Seq_in_index="1" Column_name="ID"
Collation="A" Cardinality="4079" Null="" Index_type="BTREE" Comment="" />
<options Name="City" Engine="MyISAM" Version="10" Row_format="Fixed" Rows="4079"
Avg_row_length="67" Data_length="273293" Max_data_length="18858823439613951"
Index_length="43008" Data_free="0" Auto_increment="4080"
Create_time="2007-03-31 01:47:01" Update_time="2007-03-31 01:47:02"
Collation="latin1_swedish_ci" Create_options="" Comment="" />
1
קאבול
AFG
קבול
1780000
...
4079
רפיח
PSE
רפיח
92020
אתה יכול גם להגדיר את המשתנים הבאים באמצעות --var_name=ערך תחביר:
· מנות_מקסימליות
הגודל המרבי של המאגר עבור תקשורת לקוח/שרת. המקסימום הוא 1GB.
· net_buffer_length
הגודל הראשוני של המאגר עבור תקשורת לקוח/שרת. בעת יצירה
הצהרות INSERT מרובות שורות (כמו עם ---extended-sert or --העדיף אוֹפְּצִיָה),
mysqldump יוצר שורות עד אורך net_buffer_length. אם תגדיל את המשתנה הזה,
עליך גם לוודא שהמשתנה net_buffer_length בשרת MariaDB נמצא ב
לפחות כזה גדול.
שימוש נפוץ ב mysqldump מיועד לגיבוי של מסד נתונים שלם:
מעטפת> mysqldump db_name > backup-file.sql
אתה יכול לטעון את קובץ ה-dump בחזרה לשרת כך:
מעטפת> MySQL db_name < backup-file.sql
או ככה:
מעטפת> MySQL -e "מָקוֹר /path-to-backup/backup-file.sql" db_name
mysqldump הוא גם שימושי מאוד לאכלוס מסדי נתונים על ידי העתקת נתונים מ-MariaDB אחד
שרת לאחר:
מעטפת> mysqldump --העדיף db_name | MySQL -מארח =מארח_מרוחק -C db_name
אפשר לזרוק מספר מסדי נתונים בפקודה אחת:
מעטפת> mysqldump --מאגרי מידע db_name1 [db_name2 ...] > my_databases.sql
כדי להשליך את כל מסדי הנתונים, השתמש ב- --כל מסדי הנתונים אפשרות:
מעטפת> mysqldump --כל מסדי הנתונים > all_databases.sql
עבור טבלאות InnoDB, mysqldump מספק דרך לבצע גיבוי מקוון:
מעטפת> mysqldump --כל מסדי הנתונים --עסקה בודדת > all_databases.sql
גיבוי זה רוכש נעילת קריאה גלובלית בכל הטבלאות (באמצעות FLUSH TABLES WITH READ LOCK)
בתחילת המזבלה. ברגע שמנעול זה נרכש, היומן הבינארי
הקואורדינטות נקראות והנעילה משוחררת. אם הצהרות עדכון ארוכות פועלות
כאשר הצהרת FLUSH מונפקת, שרת MariaDB עלול להיתקע עד לאלה
ההצהרות מסתיימות. לאחר מכן, המזבלה הופכת ללא מנעול ואינה מפריעה לקריאה ו
כותב על הטבלאות. אם הצהרות העדכון שמקבל שרת MariaDB קצרות
(מבחינת זמן ביצוע), תקופת הנעילה הראשונית לא צריכה להיות מורגשת, אפילו עם
עדכונים רבים.
לשחזור נקודת זמן (הידוע גם בשם "גלגול קדימה", כאשר אתה צריך לשחזר ישן
גיבוי והפעל מחדש את השינויים שקרו מאז אותו גיבוי), לעתים קרובות זה שימושי
לסובב את היומן הבינארי או לפחות לדעת את קואורדינטות היומן הבינארי שאליהן ה-dump
מתאים:
מעטפת> mysqldump --כל מסדי הנתונים --מאסטר-נתונים=2 > all_databases.sql
או:
מעטפת> mysqldump --כל מסדי הנתונים ---flush-logs --מאסטר-נתונים=2
> all_databases.sql
השמיים --קובץ מקור ו --עסקה בודדת ניתן להשתמש באפשרויות בו זמנית, אשר
מספק דרך נוחה לבצע גיבוי מקוון המתאים לשימוש לפני נקודת הזמן
שחזור אם טבלאות מאוחסנות באמצעות מנוע האחסון InnoDB.
אם אתה נתקל בבעיות בגיבוי תצוגות, אנא קרא את הסעיף המכסה
הגבלות על תצוגות שמתארות פתרון לגיבוי תצוגות כאשר זה נכשל
בגלל הרשאות לא מספקות.
זכויות יוצרים
זכויות יוצרים 2007-2008 MySQL AB, 2008-2010 Sun Microsystems, Inc., 2010-2015 MariaDB
קרן
תיעוד זה הוא תוכנה חופשית; אתה יכול להפיץ אותו מחדש ו/או לשנות אותו רק תחת
תנאי הרישיון הציבורי הכללי של GNU כפי שפורסמו על ידי קרן התוכנה החופשית;
גרסה 2 של הרישיון.
התיעוד הזה מופץ בתקווה שהוא יהיה שימושי, אבל בלי שום דבר
אַחֲרָיוּת; אפילו ללא האחריות המשתמעת של סחירות או התאמה לפרט
מַטָרָה. ראה את הרישיון הציבורי הכללי של GNU לפרטים נוספים.
היית צריך לקבל עותק של הרישיון הציבורי הכללי של GNU יחד עם התוכנית;
אם לא, כתוב ל- Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
בוסטון, MA 02110-1301 ארה"ב או ראה http://www.gnu.org/licenses/.
אורים
1. באג מס' 30123
http://bugs.mysql.com/bug.php?id=30123
השתמש ב-mysqldump באינטרנט באמצעות שירותי onworks.net