אנגליתצרפתיתספרדי

Ad


סמל OnWorks

innotop - מקוון בענן

הפעל את innotop בספק אירוח חינמי של OnWorks על אובונטו אונליין, פדורה אונליין, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זהו הפקודה innotop שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


innotop - צג עסקאות/סטטוס MySQL ו-InnoDB.

תַקצִיר


כדי לנטר שרתים בדרך כלל:

פנימה

כדי לנטר מידע סטטוס InnoDB מקובץ:

innotop /var/log/mysql/mysqld.err

כדי להפעיל את innotop באופן לא אינטראקטיבי בתצורת pipe-and-filter:

innotop --count 5 -d 1 -n

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

innotop -u -עמ' -ח

תיאור


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

ל-innotop יש הרבה תכונות למשתמשים חזקים, אבל אתה יכול להתחיל ולהפעיל אותו באופן וירטואלי
ללא תצורה. אם אתה רק מתחיל, ראה "התחלה מהירה". ללחוץ '?' בכל
זמן בזמן הפעלת innotop לעזרה תלוית הקשר.

התחלה מהירה


כדי להפעיל את innotop, פתח מסוף או שורת פקודה. אם התקנת את innotop על
המערכת שלך, אתה אמור להיות מסוגל פשוט להקליד "innotop" וללחוץ על Enter; אחרת, אתה
יצטרך לעבור לספרייה של innotop ולהקליד "perl innotop".

ללא אפשרויות מוגדרות, innotop ינסה להתחבר לשרת MySQL ב-localhost
באמצעות mysql_read_default_group=client עבור פרמטרי חיבור אחרים. אם אתה צריך
ציין שם משתמש וסיסמה שונים, השתמש באפשרויות -u ו-p, בהתאמה. ל
לפקח על מסד נתונים MySQL על מארח אחר, השתמש באפשרות -h.

לאחר שהתחברת, innotop אמור להראות לך משהו כמו הבא:

[RO] רשימת שאילתות (? לעזרה) localhost, 01:11:19, 449.44 QPS, 14/7/163 con/run

CXN בעת טעינת QPS איטי QCacheHit KCacheHit BpsIn BpsOut
localhost סך הכל 0.00 1.07k 697 0.00% 98.17% 476.83k 242.83k

