ניהול הנתונים באמצעות Cloud SQL Studio

בדף הזה מוסבר איך לחקור ולנהל את הנתונים ב-Cloud SQL באמצעות Cloud SQL Studio במסוף Cloud de Confiance .

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

‫Cloud SQL Studio כולל את החלונית Explorer שמשולבת עם עורך השאילתות וטבלת תוצאות של שאילתות SQL. אתם יכולים להריץ הצהרות DDL,‏ DML ו-DQL מהממשק הזה. לדוגמה, במקום להגדיר כלי של צד שלישי לשאילתות במסד נתונים, אתם יכולים ליצור טבלה ולשלוח שאילתות לגבי הנתונים שלכם באמצעות עורך השאילתות ב-Cloud SQL Studio.

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

  • Tables
  • Columns
  • אינדקסים ומפתחות
  • פונקציות

אפשר גם להשתמש בחלונית Explorer כדי להזין שאילתות SELECT לטבלאות.

כשמקלידים שאילתה או בוחרים חלק משאילתה, Cloud SQL Studio מאמת באופן אוטומטי את התחביר.

אם אתם לא מכירים את Cloud SQL, קראו את הסקירה הכללית על Cloud SQL.

תפקידים והרשאות נדרשים

כדי לקבל את ההרשאות שנדרשות לביצוע המשימות שמפורטות במסמך הזה, צריך לבקש מהאדמין להקצות לכם את התפקיד משתמש ב-Cloud SQL Studio (roles/cloudsql.studioUser) ב-IAM בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

כדי להשתמש ב-Cloud SQL Studio, צריך את ההרשאות הבאות:

  • cloudsql.databases.list
  • cloudsql.instances.executeSql
  • cloudsql.instances.get
  • ‫cloudsql.instances.login (נדרש רק אם משתמשים באימות של מסד נתונים ב-IAM)
  • cloudsql.users.list

בנוסף, ודאו שיש לכם הרשאות ברמת מסד הנתונים שאתם משתמשים בו לאימות, ושיש לכם את הסיסמה של המשתמש בעל ההרשאות במסד הנתונים שאתם משתמשים בו.

אימות ב-Cloud SQL Studio

כדי לגשת למסד נתונים ב-Cloud SQL Studio, קודם צריך לבחור שיטת אימות למסד הנתונים. כדי להיכנס למסד הנתונים באמצעות Cloud SQL Studio, אתם יכולים להשתמש באחד מסוגי האימות הבאים:

סקור את הנתונים שלך

כדי לגשת לחלונית Explorer:

  1. נכנסים לדף Cloud SQL Instances במסוף Cloud de Confiance .

    כניסה לדף Cloud SQL Instances

  2. בוחרים מכונה מהרשימה.
  3. בתפריט הניווט, לוחצים על Cloud SQL Studio.
  4. נכנסים ל-Cloud SQL Studio באמצעות שם מסד הנתונים, שם המשתמש והסיסמה. בחלונית Explorer מוצגת רשימה של האובייקטים במסד הנתונים.

יצירה, שינוי ושאילתות של הנתונים שלכם

בעורך ה-SQL, אתם יכולים להריץ שילוב של הצהרות DDL,‏ DML ו-DQL. אתם יכולים לכתוב שאילתה בעצמכם, או לאכלס את עורך השאילתות בתבנית באמצעות סייר ה-API.

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

  1. נכנסים לדף Cloud SQL Instances במסוף Cloud de Confiance .

    כניסה לדף Cloud SQL Instances

  2. בוחרים מכונה מהרשימה.
  3. בתפריט הניווט, לוחצים על Cloud SQL Studio.
  4. נכנסים ל-Cloud SQL Studio באמצעות שם מסד הנתונים, שם המשתמש והסיסמה.
  5. מנסחים שאילתה באחת מהדרכים הבאות:
    • כדי ליצור שאילתה משלכם, פועלים לפי השלבים הבאים:
      1. פותחים כרטיסייה חדשה בלחיצה על .
      2. כשעורך השאילתות מופיע, כותבים את השאילתה.
    • כדי ליצור שאילתה על סמך תבנית:
      1. בחלונית Explorer, לצד אובייקט או אוסף של מסד נתונים, לוחצים על more_vert View actions. מופיעה פעולה אחת או יותר.
      2. לוחצים על פעולה. עורך השאילתות מאוכלס בתבנית.
      3. מחליפים את ה-placeholders בתבנית.
  6. מריצים את השאילתות באחת מהדרכים הבאות:

    • כדי להריץ את כל ההצהרות בעורך השאילתות, לוחצים על Run.
    • כדי להריץ הצהרות ספציפיות, בוחרים הצהרה אחת או יותר ולוחצים על Run selected.
  7. תוצאות השאילתות מופיעות בכרטיסייה Results. אם יש כמה קבוצות של תוצאות, בוחרים תוצאה מהרשימה הנפתחת All results.

