בדף הזה מוסבר איך לעקוב אחרי השאילתות שפעילות במסד הנתונים ולפתור בעיות שקשורות אליהן. מעקב אחרי השאילתות האלה יכול לעזור לזהות את הסיבות לחביון המערכת ולשימוש גבוה ב-CPU.
במרכז הבקרה 'תובנות לגבי שאילתות' אפשר לראות סיכום של טרנזקציות פעילות ורשימה של טרנזקציות עם שאילתות ונתונים סטטיסטיים משויכים. העסקאות מוצגות לפי שעת ההתחלה של העסקה. אם יש מספר גדול של שאילתות שפועלות, יכול להיות שהתוצאות יוגבלו לקבוצת משנה של השאילתות הכוללות.
לפני שמתחילים
כדי לעקוב אחרי שאילתות פעילות, אפשר להשתמש במהדורת Cloud SQL Enterprise או במהדורת Cloud SQL Enterprise Plus.
כדי להפסיק סשן או טרנזקציה שפועלת לאורך זמן בשאילתות פעילות, צריך להשתמש במופע Cloud SQL ב-Cloud SQL Enterprise Plus Edition.
מידע נוסף על מהדורות Cloud SQL זמין במאמר מבוא למהדורות Cloud SQL.
תפקידים והרשאות נדרשים
כדי לקבל את ההרשאות שדרושות בשביל לראות את השאילתות הפעילות, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שמארח את מופע Cloud SQL:
-
כדי לראות סיכום של פעילות המכונה:
Cloud SQL Viewer (
roles/cloudsql.viewer) -
צפייה בסיכום הפעילות במסד הנתונים ובטרנזקציות ארוכות טווח:
צפייה בתובנות לגבי מסד הנתונים (
roles/databaseinsights.viewer) -
סיום סשן או עסקה ממושכת:
-
Cloud SQL Editor (
roles/cloudsql.editor) -
אדמין של פעולות תפעוליות ב-Database Insights (
roles/databaseinsights.operationsAdmin)
-
Cloud SQL Editor (
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות כדי לראות שאילתות פעילות. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי לראות את השאילתות הפעילות, צריך את ההרשאות הבאות:
-
צפייה בסיכום של פעילות מסד הנתונים ובעסקאות שפועלות במשך זמן רב:
-
databaseinsights.activeQueries.fetch -
databaseinsights.activitySummary.fetch
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הפעלת שאילתות פעילות
כשמפעילים את התובנות לגבי שאילתות, השאילתות הפעילות מופעלות באופן אוטומטי. כדי להפסיק סשן או טרנזקציה ארוכה בשאילתות פעילות, צריך להשתמש בתובנות לגבי שאילתות במהדורת Cloud SQL Enterprise Plus.
השבתת שאילתות פעילות
אי אפשר להשבית שאילתות פעילות בלי להשבית את התובנות לגבי שאילתות. כדי להשבית שאילתות פעילות ותובנות לגבי שאילתות, אפשר לעיין במאמר בנושא השבתת תובנות לגבי שאילתות.
הצגת שאילתות פעילות
כדי לראות את השאילתות הפעילות:
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
כדי להציג את מרכז הבקרה תובנות לגבי שאילתות, מבצעים אחת מהפעולות הבאות:
- לוחצים על הכרטיסייה תובנות לגבי שאילתות.
- לוחצים על מעבר לתובנות לגבי שאילתות לקבלת מידע מעמיק יותר על שאילתות וביצועים. מרכז הבקרה Query insights ייפתח. בחלק העליון מוצגים פרטים על המופע.
לוחצים על הכרטיסייה שאילתות פעילות.
מכאן אפשר לשנות את פרטי השאילתה שמופיעים בטבלה Longest running transactions:
- מסד נתונים: מסנן את עומס השאילתות במסד נתונים ספציפי או בכל מסדי הנתונים.
- משתמש: מסנן את עומס השאילתות מחשבון משתמש ספציפי.
הצגת שאילתות פעילות שעברו נרמול
במרכז הבקרה תובנות לגבי שאילתות אפשר לראות רשימה של העסקאות המובילות שפועלות במשך זמן רב, עם שאילתות פעילות שעברו נרמול. שאילתה פעילה שעברה נורמליזציה מסירה מידע אישי רגיש ומחזירה תקציר. התקציר זהה לערכים שונים שמשמשים בדוגמה הבאה:
שאילתות רגילות
select * from test_table where id=1;select * from test_table_where id=2;
תמצית או שאילתה מנורמלת
select * from test_table where id=?;
שאילתה שמופעלת בסשנים שונים מוצגת כרשומות שונות בלוח הבקרה.
הצגת העסקאות הארוכות ביותר
הטבלה Longest running transactions בלוח הבקרה Query insights כוללת את העמודות הבאות:
| שם העמודה | תיאור |
|---|---|
| מזהה פעילות | מזהה ייחודי של הסשן. |
| שאילתה | טקסט של שאילתת SQL. |
| מצב הסשן | מצב הסשן. |
| משך השאילתה | כמה זמן השאילתה פועלת. |
| מזהה הסשן שחוסם | המזהה של הסשן שחוסם את הסשן. |
| סוג אירוע ההמתנה | סוג אירוע ההמתנה, אם הבקשה נחסמת להרצת שאילתה. |
| משאב המתנה | המשאב שהבקשה ממתינה לו כרגע, אם הבקשה חסומה להרצת שאילתה. |
| משך ההמתנה לעסקה | משך ההמתנה הנוכחי, אם הסשן חסום. |
| קריאות לוגיות | מספר הקריאות הלוגיות שבוצעו על ידי הבקשה. |
| קריאות | מספר הקריאות שבוצעו על ידי הבקשה. |
| כותב | מספר הפעולות של כתיבה שבוצעו על ידי הבקשה. |
| מסד נתונים | מסד הנתונים שבו הסשן פועל. |
| משתמש | השם של המשתמש שמחובר למסד הנתונים. |
| כתובת הלקוח | כתובת ה-IP הספציפית של הלקוח ששלח שאילתה. |
| זמן CPU (אלפיות השנייה) | זמן המעבד (CPU) באלפיות השנייה שבו נעשה שימוש בבקשה. |
| שם האפליקציה | שם האפליקציה שיזמה את הסשן. |
| שורות של עסקאות ששונו | מספר השורות שהוחזרו ללקוח על ידי השאילתה הזו. |
| % הושלמו | אחוז העבודה שהושלמה, אם השאילתה מדווחת על התקדמות. |
| זיכרון שהוקצה לשאילתה | מספר הדפים שהוקצו לביצוע הבקשה. |
| פעולה | האימייל יכלול קישור לסיום הסשן. |
התצוגה מתעדכנת אוטומטית כל 60 שניות.
אפשר להשתמש בתפריט האנכי Content display options... כדי לסנן את העמודות שרוצים להציג.
סיום סשן
כדי להפסיק סשן או טרנזקציה שפועלים במשך זמן רב, צריך להשתמש ב-Cloud SQL Enterprise Plus ולהפעיל את התכונה 'תובנות לגבי שאילתות' ב-Cloud SQL Enterprise Plus.
יכול להיות שייקח יותר זמן לסיים פעולות ממושכות.
כדי להפסיק שאילתה או עסקה:
- בטבלה Longest running transaction (העסקה עם זמן הריצה הארוך ביותר), בוחרים שאילתה.
- בעמודה פעולה, לוחצים על סיום ההפעלה.
- בחלון סיום ההפעלה, לוחצים על אישור.