CXN Cmd ID User Host DB שאילתת זמן
localhost Query 766446598 test 10.0.0.1 foo 00:02 INSERT INTO table (

(דוגמה זו קטועה מימין כך שהיא תתאים למסוף בעת הפעלת 'man
innotop')

אם השרת שלך תפוס, תראה יותר פלט. שימו לב לשורה הראשונה על המסך,
מה שאומר לך ש-read-only מוגדר ל-true ([RO]), באיזה מצב אתה נמצא ובאיזה שרת
אתה מחובר. אתה יכול לעבור למצבים אחרים באמצעות הקשות; לחץ על 'T' כדי לעבור
לרשימה של עסקאות InnoDB, למשל.

הקש על '?' מקש כדי לראות אילו מקשים פעילים במצב הנוכחי. אתה יכול ללחוץ על כל אחד מהם
המקשים האלה ו-innotop יבצעו את הפעולה המבוקשת או יבקשו מכם קלט נוסף.
אם למערכת שלך יש תמיכה ב-Term::ReadLine, תוכל להשתמש ב-TAB ובמקשים אחרים כדי להשלים אוטומטית
ולערוך קלט.

כדי לצאת מ-innotop, הקש על מקש 'q'.

אפשרויות


innotop מוגדר בעיקר דרך קובץ התצורה שלו, אבל חלק מהתצורה
אפשרויות יכולות להגיע משורת הפקודה. אתה יכול גם לציין קובץ לניטור עבור InnoDB
פלט מצב; ראה "מעקב אחר קובץ" לפרטים נוספים.

אתה יכול לשלול כמה אפשרויות על ידי הקדמת שם האפשרות עם --no. לדוגמה, --noinc
(או --no-inc) שולל את "--inc".

--צֶבַע
הפעל או השבת את צביעת המסוף. מתאים להגדרת קובץ התצורה "צבע".

--config
מציין קובץ תצורה לקריאה. אפשרות זו אינה דביקה, כלומר
אינו ממשיך לקובץ התצורה עצמו.

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

--לְעַכֵּב
מציין את משך הזמן להשהיה בין תקתק (רענון). מקביל ל
אפשרות תצורה "מרווח".

- עזרה
הדפס סיכום של שימוש ויציאה בשורת הפקודה.

--מנחה
מארח להתחבר אליו.

-- Inc
מציין אם innotop צריך להציג מספרים מוחלטים או מספרים יחסיים (היסטים
מהערכים הקודמים שלהם). מתאים לאפשרות התצורה "status_inc".

--מצב
מציין את המצב שבו innotop צריך להתחיל. מתאים לתצורה
אפשרות "מצב".

--nonint
אפשר פעולה לא אינטראקטיבית. ראה "פעולה לא אינטראקטיבית" למידע נוסף.

--סיסמה
סיסמה לשימוש לחיבור.

--נמל
יציאה לשימוש לחיבור.

--skipcentral
אל תקרא את קובץ התצורה המרכזי.

--מִשׁתַמֵשׁ
משתמש לשימוש לחיבור.

--גִרְסָה
פלט מידע על גרסת ויציאה.

--לִכתוֹב
מגדיר את אפשרות התצורה "לקריאה בלבד" ל-0, מה שגורם ל-innotop לכתוב את הריצה
תצורה ל ~/.innotop/innotop.conf ביציאה, אם לא נטען קובץ תצורה
בעת ההפעלה.

מפתחות מקשים


innotop הוא אינטראקטיבי, ואתה שולט בו באמצעות לחיצות מקשים.

· מקשים רישיות עוברים בין המצבים.

· מקשים קטנים מתחילים פעולה כלשהי במצב הנוכחי.

· מפתחות אחרים עושים משהו מיוחד כמו שינוי תצורה או הצגת רישיון innotop.

ללחוץ '?' בכל עת כדי לראות את המפתחות הפעילים כרגע ומה הם עושים.

מצבים


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

ב: InnoDB Buffers
מצב זה מציג מידע על מאגר המאגר של InnoDB, סטטיסטיקות עמודים, הוספה
מאגר, ואינדקס גיבוב אדפטיבי. הנתונים מגיעים מ-SHOW INNODB STATUS.

מצב זה מכיל את "buffer_pool", "page_statistics", "insert_buffers" ו
טבלאות "adaptive_hash_index" כברירת מחדל.

ג: סיכום פקודות
מצב זה דומה למצב Command Summary של mytop. זה מציג את "cmd_summary"
טבלה, שנראית בערך כמו הבא:

סיכום פקודה (? לעזרה) localhost, 25+07:16:43, 2.45 QPS, 3thd, 5.0.40
__________________ תקציר פקודות __________________
שם ערך Pct Last Incr Pct
Select_scan 3244858 69.89% 2 100.00%
Select_range 1354177 29.17% 0 0.00%
Select_full_join 39479 0.85% 0 0.00%
Select_full_range_join 4097 0.09% 0 0.00%
Select_range_check 0 0.00% 0 0.00%

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

הדוגמה מראה מה אתה רואה אם ​​הקידומת היא "Select_". קידומת ברירת המחדל היא
"Com_". אתה יכול לבחור קידומת עם מקש 's'.

זה די כמו להריץ SHOW VARIABLES כמו "תחילית%" עם זיכרון ויפה
עיצוב.

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

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

InnoDB מציב מידע מבוי סתום לפני מידע אחר ב-SHOW INNODB
פלט STATUS. אם יש הרבה מנעולים, מידע המבוי הסתום יכול לגדול מאוד
גדול, ויש הגבלה על גודל הפלט SHOW INNODB STATUS. גדול
מבוי סתום יכול למלא את כל הפלט, או אפילו להיות קטוע, ולמנוע ממך לראות
מידע אחר בכלל. אם אתה מפעיל את innotop במצב אחר, למשל T
מצב, ופתאום אתה לא רואה כלום, אולי תרצה לבדוק ולראות אם א
מבוי סתום מחק את הנתונים שאתה צריך.

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

אתה יכול גם להגדיר את innotop לזהות אוטומטית מתי צריך מבוי סתום גדול
יוחלף בקטן (ראה "auto_wipe_dl").

מצב זה מציג כברירת מחדל את טבלאות ה-"deadlock_transactions" ו-"deadlock_locks".

F: שגיאות מפתח זר של InnoDB
מצב זה מציג את המידע האחרון על שגיאת מפתח זר של InnoDB, כגון הטבלה היכן
זה קרה, מתי ומי ואיזו שאילתה גרמה לזה, וכן הלאה.

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

מצב זה מציג את הטבלה "fk_error" כברירת מחדל.

I: InnoDB I/O Info
מצב זה מציג את סטטיסטיקות ה-I/O של InnoDB, כולל שרשורי ה-I/O, ה-I/O ממתינים, הקובץ
I/O שונות, וסטטיסטיקות יומן. הוא מציג את "io_threads", "pending_io",
טבלאות "file_io_misc", ו-"log_statistics" כברירת מחדל.

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

אתה יכול להגדיר את MySQL ואת innotop לנטר לא רק מנעולים שעבורם עסקה
מחכה, אבל גם אלה המוחזקים כרגע. אתה יכול לעשות זאת עם מנעול InnoDB
צג (http://dev.mysql.com/doc/en/innodb-monitor.html>). זה לא מתועד ב
את המדריך של MySQL, אבל יצירת צג הנעילה עם ההצהרה הבאה גם
משפיע על הפלט של SHOW INNODB STATUS, שבו innotop משתמש:

CREATE TABLE innodb_lock_monitor(a int) ENGINE=INNODB;

זה גורם ל-InnoDB להדפיס את הפלט שלו לקובץ MySQL כל 16 שניות בערך, כמו
מצוין במדריך, אבל זה גם גורם לפלט הרגיל של SHOW INNODB STATUS לכלול
מידע מנעול, אשר innotop יכול לנתח ולהציג (זהו הלא מתועד
תכונה).

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

מצב זה מציג את טבלת "innodb_locks" כברירת מחדל. הנה דוגמה של המסך
כאשר חיבור אחד ממתין לנעילות חיבור אחר מחזיק:

____________________ מנעולים InnoDB __________________________
סוג מזהה CXN ממתין. אינדקס טבלת DB מצב פעיל
localhost 12 RECORD 1 00:10 00:10 X test t1 PRIMARY
localhost 12 TABLE 0 00:10 00:10 IX test t1
localhost 12 RECORD 1 00:10 00:10 X test t1 PRIMARY
localhost 11 TABLE 0 00:00 00:25 IX test t1
localhost 11 RECORD 0 00:00 00:25 X test t1 PRIMARY

אתה יכול לראות שהחיבור הראשון, מזהה 12, ממתין לנעילה על מקש PRIMARY
test.t1, והוא מחכה כבר 10 שניות. החיבור השני לא מחכה,
כי העמודה Waiting היא 0, אבל היא מכילה נעילות על אותו אינדקס. זה אומר לך
חיבור 11 חוסם את חיבור 12.

M: מצב שכפול מאסטר/עבד
מצב זה מציג את הפלט של SHOW SLAVE STATUS ו-SHOW MASTER STATUS בשלושה
שולחנות. השניים הראשונים מחלקים את מצב העבד לסטטוס שרשור SQL ו-I/O, ו
האחרון מציג סטטוס מאסטר. מסננים מוחלים כדי לחסל שרתים שאינם עבדים
טבלאות העבדים, ושרתים שאינם מאסטר מטבלת המאסטר.

מצב זה מציג את "slave_sql_status", "slave_io_status" ו-"master_status"
טבלאות כברירת מחדל.

O: פתח טבלאות
סעיף זה מגיע מפקודת SHOW OPEN TABLES של MySQL. כברירת מחדל הוא מסונן
כדי להציג טבלאות שנמצאות בשימוש על ידי שאילתה אחת או יותר, כדי שתוכל להסתכל עליהן במהירות
אילו שולחנות 'חמים'. אתה יכול להשתמש בזה כדי לנחש אילו שולחנות עשויים להיות נעולים
במשתמע.

מצב זה מציג את מצב "open_tables" כברירת מחדל.

ש: רשימת שאילתות
מצב זה מציג את הפלט מ-SHOW FULL PROCESSLIST, בדומה mytopרשימת השאילתות של
מצב. המצב הזה עושה זאת לֹא הצג מידע הקשור ל-InnoDB. זה כנראה אחד מהם
המצבים השימושיים ביותר לשימוש כללי.

יש כותרת אינפורמטיבית המציגה מידע כללי על המצב שלך
שרת. אתה יכול להפעיל ולכבות אותו עם מקש 'h'. כברירת מחדל, innotop מסתיר
תהליכים לא פעילים ותהליך משלו. אתה יכול להפעיל ולכבות את אלה עם ה-'i'
ומפתחות 'a'.

אתה יכול להסביר שאילתה ממצב זה עם מקש 'e'. זה מציג את השאילתה
טקסט מלא, התוצאות של EXPLAIN, ובגרסאות MySQL חדשות יותר, אפילו הממוטבות
שאילתה הנובעת מ-EXPLAIN EXTENDED. innotop גם מנסה לשכתב שאילתות מסוימות
כדי לגרום להם להסביר. לדוגמה, הצהרות INSERT/SELECT ניתנות לכתיבה מחדש.

מצב זה מציג את הטבלאות "q_header" ו-"processlist" כברירת מחדל.

R: InnoDB Row Operations ו-Semaphores
מצב זה מציג פעולות שורה של InnoDB, פעולות שורה שונות, סמפורות ו
מידע ממערך ההמתנה. הוא מציג את ה-"row_operations",
טבלאות "row_operation_misc", "semaphores" ו-"wait_array" כברירת מחדל.

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

ניתן לעבור בין התצוגות על ידי לחיצה על מקש. מקש 's' מדפיס שורה בודדת
בכל פעם שהמסך מתעדכן, בסגנון של vmstat. מקש 'g' משנה את התצוגה ל
גרף של אותם מספרים, בערך כמו tload. מקש 'v' משנה את התצוגה ל-a
טבלת ציר של שמות משתנים בצד שמאל, עם עדכונים רצופים שגוללים על פניו
המסך משמאל לימין. אתה יכול לבחור כמה עדכונים לשים על המסך
עם משתנה התצורה "num_status_sets".

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

מצב זה לא באמת מציג שום טבלאות כמו מצבים אחרים. במקום זאת, הוא משתמש ב-a
הגדרת טבלה כדי לחלץ ולעצב את הנתונים, אך לאחר מכן היא הופכת את התוצאה פנימה
דרכים מיוחדות לפני הוצאתו. הוא משתמש בהגדרת הטבלה "var_status" עבור
זֶה.

T: עסקאות InnoDB
מצב זה מציג עסקאות מהפלט של צג InnoDB, ב חלק עליוןפורמט כמו.
המצב הזה הוא הסיבה שכתבתי innotop.

אתה יכול להרוג שאילתות או תהליכים עם המקשים 'k' ו-'x', ולהסביר שאילתה באמצעות
המקשים 'e' או 'f'. InnoDB לא מדפיסה את השאילתה המלאה בעסקאות, אז
ייתכן שההסבר לא יעבוד כמו שצריך אם השאילתה קטועה.

ניתן להפעיל ולכבות את כותרת המידע באמצעות מקש 'h'. כברירת מחדל,
innotop מסתיר עסקאות לא פעילות ועסקה משלה. אתה יכול להפעיל את זה
וכבה עם המקשים 'i' ו-'a'.

מצב זה מציג את הטבלאות "t_header" ו-"innodb_transactions" כברירת מחדל.

INNOTOP סטָטוּס


השורה הראשונה שמציגה innotop היא סוג של "שורת מצב". מה הוא מכיל תלוי
המצב שבו אתה נמצא, ואיזה שרתים אתה מנטרת. המילים הראשונות תמיד
[RO] (אם קריאה בלבד מוגדר ל-1), מצב innotop, כגון "InnoDB Txns" עבור מצב T,
ואחריו תזכורת ללחוץ על '?' לעזרה בכל עת.

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

אם אתה במצב InnoDB, כגון T או B, המילה הבאה היא "InnoDB" ואחריה כמה
מידע על הפלט SHOW INNODB STATUS המשמש לעיבוד המסך. המילה הראשונה
הוא מספר השניות מאז ה-SHOW INNODB STATUS האחרון, שבו משתמש InnoDB כדי לחשב
כמה סטטיסטיקות לשנייה. הבא הוא פרצוף סמיילי המציין אם ה-InnoDB
הפלט קטוע. אם הסמיילי הוא :-), הכל בסדר; אין קיצוץ. א
:^| פירוש הדבר שרשימת העסקאות כל כך ארוכה, InnoDB הדפיסה רק חלק מהן
עסקאות. לבסוף, זעף :-( פירושו שהפלט לא שלם, וזה כנראה בשל
למבוי סתום שמדפיס יותר מדי מידע על נעילה (ראה "D: InnoDB Deadlocks").

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

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

אם אתה עוקב אחר קבוצת שרתים (ראה "קבוצות שרתים"), שורת המצב מציגה את
שם הקבוצה. אם יש שגיאה בחיבור כלשהו בקבוצה, שם הקבוצה הוא
ואחריו חלק מהחיבורים שאין בהם שגיאות.

ראה "טיפול בשגיאות" לפרטים נוספים על טיפול בשגיאות של innotop.

פיקוח A קובץ
אם תיתן שם קובץ בשורת הפקודה, innotop לא יתחבר לשום שרת ב
את כל. זה יצפה בקובץ שצוין עבור פלט סטטוס InnoDB וישתמש בזה בתור הנתונים שלו
מָקוֹר. זה תמיד יציג חיבור יחיד בשם 'קובץ'. ומכיוון שזה לא יכול
להתחבר לשרת, הוא לא יכול לקבוע כמה זמן השרת שהוא עוקב אחריו היה פתוח;
כך שהוא מחשב את זמן הפעולה של השרת כזמן מאז שהחלה לפעול ב-innotop.

שרת מִנהָל


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

אתה יכול להרוג חיבור, או בגרסאות חדשות יותר של MySQL להרוג שאילתה אבל לא
חיבור, ממצבי "Q: Query List" ו-"T: InnoDB Transactions". הקש 'k' כדי להנפיק א
פקודת KILL, או 'x' כדי להוציא פקודת KILL QUERY. innotop יבקש ממך את
שרת ו/או מזהה חיבור להרוג (innotop לא מנחה אותך אם יש רק אחד
בחירה אפשרית עבור כל קלט). innotop בוחר מראש את השאילתה שנמשכת הכי הרבה זמן, או את
החיבור העתיק ביותר. אשר את הפקודה באמצעות 'y'.

ב"סטטוס שכפול עבדים"" ב"M: מצב מאסטר, אתה יכול להפעיל ולעצור עבדים עם
מקשי 'a' ו-'o', בהתאמה. אתה יכול לשלוח פקודות אלה לעבדים רבים בבת אחת.
innotop ממלא עבורך פקודת ברירת מחדל של START SLAVE או STOP SLAVE, אבל אתה יכול
למעשה ערוך את הפקודה ושלח כל מה שתרצה, כגון SET GLOBAL
SQL_SLAVE_SKIP_COUNTER=1 כדי לגרום לעבד לדלג על אירוע binlog אחד כאשר הוא מתחיל.

אתה יכול גם לבקש מ-innotop לחשב את ה-binlog המוקדם ביותר בשימוש על ידי כל עבד ולהנפיק א
PURGE MASTER LOGS על המאסטר. השתמש במקש 'b' לשם כך. innotop יבקש ממך א
מאסטר כדי להפעיל את הפקודה, ולאחר מכן בקש ממך את שמות החיבורים של אותו מאסטר
עבדים (אין שום דרך לאינוטופ לקבוע זאת באופן מהימן בעצמו). innotop ימצא
את הבינלוג המינימלי בשימוש על ידי קשרי עבדים אלה והציעו אותו כטיעון
יומני טיהור מאסטר.

שרת קשרים


כאשר אתה יוצר חיבור שרת באמצעות '@', innotop מבקש ממך סדרה של כניסות, כמו
התעופה

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

DBI:mysql:;mysql_read_default_group=mysql;host=HOSTNAME

מכיוון שה-DSN הזה מועבר לדרייבר DBD::mysql, עליך לקרוא את מנהל ההתקן
תיעוד בכתובת "/search.cpan.org/dist/DBD-mysql/lib/DBD/mysql.pm"" ב"http: עבור
פרטים מדויקים על כל האפשרויות שאתה יכול להעביר את הנהג ב-DSN. אתה יכול לקרוא
עוד על DBI בhttp://dbi.perl.org/docs/>, ובמיוחד ב
<http://search.cpan.org/~timb/DBI/DBI.pm>.

האפשרות mysql_read_default_group=mysql מאפשרת למנהל ההתקן של DBD לקרוא את אפשרויות ה-MySQL שלך
קבצים, כגון ~ / .my.cnf במערכות UNIX-ish. אתה יכול להשתמש בזה כדי למנוע ציון א
שם משתמש או סיסמה עבור החיבור.

טבלת מבוי סתום של InnoDB
פריט אופציונלי זה אומר ל-innotop שם טבלה שהוא יכול להשתמש בו כדי ליצור בכוונה א
מבוי סתום קטן (ראה "D: InnoDB מבוי סתום"). אם אתה מציין אפשרות זו, אתה רק צריך
כדי להיות בטוח שהטבלה לא קיימת, וכי innotop יכול ליצור ולשחרר את הטבלה
עם מנוע האחסון InnoDB. אתה יכול בבטחה להשמיט או פשוט לקבל את ברירת המחדל אם אתה
לא מתכוון להשתמש בזה.

שם משתמש
innotop ישאל אותך אם אתה רוצה לציין שם משתמש. אם אתה אומר 'y', זה יהיה אז
לבקש ממך שם משתמש. אם יש לך קובץ אפשרויות MySQL שמציין את שלך
שם משתמש, אינך צריך לציין שם משתמש.

ברירת המחדל של שם המשתמש הוא שם הכניסה שלך במערכת שבה אתה מפעיל את innotop.

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

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

שרת קבוצות


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

אתה יכול לבחור איזו קבוצה לנטר באמצעות מקש '#', ותוכל ללחוץ על מקש ה-TAB
לעבור לקבוצה הבאה. אם אינך עוקב כעת אחר קבוצה, הקש TAB
בוחר את הקבוצה הראשונה.

כדי ליצור קבוצה, הקש על מקש '#' והקלד את שם הקבוצה החדשה שלך, ולאחר מכן הקלד את
שמות הקשרים שאתה רוצה שהקבוצה תכיל.

החלפה בין קשרים


innotop מאפשר לך להחליף במהירות אילו שרתים אתה מנטרת. הדרך הבסיסית ביותר היא על ידי
לחיצה על מקש '@' והקלדת שם/שמות החיבור/ים שבהם ברצונך להשתמש. זֶה
ההגדרה היא לפי מצב, כך שאתה יכול לנטר חיבורים שונים בכל מצב, ו-innotop
זוכר אילו חיבורים אתה בוחר.

ניתן לעבור במהירות לחיבור 'הבא' לפי סדר אלפביתי בעזרת מקש 'n'.
אם אתה עוקב אחר קבוצת שרתים (ראה "קבוצות שרתים") זה יעבור לקבוצה הראשונה
חיבור.

אתה יכול גם להקליד שמות חיבורים רבים, ו-innotop יאחזר ויציג מהם נתונים
את כל. פשוט הפרד את שמות החיבורים עם רווחים, למשל "שרת1 שרת2."
שוב, אם תקליד את השם של חיבור שלא קיים, innotop ינחה אותך
לקבלת מידע על חיבור וליצור את החיבור.

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

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

כאשר אתה מנטר יותר מחיבור אחד, שורת המצב של innotop משתנה. ראה "INNOTOP
סטָטוּס".

ERROR מטפל


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

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

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

כברירת מחדל, innotop יציג את הבעיה בטקסט אדום בתחתית הטבלה הראשונה
על המסך. אתה יכול להשבית התנהגות זו באמצעות "show_cxn_errors_in_tbl"
אפשרות תצורה, המופעלת כברירת מחדל. אם אפשרות "ניפוי באגים" מופעלת,
innotop יציג את השגיאה בתחתית כל טבלה, לא רק הראשונה. ואם
"show_cxn_errors" מופעל, innotop ידפיס את טקסט השגיאה גם ל-STDOUT. שְׁגִיאָה
ייתכן שהודעות יוצגו רק במצב שגרם לשגיאה, בהתאם למצב ו
האם innotop נמנע מלשאול את החיבור הזה.

לא אינטראקטיבי פעולה


אתה יכול להפעיל את innotop במצב לא אינטראקטיבי, ובמקרה זה הוא נשלט לחלוטין מ
את קובץ התצורה ואפשרויות שורת הפקודה. כדי להתחיל את innotop בלא אינטראקטיבי
במצב, תן את אפשרות שורת הפקודה L"<--nonint">. זה משנה את ההתנהגות של innotop ב-
הדרכים הבאות:

· מודולי Perl מסוימים אינם נטענים. Term::Readline לא נטען, מאז innotop
אינו מבקש באופן אינטראקטיבי. מונח::ANSIColor ו-Win32::Console::ANSI מודולים הם
לא טעון. מונח::ReadKey עדיין בשימוש, שכן ייתכן שיהיה צורך ב-innotop לבקש
סיסמאות חיבור בעת ההפעלה.

· innotop אינו מנקה את המסך לאחר כל סימון.

· innotop אינו ממשיך שינויים בקובץ התצורה.

· אם נתון "--count" ו-innotop נמצא במצב אינקרמנטלי (ראה "status_inc" ו
"--inc"), innotop למעשה מרענן פעם נוספת ממה שצוין כדי שיוכל להדפיס
סטטיסטיקה מצטברת. זה מדכא פלט במהלך הסימון הראשון, כך ש-innotop עשוי
נראה תלוי.

· innotop מציג רק את הטבלה הראשונה בכל מצב. זה כך שהפלט יכול להיות
מעובד בקלות עם כלי שירות אחרים של שורת הפקודה כגון awk ו-sed. לשנות
אילו טבלאות מוצגות בכל מצב, ראה "טבלאות". מכיוון שמצב "ש: רשימת שאילתות" הוא כך
חשוב, innotop משבית אוטומטית את טבלת "q_header". זה מבטיח לך
ראה את טבלת "processlist", גם אם הגדרת innotop להציג את ה-q_header
טבלה במהלך פעולה אינטראקטיבית. באופן דומה, במצב "T: InnoDB Transactions", ה-
טבלת "t_header" מדוכאת כך שתראה רק את הטבלה "innodb_transactions".

· כל הפלט מופרד בטאבים במקום להיות מיושר עמודות עם רווח לבן, ו
innotop מדפיס את התוכן המלא של כל טבלה במקום להדפיס רק מסך אחד
בכל פעם.

· innotop מדפיס כותרות עמודות פעם אחת בלבד במקום כל סימון (ראה "hide_hdr").
innotop אינו מדפיס כיתובים בטבלה (ראה "display_table_captions"). innotop מבטיחה
אין שורות ריקות בפלט.

· innotop אינו מכבד את הטרנספורמציה ה"קצרה", שבדרך כלל מקצרת חלק
מספרים לפורמטים הניתנים לקריאה אנושית.

· innotop אינו מדפיס שורת סטטוס (ראה "INOTOP STATUS").

קונפיגורציה


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

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

S: הצהרת זמני שינה
עריכת עיכובי שינה של הצהרת SQL, אשר גורמים להשהיה של innotop עבור הכמות שצוינה של
זמן לאחר ביצוע הצהרה. ראה "הצהרות SQL" להגדרה של כל אחד מהם
הצהרה ומה היא עושה. כברירת מחדל, innotop אינו מעכב לאחר הצהרות כלשהן.

תכונה זו כלולה כך שתוכל להתאים אישית את תופעות הלוואי הנגרמות על ידי ניטור
השרת שלך. אולי לא תראה שום אפקט, אבל כמה משתמשי innotop שמו לב לזה
גרסאות MySQL מסוימות תחת עומס גבוה מאוד עם InnoDB מופעלת לוקחות יותר זמן מהרגיל
כדי לבצע SHOW STATUS גלובלי. If innotop calls הצג את רשימת התהליכים המלאה מיד
לאחר מכן, רשימת התהליך מכילה יותר שאילתות ממה שהמכונה עושה בממוצע
בכל רגע נתון. מגדיר את innotop להשהיה קצרה לאחר קריאת SHOW GLOBAL
STATUS מקל על השפעה זו.

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

ג: ערוך עמודות
מפעיל את עורך הטבלה באחת מהטבלאות המוצגות. ראה "עורך הטבלה". א
דרך חלופית להפעיל את עורך הטבלה מבלי להיכנס לתיבת הדו-שיח של התצורה היא
עם מקש '^'.

g: תצורה כללית
מפעיל את עורך התצורה כדי לערוך תצורה גלובלית וספציפית למצב
משתנים (ראה "מצבים"). innotop מבקש ממך לבחור משתנה מבין ה
גלובליים וספציפיים למצב בהתאם למצב הנוכחי.

k: כללי צביעת שורות
מפעיל את עורך חוקי צביעת השורות באחת מהטבלאות המוצגות. ראה "צבעים"
לקבלת פרטים.

p: נהל תוספים
מפעיל את עורך תצורת הפלאגין. ראה "PLUGINS" לפרטים.

s: קבוצות שרתים
מאפשר לך ליצור ולערוך קבוצות שרתים. ראה "קבוצות שרתים".

t: בחר טבלאות מוצגות
מאפשר לך לבחור אילו טבלאות להציג במצב זה. ראה "מצבים" ו"טבלאות".

תְצוּרָה קובץ


מיקומי ברירת המחדל של קבצי התצורה של innotop הם $HOME/.innotop ו
/etc/innotop/innotop.conf, ומחפשים אותם בסדר הזה. אם הראשון
קובץ התצורה קיים, השני לא יעובד. ניתן לעקוף את אלה
אפשרות שורת הפקודה "--config". אתה יכול לערוך אותו ביד בבטחה, עם זאת, ב-notop
קובץ התצורה כאשר הוא מתחיל, ואם קריאה בלבד מוגדר ל-0, כותב אותו שוב
כאשר הוא יוצא. לפיכך, אם קריאה בלבד מוגדר ל-0, כל השינויים שתבצע ביד תוך כדי innotop
פועל יאבד.

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

קובץ תצורה הוא לקריאה בלבד כברירת מחדל. אתה יכול לעקוף את זה עם "--כתוב". לִרְאוֹת
"לקריאה בלבד".

קובץ התצורה מסודר למקטעים כמו קובץ INI. כל קטע מתחיל
עם [שם מדור] ומסתיים ב-[/שם מדור]. לערכים של כל סעיף יש א
תחביר שונה בהתאם לנתונים שהם צריכים לאחסן. אתה יכול לשים הערות ב-
קוֹבֶץ; כל שורה שמתחילה בתו # היא הערה. innotop לא יקרא את
הערות, כך שהוא לא יכתוב אותן בחזרה לקובץ כשהוא יוצא. הערות בקריאה-
עם זאת, רק קובצי תצורה עדיין שימושיים.

השורה הראשונה בקובץ היא מספר הגרסה של innotop. זה מאפשר ל-notop לשים לב מתי
פורמט הקובץ אינו תואם לאחור, ומשדרג בצורה חלקה מבלי להרוס את
תצורה מותאמת אישית.

הרשימה הבאה מתארת ​​כל חלק בקובץ התצורה ואת הנתונים שהוא
מכיל:

כללי
הסעיף 'כללי' מכיל משתני תצורה גלובליים ומשתנים שעשויים
להיות ספציפי למצב, אבל לא שייך לאף סעיף אחר. התחביר הוא פשוט
key=value list. innotop כותב הערה מעל כל ערך כדי לעזור לך לערוך את הקובץ
ביד.

S_func
שולט בהצגת מצב S (ראה "S: משתנים ומצב"). אם g, הערכים הם
גרף; אם s, הערכים הם כמו vmstat; אם p, הערכים נמצאים בטבלה עם ציר.

S_set
מציין איזו קבוצת משתנים להציג במצב "S: משתנים ומצב". לִרְאוֹת
"סטים משתנים".

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

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

ברירת המחדל היא 'ascii', המחשיבה כל דבר מחוץ ל-ASCII רגיל כ-a
אופי שליטה. הערכים המותרים האחרים הם 'unicode' ו-'none'. 'אף אחד'
מחשיב כל תו כדמות בקרה, שיכולה להיות שימושית לקריסה
כל שדות הטקסט בשאילתות.

cmd_filter
זוהי הקידומת שמסננת משתנים במצב "C: Command Summary".

צֶבַע
האם מותרת צביעת מסוף.

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

באגים
אפשרות זו מאפשרת יותר שגיאות מילוליות והופכת את innotop לקפדנית יותר בחלקם
מקומות. זה יכול לעזור באיתור באגים במסננים ובקודים אחרים המוגדרים על ידי המשתמש. זה גם
גורם ל-innotop לכתוב הרבה מידע ל-"debugfile" כאשר יש קריסה.

קובץ debug
קובץ שאליו innotop יכתוב מידע כשיש קריסה. לִרְאוֹת
"קבצים".

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

גלוֹבָּלִי
האם להציג משתנים ומצב GLOBAL. innotop מנסה לעשות זאת רק על
שרתים התומכים באפשרות GLOBAL להצגת משתנים והצגת סטטוס. ב
לכמה גרסאות MySQL, אתה צריך הרשאות מסוימות כדי לעשות זאת; אם אין לך
אותם, innotop לא יוכל להביא כל נתוני משתנה ונתוני סטטוס. זֶה
משתנה תצורה מאפשר לך להפעיל את innotop ולאחזר את הנתונים שאתה יכול אפילו
ללא ההרשאות המוגברות.

אני כבר לא יכול למצוא או לשחזר את המצב שבו GLOBAL לא הותר, אבל אני
יודע שהיה אחד.

graph_char
מגדיר את התו לשימוש בעת ציור גרפים במצב "S: משתנים ומצב".

header_highlight
מגדיר כיצד להדגיש את כותרות העמודות. זה עובד רק אם Term::ANSIColor הוא
זמין. ערכים חוקיים הם 'מודגש' ו'קו תחתון'.

hide_hdr
מסתיר את כותרות העמודות באופן גלובלי.

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

משתנה זה מקבל שברירי שנייה.

מצב
המצב שבו innotop אמור להתחיל. הטיעונים המותרים זהים ל-
לחיצות מקשים שבוחרות מצב באופן אינטראקטיבי. ראה "מצבים".

NUM_DIGITS
כמה ספרות להציג במספרים שברים ובאחוזים. הטווח של המשתנה הזה
הוא בין 0 ל-9 וניתן להגדיר אותו ישירות ממצב "S: משתנים ומצב" עם
המקשים '+' ו-'-'. הוא משמש ב-"set_precision", "קצר" ו-"אחוזים"
טרנספורמציות.

num_status_sets
שולט בכמה קבוצות של משתני מצב להציג ב-"S: משתנים &
מצב". זה גם שולט במספר הקבוצות הישנות של משתנים innotop keeps
בזיכרון שלו, כך שככל שהמשתנה הזה גדול יותר, כך משתמש innotop יותר בזיכרון.

plugin_dir
מציין היכן ניתן למצוא תוספים. כברירת מחדל, innotop מאחסן תוספים ב-
ספריית המשנה 'plugins' של ספריית התצורה של innotop שלך.

באופן קריא
האם קובץ התצורה הוא לקריאה בלבד. לא ניתן להגדיר זאת באופן אינטראקטיבי.

show_cxn_errors
גורם לשגיאות חיבור הדפסה של innotop ל-STDOUT. ראה "טיפול בשגיאות".

show_cxn_errors_in_tbl
גורם לשגיאות חיבור של innotop להציג כשורות בטבלה הראשונה על המסך. לִרְאוֹת
"טיפול בשגיאות".

show_percent
מוסיף תו '%' אחרי הערך המוחזר על ידי השינוי ב"אחוז".

show_statusbar
קובע אם להציג את שורת המצב בתצוגה. ראה "INOTOP STATUS".

skip_innodb
משבית את האחזור של SHOW INNODB STATUS, למקרה שלשרת/ים שלך אין InnoDB
מופעל ואתה לא רוצה ש-innotop ינסה להביא אותו. זה גם יכול להיות שימושי
כאשר אין לך את הרשאת SUPER, נדרשת להפעלת SHOW INNODB STATUS.

status_inc
האם להציג ערכים מוחלטים או מצטברים עבור משתני סטטוס. מצטבר
הערכים מחושבים כהיסט מהערך האחרון של innotop saw עבור זה
מִשְׁתַנֶה. זוהי הגדרה גלובלית, אבל כנראה תהפוך ספציפית למצב ב
נקודה כלשהי. כרגע זה זוכה לכבוד קצת לא עקבי; מצבים מסוימים לא משתלמים
תשומת לב אליו.

תוספים
סעיף זה מכיל רשימה של שמות חבילות של תוספים פעילים. אם התוסף קיים,
innotop יפעיל אותו. ראה "PLUGINS" למידע נוסף.

מסננים
סעיף זה מכיל מסננים המוגדרים על ידי משתמש (ראה "מסננים"). כל שורה בפורמט
filter_name=text='טקסט מסנן' tbls='רשימת טבלאות'.

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

מסננים_פעילים
חלק זה מאחסן אילו מסננים פעילים בכל טבלה. כל שורה נמצאת ב-
format table_name=filter_list.

tbl_meta
סעיף זה מאחסן עמודות מוגדרות על ידי משתמש או מותאמות אישית (ראה "עמודות"). כל אחד
השורה היא בפורמט col_name=properties, כאשר המאפיינים הם a
name=רשימת ערך ציטוט.

חיבורים
סעיף זה מכיל את חיבורי השרת שהגדרת. כל שורה נמצאת ב
פורמט שם=מאפיינים, כאשר המאפיינים הם רשימת שם=ערך. הנכס
הם מובנים מאליהם, והיחיד שמטופל במיוחד הוא 'מעבר' כלומר
קיים רק אם 'savepass' מוגדר. חלק זה של קובץ התצורה יהיה
דילוג אם נעשה שימוש באפשרויות שורת הפקודה של DSN, שם משתמש או סיסמה. ראה "שרת
חיבורים".

חיבורים פעילים
סעיף זה מכיל רשימה של החיבורים הפעילים בכל מצב. כל שורה היא
בפורמט mode_name=connection_list.

server_groups
סעיף זה מכיל קבוצות שרתים. כל שורה בפורמט name=connection_list.
ראה "קבוצות שרתים".

active_server_groups
סעיף זה מכיל רשימה של קבוצת שרתים פעילה בכל מצב. כל שורה היא
בפורמט mode_name=server_group.

מקסימום_ערכים_נראו
סעיף זה מכיל את הערכים המקסימליים שנראו עבור משתנים. זה משמש לקנה מידה של
גרפים במצב "S: משתנים ומצב". כל שורה בפורמט name=value.

עמודות_פעילים
סעיף זה מכיל רשימות עמודות בטבלה. כל שורה בפורמט
tbl_name=column_list. ראה "עמודות".

מיון_קולות
סעיף זה מכיל את הגדרת המיון. כל שורה בפורמט
tbl_name=column_list. אם הקידומת של עמודה היא '-', העמודה הזו ממוינת בירידה.
ראה "מיון".

גלויות_טבלאות
סעיף זה מגדיר אילו טבלאות גלויות בכל מצב. כל שורה נמצאת ב
format mode_name=table_list. ראה "טבלאות".

varsets
סעיף זה מגדיר ערכות משתנים לשימוש במצב "S: Status & Variables". כל שורה
הוא בפורמט name=variable_list. ראה "ערכות משתנות".

צבעים
סעיף זה מגדיר כללי צביעה. כל שורה בפורמט
tbl_name=property_list. ראה "צבעים".

stmt_sleep_times
סעיף זה מכיל הצהרת זמני שינה. כל שורה בפורמט
statement_name=זמן_שינה. ראה "S: הצהרת זמני שינה".

group_by
חלק זה מכיל רשימות עמודות עבור ביטויי group_by של הטבלה. כל שורה בפנים
הפורמט tbl_name=column_list. ראה "קיבוץ".

התאמה אישית


אתה יכול להתאים אישית את innotop הרבה מאוד. לדוגמה, אתה יכול:

· בחר אילו טבלאות להציג, ובאיזה סדר.

· בחר אילו עמודות נמצאות בטבלאות אלו, וצור עמודות חדשות.

· סנן אילו שורות יוצגו עם מסננים מובנים, מסננים בהגדרת משתמש, ומהיר-
מסננים.

· מיין את השורות כדי לשים קודם נתונים חשובים או קבץ יחד שורות קשורות.

· הדגש שורות בצבע.

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

· עיצוב ביטויים משלך כדי לחלץ ולשלב נתונים לפי הצורך. זה נותן לך
גמישות בלתי מוגבלת.

כל אלה ועוד מוסברים בסעיפים הבאים.

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

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

אתה יכול לבחור אילו טבלאות להציג על ידי לחיצה על מקש '$'. ראה "מצבים" ו"טבלאות".

מחזור החיים של הטבלה הוא כדלקמן:

· כל טבלה מתחילה במקור נתונים, שהוא מערך של hashes. ראה להלן עבור
פרטים על מקורות נתונים.

· כל רכיב במקור הנתונים הופך לשורה בטבלה הסופית.

· עבור כל אלמנט במקור הנתונים, innotop מחלץ ערכים מהמקור ו
יוצר שורה. שורה זו היא גיבוב נוסף, ששלבים מאוחרים יותר יתייחסו אליו כ-$set.
הערכים תמציות innotop נקבעים לפי עמודות הטבלה. לכל עמודה יש
תת שגרת חילוץ, מורכבת מביטוי (ראה "ביטויים"). המתקבל
row הוא hash שהמפתחות שלו נקראים זהה לשם העמודה.

· innotop מסנן את השורות, מסיר את אלו שאין צורך להציג. לִרְאוֹת
"מסננים".

· innotop ממיין את השורות. ראה "מיון".

· innotop מקבץ את השורות יחד, אם צוין. ראה "קיבוץ".

· innotop צובע את השורות. ראה "צבעים".

· innotop הופך את ערכי העמודות בכל שורה. ראה "טרנספורמציות".

· innotop אופציונלי מסובב את השורות (ראה "PIVOTING"), ואז מסנן וממיין אותן.

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

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

כל טבלה מובנית מתוארת להלן:

adaptive_hash_index
מציג נתונים על אינדקס הגיבוב האדפטיבי של InnoDB. מקור נתונים: "STATUS_VARIABLES".

מאגר_buffer
מציג נתונים על מאגר המאגר של InnoDB. מקור נתונים: "STATUS_VARIABLES".

cmd_summary
מציג משתני מצב משוקלל. מקור נתונים: "STATUS_VARIABLES".

מבוי סתום
מראה אילו מנעולים הוחזקו והמתינו על ידי הקיפאון האחרון שזוהה. נתונים
מקור: "DEADLOCK_LOCKS".

deadlock_transactions
מציג עסקאות המעורבות בקיפאון האחרון שזוהה. מקור מידע:
"DEADLOCK_TRANSACTIONS".

להסביר
מציג את הפלט של EXPLAIN. מקור נתונים: "EXPLAIN".

file_io_misc
מציג נתונים על פעולות הקבצים והקלט/פלט של InnoDB. מקור מידע:
"STATUS_VARIABLES".

fk_error
מציג נתונים שונים על שגיאת המפתח הזר האחרונה של InnoDB. מקור מידע:
"STATUS_VARIABLES".

innodb_locks
מציג מנעולי InnoDB. מקור נתונים: "INNODB_LOCKS".

innodb_transactions
מציג נתונים על העסקאות הנוכחיות של InnoDB. מקור מידע:
"INNODB_TRANSACTIONS".

insert_buffers
מציג נתונים על מאגר ההוספה של InnoDB. מקור נתונים: "STATUS_VARIABLES".

io_threads
מציג נתונים על שרשורי I/O של InnoDB. מקור נתונים: "IO_THREADS".

log_statistics
מציג נתונים על מערכת הרישום של InnoDB. מקור נתונים: "STATUS_VARIABLES".

master_status
מציג סטטוס מאסטר שכפול. מקור נתונים: "STATUS_VARIABLES".

פתוח_טבלאות
מציג טבלאות פתוחות. מקור נתונים: "OPEN_TABLES".

עמוד_סטטיסטיקה
מציג נתונים סטטיסטיים של דפי InnoDB. מקור נתונים: "STATUS_VARIABLES".

pending_io
מציג פעולות I/O בהמתנה של InnoDB. מקור נתונים: "STATUS_VARIABLES".

רשימת תהליכים
מציג תהליכי MySQL נוכחיים (חוטים/חיבורים). מקור נתונים: "PROCESSLIST".

q_header
מציג ערכי סטטוס שונים. מקור נתונים: "STATUS_VARIABLES".

row_operation_misc
מציג נתונים על פעולות השורות של InnoDB. מקור נתונים: "STATUS_VARIABLES".

row_operations
מציג נתונים על פעולות השורות של InnoDB. מקור נתונים: "STATUS_VARIABLES".

סמפורות
מציג נתונים על הסמפורים והמוטקסים של InnoDB. מקור נתונים: "STATUS_VARIABLES".

slave_io_status
מציג נתונים על חוט הקלט/פלט העבד. מקור נתונים: "STATUS_VARIABLES".

slave_sql_status
מציג נתונים על חוט ה-SQL העבד. מקור נתונים: "STATUS_VARIABLES".

t_header
מציג ערכי סטטוס InnoDB שונים. מקור נתונים: "STATUS_VARIABLES".

var_status
מציג נתונים הניתנים להגדרה על ידי המשתמש. מקור נתונים: "STATUS_VARIABLES".

wait_array
מציג נתונים על מערך ההמתנה של מערכת ההפעלה InnoDB. מקור נתונים: "OS_WAIT_ARRAY".

עמודים
עמודות שייכות לטבלאות. אתה יכול לבחור עמודות של טבלה על ידי לחיצה על מקש '^', אשר
מפעיל את "עורך הטבלה" ומאפשר לך לבחור ולערוך עמודות. לחיצה על 'e' מבפנים
עורך הטבלה מאפשר לך לערוך את מאפייני העמודה:

· hdr: כותרת עמודה. זה מופיע בשורה הראשונה של הטבלה.

· סתם: הצדקה. '-' פירושו מוצדק לשמאל ו-'' פירושו מוצדק לימין, בדיוק כמו
עם קודי עיצוב printf (לא במקרה).

· dec: האם ליישר עוד יותר את העמודה על הנקודה העשרונית.

· num: האם העמודה היא מספרית. זה משפיע על אופן מיון הערכים (לקסיקלי או
מבחינה מספרית).

· תווית: הערה קטנה לגבי העמודה, המופיעה בדיאלוגים שעוזרים למשתמש
לבחור עמודות.

· src: ביטוי ש-innotop משתמש בו כדי לחלץ את נתוני העמודה מהמקור שלה (ראה
"מקורות מידע"). ראה "ביטויים" למידע נוסף על ביטויים.

· minw: מציין רוחב תצוגה מינימלי. זה עוזר לייצב את התצוגה, אשר
מקל על הקריאה אם ​​הנתונים משתנים לעתים קרובות.

· maxw: דומה ל-minw.

· טרנס: רשימה של טרנספורמציות עמודות. ראה "טרנספורמציות".

· agg: פונקציה מצטברת. ראה "קיבוץ". ברירת המחדל היא "ראשון".

· aggonly: שולט אם העמודה תוצג רק כאשר קיבוץ מופעל בטבלה
(ראה "קיבוץ"). כברירת מחדל, זה מושבת. זה אומר שעמודות תמיד יהיו
מוצג כברירת מחדל, בין אם הקיבוץ מופעל או לא. אם מוגדר אגונליות של עמודה
נכון, העמודה תופיע כאשר תחליף קיבוץ בטבלה. מספר עמודות
מוגדרים כך, כגון עמודת הספירה ב-"processlist" ו-"innodb_transactions",
כך שאתה לא רואה ספירה כאשר הקיבוץ אינו מופעל, אבל אתה רואה כאשר הוא כן.

מסננים
מסננים מסירים שורות מהתצוגה. הם מתנהגים כמו סעיף WHERE ב-SQL.
ל- innotop מספר מסננים מובנים, המסירים מידע לא רלוונטי כמו לא פעיל
שאילתות, אבל אתה יכול להגדיר גם משלך. innotop גם מאפשר לך ליצור מסננים מהירים,
שאינם נשמרים בקובץ התצורה, והם רק דרך קלה לצפייה מהירה
רק כמה שורות.

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

משתמש הוגדר מסננים

אם תקליד שם שאינו קיים, innotop יבקש ממך ליצור את המסנן.
קל ליצור מסננים אם אתה מכיר את Perl, ולא קשה אם לא. מה אתה עושה
יוצר תת-שגרה שמחזירה true אם השורה צריכה להיות מוצגת. השורה היא א
התייחסות hash הועברה לשגרת המשנה שלך בתור $set.

לדוגמה, תאר לעצמך שאתה רוצה לסנן את טבלת רשימת התהליכים כך שתראה רק שאילתות כאלה
פועלים יותר מחמש דקות. הקלד שם חדש עבור המסנן שלך ומתי
תתבקש להזין את גוף תת-השגרה, הקש TAB כדי להתחיל את ההשלמה האוטומטית של הטרמינל שלך.
אתה תראה את שמות העמודות בטבלה "רשימת תהליכים" (innotop בדרך כלל מנסה לעשות זאת
לעזור לך עם רשימות השלמה אוטומטית). אתה רוצה לסנן על העמודה 'זמן'. הקלד את ה
טקסט "$set->{time} > 300" כדי להחזיר אמת כאשר השאילתה בת יותר מחמש דקות.
זה כל מה שאתה צריך לעשות.

במילים אחרות, הקוד שאתה מקליד מוקף בהקשר מרומז, שנראה
ככה:

מסנן משנה {
שלי ( $set ) = @_;
# הקוד שלך כאן
}

אם המסנן שלך לא עובד, או אם משהו אחר פתאום מתנהג אחרת, אתה עלול
עשו שגיאה במסנן שלך, ו-innotop תופס בשקט את השגיאה. לְנַסוֹת
מתן אפשרות ל-"debug" לגרום ל-innotop לזרוק שגיאה במקום זאת.

מסננים מהירים

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

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

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

כדי לנקות מסננים מהירים, הקש על מקש '\' ו-innotop ינקה את כולם בבת אחת.

מִיוּן
ל- innotop יש ברירות מחדל מובנות הגיוניות כדי למיין את השורות החשובות ביותר לראש ה-
שולחן. כמו כל דבר אחר ב-innotop, אתה יכול להתאים אישית את אופן מיון כל טבלה.

כדי להתחיל את תיבת המיון, הפעל את "עורך הטבלה" עם מקש '^', בחר טבלה אם
הכרחי, ולחץ על מקש 's'. תראה רשימה של עמודות שבהן תוכל להשתמש במיון
ביטוי וביטוי המיון הנוכחי, אם יש. הזן רשימה של עמודות שלפיהן אתה
רוצה למיין והקש Enter. אם ברצונך להפוך את המיון, הקדמת שם העמודה א
סימן מינוס. לדוגמה, אם אתה רוצה למיין לפי עמודה a עולה, אז עמודה ב
יורד, הקלד 'a -b'. אתה יכול גם להוסיף במפורש + לפני העמודות שאתה רוצה
מיון עולה, אבל זה לא חובה.

במצבים מסוימים מופו מפתחות כדי לפתוח את הדו-שיח הזה ישירות ולהפוך את המיון במהירות לאחור
כיוון. ללחוץ '?' כרגיל כדי לראות אילו מפתחות ממופים בכל מצב.

הַקבָּצָה
innotop יכול לקבץ, או לצבור, שורות יחד (המונחים משמשים לסירוגין). זֶה
דומה למדי לסעיף SQL GROUP BY. אתה יכול לציין לקבץ על עמודות מסוימות,
או אם אינך מציין, כל קבוצת השורות תטופל כקבוצה אחת. זה
די כמו SQL עד כה, אבל בניגוד ל-SQL, אתה יכול גם לבחור עמודות לא מקובצות. innotop
למעשה צובר כל עמודה. אם אינך מציין במפורש פונקציית קיבוץ,
ברירת המחדל היא 'ראשון'. זה בעצם נוחות אז אתה לא צריך לציין
פונקציית צבירה עבור כל עמודה שתרצה בתוצאה.

אתה יכול לעבור במהירות בין קיבוץ בטבלה עם מקש '=', אשר מחליף את המצב המצטבר שלו
תכונה. מאפיין זה אינו ממשיך לקובץ התצורה.

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

לשתי טבלאות יש רשימות group_by ברירת מחדל ועמודת ספירה מובנית: "processlist" ו
"innodb_transactions". הקיבוץ הוא לפי חיבור וסטטוס, כך שתוכל לראות במהירות
כמה שאילתות או עסקאות יש במצב נתון בכל שרת שאתה מנטרת.
עמודות הזמן מצטברות כסכום; עמודות אחרות נשארות ברירת המחדל 'ראשון'
צבירה.

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

פונקציות קיבוץ חוקיות מוגדרות ב-hash %agg_funcs. הם כוללים

ראשון
מחזירה את הרכיב הראשון בקבוצה.

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

avg מחזירה את הממוצע של אלמנטים מוגדרים בקבוצה.

sum מחזירה את סכום האלמנטים בקבוצה.

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

התצוגה שלך עשויה להיראות כעת כך:

רשימת שאילתות (? לעזרה) localhost, 32:33, 0.11 QPS, 1 thd, 5.0.38-log

CXN Cmd Cnt ID שאילתת זמן מארח של משתמש
localhost Query 49 12933 webusr localhost 19:38 SELECT * FROM
localhost שליחת Da 23 2383 webusr localhost 12:43 SELECT col1,
localhost Sleep 120 140 webusr localhost 5:18:12
localhost סטטיסטיקות 12 19213 webusr localhost 01:19 SELECT * FROM

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

PIVOTING
innotop יכול לסובב טבלה לתצוגה קומפקטית יותר, בדומה ל- Pivot Table ב
גיליון אלקטרוני (מוכר גם כ-crosstab). סיבוב טבלה הופך עמודות לשורות. לְהַנִיחַ
אתה מתחיל עם הטבלה הזו:

פו בר
=== ===
1 3
2 4

לאחר הסיבוב, הטבלה תיראה כך:

שם set0 set1
==== ==== ====
foo 1 2
סרגל 3 4

כדי לקבל תוצאות סבירות, ייתכן שיהיה עליך לקבץ כמו גם ציר. innotop כרגע
עושה זאת עבור מצב "S: משתנים ומצב".

צבעים
כברירת מחדל, innotop מדגיש שורות עם צבע כך שתוכל לראות במבט חטוף אילו שורות
חשוב יותר. אתה יכול להתאים אישית את כללי הצביעה ולהוסיף משלך לכל שולחן.
פתח את עורך הטבלה עם מקש '^', בחר טבלה במידת הצורך והקש 'o' כדי לפתוח
תיבת הדו-שיח של עורך הצבעים.

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

מצב eq נעול שחור על_אדום
cmd eq שינה לבן
user eq system משתמש לבן
cmd eq Connect לבן
cmd eq Binlog Dump לבן
זמן > 600 אדום
זמן > 120 צהוב
זמן > 60 ירוק
זמן > 30 ציאן

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

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

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

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

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

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

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

innotop מתחיל במחרוזת טקסט שיכולה להיראות פשוטה כמו שם ערך או כמו
מסובך כביטוי פרל מן המניין. זה מסתכל על כל אסימון 'רק מילים' ב-
מחרוזת ומחליטה אם זה אמור להיות מפתח ל-$set hash. מילה חשופה היא
ערך לא מצוטט שעדיין לא מוקף בדברים דמויי קוד כמו שלטי דולר או מתולתל
סוֹגְרַיִם. אם innotop מחליט שה-barword אינו פונקציה או קוד פרל חוקי אחר,
זה ממיר אותו לגישה hash. לאחר עיבוד המחרוזת כולה, innotop מבצע קומפילציה
תת שגרה, כמו זה:

sub compute_column_value {
my ( $set, $cur, $pre ) = @_;
שלי $val = # מחרוזת מורחב הולך לכאן
להחזיר $ val;
}

הנה דוגמה קונקרטית, שנלקחה מטבלת הכותרות "q_header" במצב "ש: רשימת שאילתות".
ביטוי זה מחשב את ערכי העמודה qps, או Queries Per Second, מתוך ה-
ערכים שהוחזרו על ידי SHOW STATUS:

שאלות/עסקאות_זמן עבודה

innotop מחליט ששתי המילים הן מילים חשופות, והופך את הביטוי הזה ל-
קוד Perl הבא:

$set->{Questions}/$set->{Uptime_hires}

כאשר הוא מוקף בשאר הקוד של תת-השגרה, זהו Perl בר-ההפעלה
מחשבת ערך שאילתות ברזולוציה גבוהה לשנייה.

הארגומנטים לתת-השגרה נקראים $set, $cur ו-$pre. ברוב המקרים, $set and
$cur יהיו אותם ערכים. עם זאת, אם "status_inc" מוגדר, $cur לא יהיה זהה
בתור $set, כי $set כבר יכיל ערכים שהם ההפרש המצטבר
בין $cur ל-$pre.

כל עמודה ב-innotop מחושבת על ידי תתי שגרות הידור באותה צורה. יש
אין הבדל בין העמודות המובנות של innotop לבין העמודות המוגדרות על ידי המשתמש. זה שומר
דברים עקביים וצפויים.

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

להתחייב
מוסיף פסיקים למספרים גדולים כל שלושה מקומות עשרוניים.

dulint_to_int
מקבל שני מספרים שלמים ללא סימנים וממיר אותם ל-longlong יחיד. זה
שימושי עבור פעולות מסוימות עם InnoDB, המשתמשת בשני מספרים שלמים כטרנזקציה
מזהים, למשל.

no_ctrl_char
מסיר תווי שליטה במירכאות מהערך. זה מושפע מ-"charset"
משתנה תצורה.

טרנספורמציה זו פועלת רק בתוך מחרוזות במירכאות, למשל, ערכים ל-SET
סעיף בהצהרת UPDATE. זה לא ישנה את הצהרת UPDATE, אבל ישנה
כווץ את המחרוזת המצוטטת ל-[BINARY] או [TEXT], בהתאם לקבוצת התווים.

אָחוּז
ממיר מספר לאחוז על ידי הכפלתו בשניים, עיצובו באמצעות
ספרות "num_digits" אחרי הנקודה העשרונית, ובאופן אופציונלי הוספת סימן אחוז (ראה
"show_percent").

שניות_לזמן
פורמט מספר שניות כזמן בפורמט ימים+שעות:דקות:שניות.

set_precision
פורמט מספרים עם מספר הספרות "num_digits" אחרי הנקודה העשרונית.

לקצר
פורמט מספר כיחידה של 1024 (k/M/G/T) ועם "num_digits" מספר ספרות
אחרי הנקודה העשרונית.

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

עריכת הגדרת טבלת עבור מאגר חוצץ. ללחוץ ? לעזרה, ש כדי להפסיק.

שם תווית hdr src
cxn CXN חיבור שממנו cxn
buf_pool_size גודל בריכת מאגר גודל IB_bp_buf_poo
buf_free Free Bufs Buffers חינם ב IB_bp_buf_fre
pages_total Pages Total pages IB_bp_pages_t
pages_modified דפים מלוכלכים דפים השתנו (Dirty IB_bp_pages_m
buf_pool_hit_rate שיעור פגיעה של מאגר מאגר IB_bp_buf_poo
total_mem_alloc זיכרון סה"כ הקצאת זיכרון IB_bp_total_m
add_pool_alloc Add'l Pool Additonal pool alloca IB_bp_add_poo

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

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

המיפויים העיקריים הם בסגנון Vim, כמו במקומות רבים אחרים. לחיצה על 'j' ו-'k' מזיזה את
להדגיש למעלה או למטה. לאחר מכן תוכל (למ)למחוק או (ה)לערוך את העמודה המודגשת. אתה יכול
גם (א) הוסף עמודה לטבלה. זה למעשה רק מפעיל את אחת העמודות כבר
מוגדר עבור הטבלה; הוא מבקש ממך לבחור מבין העמודות הזמינות אך לא
מוצג כעת. לבסוף, אתה יכול לסדר מחדש את העמודות עם המקשים '+' ו-'-'.

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

אם אתה באמת רוצה להתאים אישית וליצור עמודה משלך, בניגוד להפעלה בלבד
אחד מובנה שאינו מוצג כעת, הקש על המקש החדש (n) ו-innotop יעשה זאת
מבקש ממך את המידע הדרוש לו:

· שם העמודה: זו צריכה להיות מילה ללא תווים מצחיקים, למשל סתם
אותיות, מספרים וקווים תחתונים.

· כותרת העמודה: זוהי התווית המופיעה בראש העמודה, ב-
כותרת טבלה. זה יכול לכלול רווחים ודמויות מצחיקות, אבל היזהר לא לעשות
זה רחב מדי ובזבוז מקום על המסך.

· מקור הנתונים של העמודה: זהו ביטוי שקובע אילו נתונים מה-
מקור (ראה "טבלאות") innotop יכניס לעמודה. זה יכול להיות רק השם של
פריט במקור, או שהוא יכול להיות ביטוי מורכב יותר, כפי שמתואר ב
"ביטויים".

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

הנה דוגמה: נניח שאתה רוצה לעקוב אחר כמה פעמים העבדים שלך ניסו שוב
עסקאות. על פי מדריך MySQL, סטטוס Slave_retried_transactions
המשתנה נותן לך את הנתונים האלה: "מספר הפעמים הכולל מאז ההפעלה שה-
חוט SQL של ​​עבד שכפול ניסה מחדש עסקאות. משתנה זה נוסף בגרסה
5.0.4." זה מתאים להוסיף לטבלה "slave_sql_status".

כדי להוסיף את העמודה, עבור למצב ניטור שכפול עם מקש 'M' ולחץ
מקש '^' כדי להפעיל את עורך הטבלה. כאשר תתבקש, בחר slave_sql_status בתור
טבלה, ולאחר מכן הקש 'n' כדי ליצור את העמודה. הקלד 'נסיונות חוזרים' כשם העמודה, 'נסיונות חוזרים'
ככותרת העמודה, ו-'slave_retried_transactions' כמקור. עכשיו הטור הוא
נוצר, ואתה רואה את מסך עורך הטבלה שוב. הקש 'q' כדי לצאת מעורך הטבלה,
ותראה את העמודה שלך בסוף הטבלה.

מִשְׁתַנֶה סטים


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

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

שאלות, זמן פעולה, שאלות/זמן פעולה כ-QPS

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

innotop מאפשר לך לתת שם ולשמור את ערכות המשתנים שלך, וכותבת אותם לתצורה
קוֹבֶץ. אתה יכול לבחור איזה ערכת משתנים אתה רוצה לראות עם מקש 'c', או להפעיל את
הסט הבא והקודם עם המקשים '>' ו-'<'. יש הרבה ערכות משתנים מובנות
כמו כן, מה שאמור לתת לך התחלה טובה ליצירת משלך. הקש על 'e' כדי לערוך את
קבוצת המשתנים הנוכחית, או סתם כדי לראות איך הוא מוגדר. כדי ליצור אחד חדש, פשוט הקש
'c' והקלד את שמו.

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

שאלות, Uptime, set_precision(שאלות/זמן פעולה) כ-QPS

למעשה, זה עדיין דורש קצת יותר עבודה. אם ה"מרווח" שלך קטן מאחד
שנית, ייתכן שאתה מחלק באפס מכיוון ש-Uptime הוא מצטבר במצב זה ב-
בְּרִירַת מֶחדָל. במקום זאת, השתמש ב-Uptime_hires:

שאלות, Uptime, set_precision(שאלות/Uptime_hires) כ-QPS

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

PLUGINS


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

תוסף innotop הוא מודול Perl הממוקם בספריית "plugin_dir" של innotop. על UNIX
מערכות, אתה יכול למקם קישור סמלי למודול במקום לשים את הקובץ בפועל
שם. innotop מגלה אוטומטית את הקובץ. אם יש ערך תואם ב
קטע קובץ התצורה של "תוספים", innotop טוען ומפעיל את הפלאגין.

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

חֲבִילָה מָקוֹר אמנה
innotop בודק את מקור מודול הפלאגין כדי לקבוע את שם החבילה של Perl. זה נראה
עבור שורה של הטופס "חבילה Foo;" ואם נמצא, מחשיב את שם החבילה של הפלאגין ל
להיות פו. כמובן ששם החבילה יכול להיות שם חבילה חוקי של Perl, עם כפול
נקודה-פסיק וכן הלאה.

זה גם מחפש תיאור בקוד המקור, כדי להפוך את עורך הפלאגין לאנושי יותר-
יְדִידוּתִי. התיאור הוא שורת הערה בטופס "תיאור #: Foo", כאשר "Foo"
הוא הטקסט ש-innotop יחשב כתיאור של התוסף.

חיבור מִמְשָׁק
ממשק התוסף של innotop הוא די פשוט: innotop מצפה שהתוסף יהיה אובייקט-
מודול מכוון שהוא יכול לקרוא לשיטות מסוימות. השיטות הן

חדש(% משתנים)
זה הבנאי של התוסף. זה מועבר hash של משתנים של innotop, אשר
הוא יכול לבצע מניפולציות (ראה "משתני פלאגין"). זה חייב להחזיר הפניה לחדש
נוצר אובייקט תוסף.

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

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

הרשם_לאירועים()
שיטה זו חייבת להחזיר רשימה של אירועים בהם התוסף מעוניין, אם בכלל.
ראה "אירועי פלאגין" עבור האירועים המוגדרים. אם הפלאגין מחזיר אירוע שלא
מוגדר, מתעלמים מהאירוע.

מטפלים באירועים
התוסף חייב ליישם שיטה ששמה זהה לכל אירוע שעבורו יש לו
רשום. במילים אחרות, אם התוסף מחזיר qw(foo bar) מ
הרשם_לאירועים(), זה חייב להיות foo () ו בָּר() שיטות. שיטות אלו הן
התקשרות חוזרת לאירועים. ראה "אירועי פלאגין" לפרטים נוספים על כל אירוע.

חיבור משתנים
הבנאי של הפלאגין מועבר hash של משתנים של innotop, שאותם הוא יכול לתפעל.
זה כנראה רעיון טוב אם אובייקט הפלאגין שומר עותק שלו לשימוש מאוחר יותר. ה
משתנים מוגדרים במשתנה innotop %pluggable_vars, והם כדלקמן:

action_for
hashref של מיפוי מפתח. אלו הם המקשים החמים העולמיים של innotop.

agg_funcs
hashref של פונקציות שניתן להשתמש בהן לקיבוץ. ראה "קיבוץ".

config
ה-hash של התצורה הגלובלית.

חיבורים
קשקש של מפרטי חיבור. אלה רק מפרטים של איך לעשות
להתחבר לשרת.

dbhs
hashref של חיבורי מסד הנתונים של innotop. אלו הם אובייקטי חיבור DBI בפועל.

מסננים
hashref של מסננים שהוחלו על שורות טבלה. ראה "מסננים" למידע נוסף.

מצבי
אוסף של מצבים. ראה "מצבים" למידע נוסף.

server_groups
hashref של קבוצות שרתים. ראה "קבוצות שרתים".

tbl_meta
hashref של מטא-נתונים של הטבלה של innotop, עם ערך אחד לכל טבלה (ראה "טבלאות" עבור
עוד מידע).

trans_funcs
hashref של פונקציות טרנספורמציה. ראה "טרנספורמציות".

var_sets
hashref של קבוצות משתנים. ראה "ערכות משתנות".

חיבור אירועים
כל אירוע מוגדר איפשהו בקוד המקור של innotop. כאשר innotop מריץ את הקוד הזה,
הוא מבצע את פונקציית ה-callback עבור כל תוסף שהביע את התעניינותו ב-
מִקרֶה. innotop מעביר כמה נתונים עבור כל אירוע. האירועים מוגדרים ב
%event_listener_for משתנה, והם כדלקמן:

extract_values($set, $cur, $pre, $tbl)
אירוע זה מתרחש בתוך הפונקציה המחלצת ערכים ממקור נתונים. ה
ארגומנטים הם קבוצת הערכים, הערכים הנוכחיים, הערכים הקודמים וה-
שם שולחן.

set_to_tbl
אירועים מוגדרים במקומות רבים בתת-השגרה הזו, שאחראית על פנייה
מערך של hashrefs למערך של שורות שניתן להדפיס למסך.
האירועים כולם מעבירים את אותם נתונים: מערך של שורות ושם ההוויה של הטבלה
נוצר. האירועים הם set_to_tbl_pre_filter,
set_to_tbl_pre_sort,set_to_tbl_pre_group, set_to_tbl_pre_colorize,
set_to_tbl_pre_transform, set_to_tbl_pre_pivot, set_to_tbl_pre_create,
set_to_tbl_post_create.

draw_screen($lines)
אירוע זה מתרחש בתוך תת-השגרה שמדפיסה את השורות למסך. $lines
הוא מערך של מחרוזות.

פָּשׁוּט חיבור דוגמה
הדרך הקלה ביותר להסביר את פונקציונליות התוסף היא כנראה באמצעות דוגמה פשוטה.
המודול הבא מוסיף עמודה לתחילת כל טבלה ומגדיר את הערך שלה ל
1.

השתמש מחמירים;
השתמש באזהרות FATAL => 'הכל';

חבילה Innotop::Plugin::Example;
# תיאור: מוסיף עמודת 'דוגמה' לכל טבלה

משנה חדש {
my ( $class, %vars ) = @_;
# אחסן התייחסות למשתנים של innotop ב-$self
my $self = ברכה { %vars }, $class;

# עצב את העמודה לדוגמה
שלי $col = {
hdr => 'דוגמה',
רק => '',
דצמבר => 0,
מספר => 1,
תווית => 'דוגמה',
src => 'דוגמה', # קבל נתונים מעמודה זו במקור הנתונים
tbl => '',
טרנס => [],
};

# הוסף את העמודה לכל טבלה.
my $tbl_meta = $vars{tbl_meta};
foreach my $tbl ( ערכי %$tbl_meta ) {
# הוסף את העמודה לרשימת העמודות המוגדרות
$tbl->{cols}->{example} = $col;
# הוסף את העמודה לרשימת העמודות הגלויות
unshift @{$tbl->{visible}}, 'דוגמה';
}

# הקפד להחזיר הפניה לאובייקט.
להחזיר $self;
}

# אני רוצה שיקראו לי כאשר מערך נתונים עובר עיבוד לטבלה, בבקשה.
sub register_for_events {
שלי ($self) = @_;
return qw(set_to_tbl_pre_filter);
}

# שיטה זו תיקרא כאשר האירוע יופעל.
sub set_to_tbl_pre_filter {
my ( $self, $rows, $tbl ) = @_;
# הגדר את מקור הנתונים של העמודה לדוגמה לערך 1.
foreach my $row ( @$rows ) {
$row->{example} = 1;
}
}

1;

חיבור עורך
עורך הפלאגין מאפשר לך להציג את התוספים שגילו innotop ולהפעיל או לבטל
אוֹתָם. הפעל את העורך על ידי לחיצה על $ כדי להפעיל את עורך התצורה מכל מצב.
הקש על מקש 'p' כדי להפעיל את עורך הפלאגין. תראה רשימה של תוספים innotop
גילה. אתה יכול להשתמש במקשי ה-'j' ו-'k' כדי להעביר את ההדגשה לרצוי,
לאחר מכן הקש על מקש * כדי להפוך אותו פעיל או לא פעיל. צא מהעורך והפעל מחדש את innotop
כדי שהשינויים ייכנסו לתוקף.

SQL הצהרות


innotop משתמש בקבוצה מוגבלת של הצהרות SQL כדי לאחזר נתונים מ-MySQL לתצוגה. ה
ההצהרות מותאמות אישית בהתאם לגרסת השרת שלפיה הן מבוצעות;
לדוגמה, ב-MySQL 5 ואילך, INNODB_STATUS מבצע את "SHOW ENGINE INNODB STATUS",
בעוד שבגירסאות קודמות הוא מבצע את "SHOW INNODB STATUS". ההצהרות הן כ
התעופה

משפט SQL הופעל
=================================================
INNODB_STATUS SHOW [מנוע] INNODB STATUS
KILL_CONNECTION KILL
KILL_QUERY הרוג שאילתה
OPEN_TABLES הצג טבלאות פתוחות
רשימת תהליכים הצג רשימת תהליכים מלאה
SHOW_MASTER_LOGS הצג יומני מאסטר
SHOW_MASTER_STATUS הצג סטטוס מאסטר
SHOW_SLAVE_STATUS הצג סטטוס עבדות
SHOW_STATUS הצג סטטוס [גלובלי]
SHOW_VARIABLES הצג משתנים [גלובליים]

נתונים מקורות


בכל פעם ש-innotop מחלץ ערכים כדי ליצור טבלה (ראה "ביטויים" ו-"טבלאות"),
עושה זאת ממקור נתונים מסוים. בעיקר בגלל הנתונים המורכבים שחולצו מהם
הצג סטטוס INNODB, זה מעט מבולגן. SHOW INNODB STATUS מכיל תערובת של
ערכים בודדים וערכים חוזרים היוצרים מערכי נתונים מקוננים.

בכל פעם ש-innotop מביא נתונים מ-MySQL, הוא מוסיף שני ביטים נוספים לכל קבוצה: cxn ו-
שכירות_זמן פעילות. cxn הוא שם החיבור שממנו הגיעו הנתונים. שכירות_זמן פעילות
היא גרסה ברזולוציה גבוהה של משתנה סטטוס Uptime של השרת, וזה חשוב אם
הגדרת ה"מרווח" שלך היא תת-שנייה.

להלן סוגי מקורות הנתונים שמהם מופק הנתונים:

STATUS_VARIABLES
זוהי הקטגוריה הרחבה ביותר, שאליה נופלים רוב סוגי הנתונים. זה מתחיל ב
השילוב של SHOW STATUS ו-SHOW VARIABLES, אך עשויים להיכלל במקורות אחרים
לפי הצורך, למשל, SHOW MASTER STATUS ו-SHOW SLAVE STATUS, כמו גם רבים
הערכים שאינם חוזרים על עצמם מ-SHOW INNODB STATUS.

DEADLOCK_LOCKS
נתונים אלה מופקים מרשימת העסקאות ב-LATEST DETECTED DEADLOCK
קטע של הצג סטטוס INNODB. הוא מקונן לעומק בשתי רמות: עסקאות, אם כן
מנעולים.

DEADLOCK_TRANSACTIONS
נתונים אלה הם מרשימת העסקאות בקטע LATEST DETECTED DEADLOCK של SHOW
STATUS INNODB. הוא מקונן בעומק מפלס אחד.

הסבר
נתונים אלה הם מערך התוצאות שהוחזר על ידי EXPLAIN.

INNODB_TRANSACTIONS
הנתונים האלה הם מקטע הטרנסאקציות ב-SHOW INNODB STATUS.

IO_THREADS
נתונים אלה הם מרשימת השרשורים בקטע FILE I/O של SHOW INNODB
סטָטוּס.

INNODB_LOCKS
נתונים אלה הם ממקטע TRANSACTIONS של SHOW INNODB STATUS והם מקוננים שניים
רמות עמוקות.

OPEN_TABLES
הנתונים האלה הם מ-SHOW OPEN TABLES.

רשימת תהליכים
הנתונים האלה הם מ-SHOW FULL PROCESSLIST.

OS_WAIT_ARRAY
נתונים אלה הם מקטע SEMAPHORE של SHOW INNODB STATUS והם מקוננים ברמה אחת
עָמוֹק. זה מגיע מהשורות שנראות כך:

--שרשור 1568861104 המתין בקו btr0cur.c 424 ....

MYSQL הרשאות


· עליך להתחבר ל-MySQL כמשתמש בעל הרשאת SUPER עבור רבים מה-
פונקציות.

· אם אין לך את הרשאת SUPER, אתה עדיין יכול להפעיל כמה פונקציות, אבל לא
בהכרח לראות את כל אותם נתונים.

· אתה זקוק להרשאת PROCESS כדי לראות את רשימת השאילתות הפועלות כעת במצב Q.

· אתה זקוק להרשאות מיוחדות כדי להפעיל ולעצור שרתי עבדים.

· אתה זקוק להרשאות מתאימות כדי ליצור ולשחרר את טבלאות המבוי הסתום במידת הצורך (ראה
"חיבורי שרת").

מערכת דרישות


אתה צריך את פרל כדי להפעיל את innotop, כמובן. אתה צריך גם כמה מודולים של Perl: DBI,
DBD::mysql, Term::ReadKey ו-Time::HiRes. אלה צריכים להיכלל עם רוב Perl
הפצות, אבל במקרה שלא, אני ממליץ להשתמש בגרסאות המופצות עם שלך
מערכת הפעלה או הפצת Perl, לא מ-CPAN. מונח::ReadKey במיוחד יש
ידוע כגורם לבעיות אם מותקן מ-CPAN.

אם יש לך Term::ANSIColor, innotop ישתמש בו כדי לעצב כותרות בצורה קריא יותר ו
בצורה קומפקטית. (תחת Microsoft Windows, אתה צריך גם Win32::Console::ANSI עבור מסוף
עיצוב קודים שיש לכבד אותם). אם אתה מתקין Term::ReadLine, רצוי
Term::ReadLine::Gnu, תקבל תמיכה יפה בהשלמה אוטומטית.

אני מפעיל את innotop על Gentoo GNU/Linux, Debian ואובונטו, וקיבלתי משוב מאנשים
להריץ אותו בהצלחה ב-Red Hat, CentOS, Solaris ו-Mac OSX. אני לא רואה שום סיבה
למה זה לא יעבוד במערכות הפעלה אחרות מסוג UNIX, אבל אני לא יודע בוודאות. זה גם
פועל על Windows תחת ActivePerl ללא בעיה.

נעשה שימוש ב-innotop ב-MySQL גרסאות 3.23.58, 4.0.27, 4.1.0, 4.1.22, 5.0.26, 5.1.15,
ו-5.2.3. אם זה לא פועל כמו שצריך, זה באג שצריך לדווח עליו.

השתמש ב- innotop באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser היא פתיחה מהירה, חינמית ומהנה
    מסגרת משחק מקור HTML5 שמציעה
    עיבוד WebGL ו-Canvas לרוחב
    דפדפני אינטרנט שולחניים וניידים. משחקים
    יכול להיות שותף...
    הורד את Phaser
  • 2
    מנוע VASSAL
    מנוע VASSAL
    VASSAL הוא מנוע משחק ליצירה
    גרסאות אלקטרוניות של לוח מסורתי
    ומשחקי קלפים. זה מספק תמיכה עבור
    עיבוד ואינטראקציה של חלקי משחק,
    ו...
    הורד את VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF היא ספריית Java ליצירה
    ועריכת קבצי PDF עם LGPL ו
    רישיון קוד פתוח MPL. OpenPDF הוא ה
    יורש הקוד הפתוח LGPL/MPL של iText,
    ...
    הורד את OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - מערכת לאוטומטיות
    ניתוחים גיאוגרפיים - הוא גיאוגרפי
    תוכנת מערכת מידע (GIS) עם
    יכולות עצומות לגיאודטה
    עיבוד ואנה...
    הורד את SAGA GIS
  • 5
    ארגז כלים עבור Java/JTOpen
    ארגז כלים עבור Java/JTOpen
    ארגז הכלים של IBM עבור Java / JTOpen הוא א
    ספריית מחלקות Java התומכות ב
    תכנות לקוח/שרת ואינטרנט
    דגמים למערכת עם OS/400,
    i5/OS, o...
    הורד את ארגז הכלים עבור Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (או D3 עבור מסמכים מבוססי נתונים)
    היא ספריית JavaScript המאפשרת לך
    לייצר נתונים דינמיים ואינטראקטיביים
    הדמיות בדפדפני אינטרנט. עם D3
    אתה...
    הורד את D3.js
  • עוד »

פקודות לינוקס

Ad