אימות תחביר השאילתה

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

‫Cloud SQL Studio מאמת את השאילתות בזמן אמת ממכונת MySQL. אם הפעלתם רישום ביומן הביקורת או רישום כללי ביומן של MySQL, הסשנים של האימות יירשמו ביומן כמו כל סשן אחר. כדי למנוע רישום ביומן של סשנים כאלה של אימות, אפשר להגדיר את הדגל cloudsql_avoid_parse_session_logging לערך on. ערך ברירת המחדל הוא off.

איך מגדירים דגלים לניהול מסדי נתונים

מגבלות

  • ‫Cloud SQL Studio תומך בשאילתות קלות. אם התשובה ב-SQL גדולה מ-10MB, היא תיחתך. ב-Cloud SQL Studio מצוין אם מוצגות תוצאות חלקיות.
  • אפשר להריץ שאילתות רק במכונות Cloud SQL שפועלות.
  • ב-Cloud SQL Studio אין תמיכה בשרתים חיצוניים.
  • בקשות שנמשכות יותר מ-5 דקות מבוטלות. אי אפשר להגדיר זמן קצוב ארוך יותר לשאילתה באמצעות SET SESSION MAX_EXECUTION_TIME. ב-Cloud SQL ל-MySQL בגרסאות 5.6 ו-5.7, פסק זמן של הצהרות DDL שפועלות במשך זמן רב עלול לגרום לקבצים או לטבלאות שאינם בתיקייה, שלא ניתן לבטל אותם באופן בטוח. היזהרו משאילתות כמו ALTER TABLE בטבלאות גדולות.
  • אחרי שסקריפט SQL מסיים לפעול, החיבור למסד הנתונים ב-Cloud SQL Studio נסגר. באופן דומה, כרטיסיות העריכה לא משתפות סשן משותף, וכל הפעלה מתחילה סשן חדש.
  • כשמריצים שילוב של הצהרות DML,‏ DQL ו-DDL, מוצגות רק תוצאות משאילתות DQL.
  • סגירת הדפדפן או הכרטיסייה בדפדפן לא מפסיקה את הרצת השאילתה ב-Cloud SQL Studio. השאילתה תפעל עד שהיא תסתיים או עד שתחרוג מהזמן הקצוב לתפוגה.
  • ‫Cloud SQL Studio משתמש ב-API של executeSql כדי להריץ את השאילתות. כדי למנוע עומס יתר, ב-Cloud SQL יש הגבלה על מספר הבקשות בו-זמנית ל-executeSql בכל מכונה. אם הגעתם למגבלה, הבקשות הבאות ייכשלו ותוחזר אחת מהשגיאות הבאות:

    • At most 'x' concurrent queries may be run on this instance. Try again later.
    • Maximum concurrent reads 'x' reached.

    המגבלה (x) היא 10 שאילתות לכל מופע.

  • ב-Cloud SQL Studio אי אפשר להריץ שאילתות SELECT על נתוני BLOB. אם סקריפט ה-SQL יוצר עמודת BLOB בפלט, סקריפט ה-SQL נכשל עם שגיאה.
  • אי אפשר להריץ ב-Cloud SQL Studio פקודות של לקוח Cloud SQL ל-MySQL.
  • המשתמש root לא נתמך ב-Cloud SQL Studio.
  • ב-Cloud SQL Studio תמיד צריך מסד נתונים, גם אם ב-Cloud SQL ל-MySQL לא צריך מסד נתונים כדי להתחבר.
  • ב-Cloud SQL Studio אין תמיכה במשתמשים עם סיסמאות ריקות.
  • הפקודה USE database היא עם שמירת מצב (stateful) רק להרצת השאילתה הפעילה, והיא לא פועלת כמו ב-ה-CLI של gcloud.
  • למשתמש במסד הנתונים צריכה להיות הרשאה להתחבר מהמארח המקומי.
  • כשמריצים כמה שאילתות ואחת מהן נכשלת, מוחזרת השגיאה הראשונה שנתקלים בה. יכול להיות שחלק מההצהרות באצווה שלפני השגיאה בוצעו בהצלחה. כדי למנוע את הבעיה הזו, אפשר לעטוף כמה שאילתות בהצהרת transaction:

    START TRANSACTION;
        YOUR_SQL_STATEMENTS
    COMMIT;
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫YOUR_SQL_STATEMENTS: ההצהרות שרוצים להריץ כחלק מהשאילתה הזו
  • ‫Cloud SQL לא מאמת את החלק של הצהרת ה-SQL בהצהרה מוכנה ( preparable_stmt ).

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

המאמרים הבאים