יצירת מופעים

בדף הזה מוסבר איך ליצור מכונה של Cloud SQL ל-MySQL.

מידע מפורט על כל הגדרות המופע זמין במאמר בנושא הגדרות המופע.

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

  • information_schema: מאפשר גישה למטא-נתונים של מסד הנתונים, מידע על שרת MySQL.
  • mysql: הסכימה של המערכת. היא מכילה טבלאות שמאחסנות מידע שנדרש לשרת MySQL בזמן שהוא פועל.
  • performance_schema: תכונה למעקב אחר הביצוע של שרת MySQL ברמה נמוכה.
  • sys: מכילה קבוצה של אובייקטים שעוזרים למנהלי מסדי נתונים ולמפתחים לפרש את הנתונים שנאספים על ידי סכימת הביצועים.

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

  • ארכיטקטורת רשת חדשה של SQL: אפשר להשתמש בעד 1,000 מופעים לכל פרויקט.
  • ארכיטקטורת רשת ישנה של SQL: אפשר להשתמש בעד 100 מופעים לכל פרויקט.
  • שימוש בשתי הארכיטקטורות: המגבלה תהיה בין 100 ל-1,000, בהתאם לפיזור של המופעים בשתי הארכיטקטורות.

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

לפני שמתחילים

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. מתקינים את ה-CLI של gcloud.

  5. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  6. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  8. Verify that billing is enabled for your Google Cloud project.

  9. מתקינים את ה-CLI של gcloud.

  10. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  11. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  12. מוודאים שיש לכם את התפקידים הבאים בחשבון המשתמש:

    כניסה לדף IAM

    מידע נוסף על תפקידים והרשאות

יצירת מכונת MySQL

המסוף

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

    כניסה לדף Cloud SQL Instances

  2. לוחצים על Create instance.
  3. בוחרים באפשרות New instance (מופע חדש).
  4. בחלונית Choose your database engine בדף Create an instance, לוחצים על Choose MySQL.
  5. בקטע Choose a Cloud SQL edition בדף Create a SQL Server instance, בוחרים את מהדורת Cloud SQL עבור המופע: Enterprise או Enterprise Plus.

    מידע נוסף על מהדורות Cloud SQL זמין במאמר מבוא למהדורות Cloud SQL.

  6. בוחרים את הגדרת ברירת המחדל של המהדורה עבור המכונה. כדי לראות את ההגדרות הקבועות מראש שזמינות, לוחצים על התפריט הגדרות קבועות מראש של מהדורה.
  7. בקטע Instance info, בוחרים את גרסת מסד הנתונים של המכונה. כדי לראות את הגרסאות הזמינות, לוחצים על התפריט גרסת מסד הנתונים.
    • אם בוחרים ב-MySQL 8.0 וב-MySQL 8.0.35 או גרסה מאוחרת יותר בגרסה משנית, תיבת הסימון הפעלת שדרוג אוטומטי של גרסה משנית מסומנת אוטומטית עבור המכונה. אם לא רוצים להפעיל שדרוג אוטומטי של הגרסה, מבטלים את הסימון בתיבת הסימון.
    • אם בוחרים ב-MySQL 8.0 וב-MySQL 8.0.34 או בגרסה קודמת בגרסה משנית, תיבת הסימון הפעלת שדרוג אוטומטי של גרסה משנית לא זמינה.

    אי אפשר לערוך את גרסת מסד הנתונים אחרי שיוצרים את המופע.

  8. בשדה Instance ID (מזהה המופע) בחלונית Instance info (פרטי המופע), מזינים מזהה למופע.

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

  9. מגדירים סיסמה למשתמש root.

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

  10. כדי לראות את הסיסמה בטקסט רגיל, לוחצים על סמל הצגת הסיסמה.

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

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

        האפשרות נתמכת רק ב-Cloud SQL ל-MySQL 8.0 ואילך.

      • איסור שימוש בשם המשתמש: מונע את השימוש בשם המשתמש בסיסמה.
  12. בקטע Choose region and zonal availability (בחירת אזור וזמינות אזורית), בוחרים את האזור והתחום של המופע. הזמינות באזור עשויה להיות שונה בהתאם למהדורת Cloud SQL ל-MySQL שבה אתם משתמשים. מידע נוסף זמין במאמר מידע על הגדרות של מופע.

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

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

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

    • אזורי הזמן שמוגדרים כברירת מחדל הם Any לאזור הזמן הראשי ו-Any (different from primary) לאזור הזמן המשני.
    • אם מציינים גם את האזור הראשי וגם את האזור המשני, הם צריכים להיות אזורים שונים.
  13. בקטע Customize your instance (התאמה אישית של המופע), מעדכנים את ההגדרות של המופע. לוחצים על הצגת אפשרויות ההגדרה כדי להציג את קבוצות ההגדרות. לאחר מכן, מרחיבים את הקבוצות שרוצים לבדוק ולהתאים אישית את ההגדרות שלהן. סיכום של כל האפשרויות שבחרתם מוצג בצד שמאל. התאמה אישית של הגדרות המופע האלה היא אופציונלית. ערכי ברירת המחדל מוקצים בכל מקרה שבו לא בוצעו התאמות אישיות.

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

    הגדרה הערות
    סוג מכונה
    סוג המכונה בוחרים באפשרות 'ליבה משותפת' או 'ליבה ייעודית'. בליבות משותפות, כל סוג מכונה מסווג לפי מספר המעבדים (הליבות) וכמות הזיכרון של המכונה.
    ליבות מספר יחידות ה-vCPU של המופע. מידע נוסף
    זיכרון נפח הזיכרון של המופע, ב-GB. מידע נוסף
    בהתאמה אישית בסוג המכונה Dedicated core, במקום לבחור הגדרה מוגדרת מראש, לוחצים על הלחצן Custom כדי ליצור מופע עם הגדרה מותאמת אישית. כשבוחרים באפשרות הזו, צריך לבחור את מספר ליבות המעבד ואת כמות הזיכרון של המופע. מידע נוסף
    מטמון נתונים
    הפעלת מטמון נתונים כברירת מחדל, האפשרות להפעלת מטמון נתונים נבחרת באופן אוטומטי עבור מופעים של Cloud SQL למהדורת MySQL Enterprise Plus. אם לא רוצים להפעיל מטמון נתונים, צריך לבטל את הסימון בתיבה הפעלת מטמון נתונים. מידע נוסף על מטמון נתונים זמין במאמר מטמון נתונים.
    אחסון
    סוג אחסון ההגדרה קובעת אם המופע שלכם משתמש באחסון SSD או HDD. מידע נוסף
    נפח אחסון נפח האחסון שהוקצה למופע. מידע נוסף
    הפעלת הגדלה אוטומטית של נפח האחסון קובע אם Cloud SQL יספק אוטומטית יותר אחסון למופע כשייגמר המקום הפנוי. מידע נוסף
    הצפנה
    הצפנה בניהול Googleאפשרות ברירת המחדל.
    מפתח הצפנה בניהול הלקוח (CMEK)בוחרים באפשרות כדי להשתמש במפתח עם Google Cloud Key Management Service. מידע נוסף
    חיבורים
    כתובת IP פרטית הוספת כתובת IP פרטית למופע. בוחרים אם להשתמש בחיבור גישה לשירותים פרטיים, בחיבור Private Service Connect או בשניהם עבור המופע. הבחירה שלכם מספקת את החיבור לרשת הפרטית עבור המופע. בכל המקרים, נדרשת הגדרה נוספת.

    כדי לבחור ולהגדיר את הגישה לשירותים פרטיים, מבצעים את הפעולות הבאות:

    1. מסמנים את התיבה Private Services Access (PSA) (גישה לשירותים פרטיים).
    2. בתפריט הנפתח VPC network (רשת VPC), בוחרים את שם הרשת שאליה המופע מחובר.
    3. בתפריט הנפתח טווח כתובות IP שהוקצה, בוחרים באפשרות אוטומטי או בטווח כתובות IP ספציפי מהתפריט הנפתח.

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

    כדי לבחור ולהגדיר Private Service Connect, מבצעים את הפעולות הבאות:

    1. מסמנים את התיבה Private Service Connect (PSC).
    2. לוחצים על Add an Endpoint (הוספת נקודת קצה).
    3. בקטע Endpoint setup (הגדרת נקודת הקצה), מבצעים את הפעולות הבאות:
      • בכרטיס New Endpoint (נקודת קצה חדשה), בוחרים את הפרויקט שבו רוצים להגדיר את נקודת הקצה מהתפריט הנפתח Project (פרויקט).
      • בוחרים רשת לנקודת הקצה מהתפריט הנפתח רשת.
      • אם Network Connectivity API עדיין לא מופעל, לוחצים על Enable (הפעלה).
    4. כדי להגדיר את ההרשאות ליצירה אוטומטית של מדיניות חיבור השירות, לוחצים על אישור הגדרת הרשת.

    מידע נוסף על הגדרת Private Service Connect זמין במאמר הגדרת Private Service Connect.

    כתובת IP ציבורית הוספת כתובת IP ציבורית למופע. אחר כך אפשר להוסיף רשתות מורשות כדי להתחבר למופע.

    למופע יכולה להיות כתובת IP ציבורית וגם כתובת IP פרטית.

    מידע נוסף על שימוש בכתובת IP ציבורית

    רשתות מורשות

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

    התרת גישה ל-Data API

    אם מסמנים את התיבה הזו, משתמשים מורשים יכולים לקרוא ל-Data API כדי להריץ הצהרות SQL במופע. למקרים שבהם יש רק כתובת IP פרטית, האפשרות הזו מאפשרת למשתמשים מורשים להתקשר אל Data API מהאינטרנט הציבורי.

    הפעלת נתיב פרטי

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

    הפעלת ניהול מאגר חיבורים

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

    אבטחה
    מצב רשות אישורים של השרת

    בוחרים את סוג רשות האישורים (CA) שחותמת על אישור השרת עבור מופע Cloud SQL הזה. מידע נוסף

    כברירת מחדל, כשיוצרים מכונה וירטואלית במסוף Google Cloud , המכונה משתמשת ברשות אישורים פנימית בניהול Google (GOOGLE_MANAGED_INTERNAL_CA), שהיא אפשרות רשות האישורים לכל מכונה.

    רוטציה אוטומטית של אישורי שרת

    אם בוחרים באפשרות של רשות אישורים (CA) של CAS בניהול Google ‏(GOOGLE_MANAGED_CAS_CA) או באפשרות של רשות אישורים פנימית של CAS בניהול הלקוח ‏ (CUSTOMER_MANAGED_CAS_CA) כמצב ה-CA של השרת עבור המופע, אפשר לבחור אם להחליף את אישור השרת של המופע באופן אוטומטי. מידע נוסף על רוטציה אוטומטית של אישורי שרת ב-Cloud SQL זמין במאמר הפעלה של רוטציה אוטומטית של אישורי שרת.

    האפשרות הזו מושבתת כברירת מחדל.
    הגנה על נתונים
    רמת הגיבוי אפשרות הגיבוי של המופע. אפשר לבחור בין גיבויים משופרים לבין גיבויים רגילים.
    גיבוי אוטומטי חלון הזמן שבו רוצים שהגיבויים יתחילו. מידע נוסף
    בחירת המיקום לאחסון הגיבוייםברוב תרחישי השימוש, כדאי לבחור באפשרות 'מספר אזורים'. אם אתם צריכים לאחסן גיבויים באזור ספציפי, למשל אם יש סיבות רגולטוריות לעשות זאת, בוחרים באפשרות 'אזור' ובוחרים את האזור הרצוי מתוך התפריט הנפתח 'מיקום'.
    בחירת מספר הגיבויים האוטומטיים שרוצים לשמורמספר הגיבויים האוטומטיים שרוצים לשמור (מ-1 עד 365 ימים). מידע נוסף
    הפעלת שחזור מערכת מנקודה מסוימת בזמן ההגדרה הזו מאפשרת שחזור מערכת מנקודה מסוימת בזמן ורישום ביומן של פעולות כתיבה. מידע נוסף
    הפעלת הגנה מפני מחיקה המדיניות הזו קובעת אם להגן על מופע מפני מחיקה בטעות. מידע נוסף
    הפעלת גיבויים שנשמרים אחרי מחיקת מופע המדיניות קובעת אם גיבויים אוטומטיים וגיבויים על פי דרישה יישמרו אחרי מחיקת מופע. מידע נוסף
    בחירת מספר הימים לשמירת היומנים אפשר להגדיר את השמירה של יומן הרישום מראש לפרק זמן של יום אחד עד 7 ימים. הגדרת ברירת המחדל היא 7 ימים. מידע נוסף
    תחזוקה
    חלון מועדף הגדרת חלון של שעה שבו Cloud SQL יכול לבצע תחזוקה שגורמת להפרעה במכונה. אם לא מגדירים את חלון הזמן, אפשר לבצע תחזוקה שעלולה לשבש את הפעילות בכל זמן. מידע נוסף
    סדר העדכונים התזמון המועדף לעדכוני מופעים, ביחס למופעים אחרים באותו פרויקט. מידע נוסף
    Flags
    הוספת סימון אפשר להשתמש בדגלים של מסד הנתונים כדי לשלוט בהגדרות ובפרמטרים של המופע. מידע נוסף
    תובנות לגבי שאילתות
    הפעלת התובנות לגבי שאילתות

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

    תיעוד ביצועים

    כשמסמנים את תיבת הסימון Enable Query insights (הפעלת תובנות לגבי שאילתות), מופעל גם איסוף נתוני הביצועים של MySQL באופן אוטומטי.

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

    תוויות
    הוספת תוויתמוסיפים מפתח וערך לכל תווית שמוסיפים. אתם יכולים להשתמש בתוויות כדי לארגן את המופעים.
  14. לוחצים על Create Instance.

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

gcloud

מידע על התקנה ותחילת העבודה עם ה-CLI של gcloud זמין במאמר התקנת ה-CLI של gcloud. מידע על הפעלת Cloud Shell זמין במאמרי העזרה של Cloud Shell.

  1. משתמשים בפקודה gcloud sql instances create כדי ליצור את המכונה:
  2. למכונות במהדורת Cloud SQL Enterprise Plus:

        gcloud sql instances create INSTANCE_NAME \
        --region=REGION \
        --tier=TIER \
        --database-version=DATABASE_VERSION \
        --edition=ENTERPRISE_PLUS
        

    למכונות במהדורת Cloud SQL Enterprise:

        gcloud sql instances create INSTANCE_NAME \
        --cpu=NUMBER_CPUS \
        --memory=MEMORY_SIZE \
        --region=REGION
        
    לחלופין, אפשר להשתמש בדגל --tier אם בוחרים db-f1-micro או db-g1-small כסוג המכונה:
        gcloud sql instances create INSTANCE_NAME \
          --tier=API_TIER_STRING \
          --region=REGION
      

    יש הגבלות על הערכים של vCPU וגודל הזיכרון:

    • מספר המעבדים הווירטואליים צריך להיות 1 או מספר זוגי בין 2 ל-96.
    • הזיכרון צריך להיות:
      • ‫0.9 עד 6.5GB לכל vCPU
      • כפולה של 256MB
      • לפחות 3.75GB‏ (3,840MB)

    לדוגמה, הפקודה הבאה יוצרת מכונה במהדורת Cloud SQL Enterprise עם שני מעבדי vCPU וזיכרון בנפח 7,680MB:

      gcloud sql instances create myinstance \
      --database-version=MYSQL_8_0 \
      --cpu=2 \
      --memory=7680MB \
      --region=us-central1
      

    הפקודה הבאה יוצרת מכונה במהדורת Cloud SQL Enterprise Plus עם ארבע ליבות:

      gcloud sql instances create myinstance \
      --database-version=MYSQL_8_0_31 \
      --tier=db-perf-optimized-N-4 \
      --edition=ENTERPRISE_PLUS \
      --region=us-central1
      

    ערך ברירת המחדל של REGION הוא us-central1.

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

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

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

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

    הגדרה פרמטר הערות
    פרמטרים נדרשים
    גרסת מסד הנתונים --database-version גרסת מסד הנתונים, שמבוססת על מהדורת Cloud SQL.
    אזור --region הצגת ערכים תקינים
    הגדרת מדיניות סיסמאות
    הפעלת מדיניות סיסמאות --enable-password-policy הגדרת המדיניות בנושא סיסמאות מופעלת כשמשתמשים בה. כברירת מחדל, מדיניות הסיסמאות מושבתת. כשמשביתים את המדיניות באמצעות הפרמטר --clear-password-policy, הפרמטרים האחרים של מדיניות הסיסמאות מאופסים.
    אורך מינימלי --password-policy-min-length מציינת את מספר התווים המינימלי שהסיסמה צריכה להכיל.
    מורכבות הסיסמה --password-policy-complexity ההגדרה הזו מאפשרת לבדוק את מורכבות הסיסמה כדי לוודא שהיא מכילה כל אחד מהסוגים הבאים של תווים: אותיות קטנות, אותיות גדולות, ספרות ותווים שהם לא אלפאנומריים. מגדירים את הערך כ-COMPLEXITY_DEFAULT.
    הגבלת השימוש החוזר בסיסמאות --password-policy-reuse-interval קובעת כמה סיסמאות קודמות לא ניתן להגדיר מחדש. האפשרות נתמכת רק ב-Cloud SQL ל-MySQL 8.0 ומעלה.
    איסור שימוש בשם משתמש --password-policy-disallow-username-substring ההגדרה הזו מונעת שימוש בשם המשתמש בסיסמה. כדי להשבית את הבדיקה, משתמשים בפרמטר --no-password-policy-disallow-username-substring.
    קישוריות
    ניהול מאגר חיבורים --enable-connection-pooling ההגדרה מאפשרת ניהול מאגר חיבורים במופע החדש. אחרי שיוצרים את המופע, אפשר להגדיר הגדרות מתקדמות של Managed Connection Pooling.

    הערה: התכונה הזו זמינה רק במופעים של Cloud SQL במהדורת Enterprise Plus שהוגדרו בהתאם לדרישות של Managed Connection Pooling.

    כתובת IP פרטית

    גישה לשירותים פרטיים

    --network

    --no-assign-ip (אופציונלי)

    --allocated-ip-range-name (אופציונלי)

    --enable-google-private-path (אופציונלי)



    Private Service Connect

    --no-assign-ip

    --enable-private-service-connect

    --allowed-psc-projects

    --psc-auto-connections

    --enable-psc-auto-connection-policy

    --network: מציין את השם של רשת ה-VPC שרוצים להשתמש בה עבור המכונה הזו. הגישה לשירותים פרטיים צריכה להיות מוגדרת כבר ברשת. האפשרות זמינה רק לפקודת הבטא (gcloud beta sql instances create).

    --no-assign-ip: למופע תהיה רק כתובת IP פרטית.

    --allocated-ip-range-name: אם מציינים שם, הוא מגדיר שם לטווח שעבורו מוקצה טווח כתובות IP. לדוגמה, google-managed-services-default. שם הטווח צריך להיות בהתאם לRFC-1035 ולכלול 1-63 תווים. (gcloud alpha sql instances create).

    --enable-google-private-path: אם משתמשים בפרמטר הזה, מאפשרים לשירותים אחרים Google Cloud , כמו BigQuery, לגשת לנתונים ב-Cloud SQL ולבצע שאילתות לגבי הנתונים האלה דרך חיבור פרטי.

    הפרמטר הזה תקף רק אם:

    • משתמשים בפרמטר --no-assign-ip.
    • משתמשים בפרמטר --network כדי לציין את השם של רשת ה-VPC שרוצים להשתמש בה כדי ליצור חיבור פרטי.

    למופעי Cloud SQL שמשתמשים ב-Private Service Connect לחיבורי IP פרטיים, משתמשים בדגלים הבאים:

    --enable-private-service-connect: הפעלת חיבורים לרשת פרטית למופע Cloud SQL באמצעות Private Service Connect. מידע נוסף זמין במאמר סקירה כללית של Private Service Connect ב-Cloud SQL.

    --allowed-psc-projects: רשימה מופרדת בפסיקים של מזהים או מספרים של פרויקטים מורשים, שמהם נקודות קצה של Private Service Connect יכולות להתחבר למופעים של Cloud SQL.

    --psc-auto-connections: אם אתם מגדירים נקודות קצה באופן אוטומטי למופע Cloud SQL, צריך להשתמש בדגל כדי לציין את רשתות הצרכנים והפרויקטים של נקודות הקצה של Private Service Connect.

    --enable-psc-auto-connection-policy: אם מציינים, Google Cloud יוצר או מעדכן מדיניות של חיבור שירות ברשת ובפרויקט של הצרכן עבור נקודת הקצה של Private Service Connect.

    מידע נוסף על הגדרת Private Service Connect זמין במאמר הגדרת Private Service Connect.

    גישה ל-Data API --data-api-access שליטה בקישוריות למופע באמצעות Data API. היא מושבתת כברירת מחדל. מגדירים את הערך ל-ALLOW_DATA_API כדי לאפשר למשתמשים להשתמש ב-Data API כדי להתחבר למופע. במכונות וירטואליות שהוגדרה להן כתובת IP פרטית בלבד, משתמשים מורשים יכולים לשלוח קריאה ל-Data API במכונה הווירטואלית מהאינטרנט הציבורי. מגדירים את הערך ל-DISALLOW_DATA_API כדי לא לאפשר שימוש ב-Data API.
    כתובת IP ציבורית --authorized-networks בחיבורים עם כתובת IP ציבורית, רק חיבורים מרשתות מורשות יכולים להתחבר למופע. מידע נוסף
    אכיפת SSL

    --ssl-mode

    --require-ssl

    הפרמטר ssl-mode אוכף את האכיפה של SSL/TLS עבור החיבורים. מידע נוסף מופיע במאמר בנושא הגדרות של Cloud SQL ל-MySQL.

    הפרמטר require-ssl קובע אם חיבורי SSL דרך IP נאכפים או לא. ‫require-ssl הוא פרמטר מדור קודם. במקום זאת, אתם צריכים להשתמש ב-ssl-mode. מידע נוסף זמין במאמר בנושא IpConfiguration.

    מצב CA של השרת --server-ca-mode

    הדגל --server-ca-mode מגדיר את הסוג של רשות אישורים (CA) של שרת למכונה. אפשר לבחור באחת מהאפשרויות הבאות:

    • GOOGLE_MANAGED_INTERNAL_CA: זהו ערך ברירת המחדל. באמצעות האפשרות הזו, רשות אישורים פנימית שמוקדשת לכל מופע של Cloud SQL חותמת על אישור השרת של אותו מופע.
    • GOOGLE_MANAGED_CAS_CA: באפשרות הזו נעשה שימוש בהיררכיית CA שכוללת CA בסיסי ו-CA של שרתים משניים שמנוהלים על ידי Cloud SQL ומאוחסנים ב- Google Cloud Certificate Authority Service (CA Service). רשויות אישורים (CA) של שרתים משניים באזור חותמות על אישורי השרתים ומשותפות בין מופעים באזור. האפשרות הזו נתמכת רק ב-MySQL מגרסה 8.0.30 ואילך.
    • CUSTOMER_MANAGED_CAS_CA: באמצעות האפשרות הזו מגדירים את היררכיית ה-CA ומנהלים את הרוטציה של אישורי ה-CA. יוצרים מאגר CA ב-CA Service באותו אזור של המכונה. אחת מרשויות האישורים במאגר משמשת לחתימה על אישור השרת. האפשרות הזו נתמכת רק ב-MySQL מגרסה 8.0.30 ואילך. מידע נוסף זמין במאמר בנושא שימוש ב-CA בניהול הלקוח.
    רוטציה אוטומטית של אישורי שרת --server-certificate-rotation-mode

    הדגל --server-certificate-rotation-mode מגדיר את סוג מצב הרוטציה של אישור השרת של המכונה. אפשר לבחור באחת מהאפשרויות הבאות:

    • NO_AUTOMATIC_ROTATION: זהו ערך ברירת המחדל. אם תבחרו באפשרות הזו, לא יתבצע סבב אוטומטי של אישורי השרת. צריך לבצע רוטציה של אישורי השרת באופן ידני.
    • AUTOMATIC_ROTATION_DURING_MAINTENANCE: באמצעות האפשרות הזו, מופעל סיבוב אוטומטי של אישורי שרת במהלך תחזוקה מתוזמנת של Cloud SQL או עדכוני תחזוקה בשירות עצמי. הערך של server_ca_mode צריך להיות GOOGLE_MANAGED_CAS_CA או CUSTOMER_MANAGED_CAS_CA.
    ארכיטקטורת רשת --enforce-new-sql-network-architecture אפשר לאכוף את השימוש בארכיטקטורת הרשת החדשה עבור המופע בזמן היצירה. שימוש בדגל הזה כשיוצרים מכונה לפני שהפרויקט שודרג באופן מלא לארכיטקטורת הרשת החדשה עלול לגרום לצריכת יתר של כתובות IP או לכשל ביצירת מכונות אם לא נשארו מספיק כתובות IP בטווח כתובות ה-IP שהוקצה. מידע נוסף זמין במאמרים שדרוג מכונה לארכיטקטורת הרשת החדשה והקצאת טווח כתובות IP.
    סוג המכונה והאחסון
    סוג המכונה --tier משמש לציון מופע עם ליבת מעבד משותפת (db-f1-micro או db-g1-small). כדי להגדיר מופע בהתאמה אישית, משתמשים בפרמטרים --cpu או --memory. מידע נוסף זמין במאמר בנושא הגדרת מופע בהתאמה אישית.
    סוג אחסון --storage-type ההגדרה קובעת אם המופע שלכם משתמש באחסון SSD או HDD. מידע נוסף
    נפח אחסון --storage-size נפח האחסון שהוקצה למופע, ב-GB. מידע נוסף
    הגדלת נפח האחסון באופן אוטומטי --storage-auto-increase קובע אם Cloud SQL יספק אוטומטית יותר אחסון למופע כשייגמר המקום הפנוי. מידע נוסף
    מגבלת הגדלה אוטומטית של נפח האחסון --storage-auto-increase-limit ההגדרה הזו קובעת את הגודל המקסימלי שאליו יכול לגדול האחסון ב-Cloud SQL באופן אוטומטי. מידע נוסף
    מטמון נתונים (אופציונלי) --enable-data-cache הגדרה שמאפשרת או משביתה את מטמון הנתונים למופעים. מידע נוסף זמין במאמר בנושא מטמון נתונים.
    גיבויים אוטומטיים וזמינות גבוהה
    זמינות גבוהה --availability-type כדי להגדיר מופע עם זמינות גבוהה, מגדירים את הערך REGIONAL. מידע נוסף
    אזור משני --secondary-zone אם אתם יוצרים מכונה וירטואלית לזמינות גבוהה, אתם יכולים לציין גם את האזור הראשי וגם את האזור המשני באמצעות האפשרויות --zone ו---secondary-zone parameters. ההגבלות הבאות חלות כשמשתמשים באזור המשני במהלך יצירה או עריכה של מופע:
    • האזורים חייבים להיות אזורים תקינים.
    • אם מציינים את האזור המשני, צריך לציין גם את האזור הראשי.
    • אם מציינים את האזורים הראשי והמשני, הם צריכים להיות אזורים נפרדים.

      אם מציינים אזור ראשי ואזור משני, הם חייבים להיות באותו אזור.

    גיבויים אוטומטיים --backup-start-time חלון הזמן שבו רוצים שהגיבויים יתחילו. מידע נוסף
    הגדרות שימור לגיבויים אוטומטיים --retained-backups-count מספר הגיבויים האוטומטיים שיישארו. מידע נוסף
    רישום ביומן בינארי --enable-bin-log רישום ביומן בינארי מאפשר שכפול ושחזור מנקודה מסוימת בזמן. מידע נוסף
    הגדרות שמירה של רישום בינארי --retained-transaction-log-days מספר הימים לשמירת יומנים בינאריים לצורך שחזור מערכת מנקודה מסוימת בזמן (PITR). מידע נוסף
    שחזור מערכת מנקודה מסוימת בזמן (PITR) --enable-point-in-time-recovery ההגדרה הזו מאפשרת שחזור מערכת מנקודה מסוימת בזמן ורישום ביומן של פעולות כתיבה. מידע נוסף
    הוספת דגלים לניהול מסד נתונים
    דגלים לניהול מסד נתונים --database-flags אפשר להשתמש בדגלים של מסד הנתונים כדי לשלוט בהגדרות ובפרמטרים של המופע. מידע נוסף על דגלים של מסדי נתונים מידע נוסף על הפורמט של הפרמטר הזה
    לוח זמנים לתחזוקה
    חלון זמן לתחזוקה --maintenance-window-day,
    --maintenance-window-hour
    הגדרת חלון של שעה שבו Cloud SQL יכול לבצע תחזוקה שגורמת להפרעה במכונה. אם לא מגדירים חלון זמן לתחזוקה, אפשר לבצע תחזוקה שעלולה לשבש את הפעילות בכל שלב. מידע נוסף
    תזמון התחזוקה --maintenance-release-channel התזמון המועדף לעדכוני מופעים, ביחס למופעים אחרים באותו פרויקט. אפשר להשתמש ב-preview כדי לראות עדכונים קודמים וב-production כדי לראות עדכונים מאוחרים יותר. מידע נוסף
    שדרוג אוטומטי של גרסה משנית
    הפעלה של שדרוג אוטומטי של גרסה משנית --enable-auto-upgrade-minor-version במכונות MySQL 8.0 שבהן מצוינת גרסה משנית 8.0.35 ואילך, למשל --database-version=MYSQL_8_0_35. מפעילים שדרוגים אוטומטיים של גרסאות משניות לגרסת ברירת המחדל המשנית של Cloud SQL ל-MySQL 8.0 במהלך כל עדכון תחזוקה מתוזמן רגיל. אם יוצרים את המכונה בלי לציין גרסה משנית (--database-version=MYSQL_8_0), אז שדרוגים אוטומטיים של גרסאות משניות מופעלים במכונה כברירת מחדל.
    תובנות לגבי שאילתות
    --insights-config-query-insights-enabled הפעלת התובנות לגבי שאילתות כדי לספק ניתוח של שאילתות ותוכניות שאילתות.
    --insights-config-enhanced-query-insights-enabled ההגדרה הזו מפעילה ניתוח משופר של שאילתות ב-Cloud SQL Enterprise Plus edition, כדי לספק ניתוח מפורט יותר של שאילתות.
    --performance-capture-config משתמשים בדגל הזה כדי להגדיר את ההגדרות של לכידת הביצועים של MySQL במכונת MySQL. כשמפעילים את התכונה 'תובנות לגבי שאילתות' או את התכונה 'תובנות משופרות לגבי שאילתות', מופעל גם תיעוד הביצועים של MySQL עם תנאי טריגר שמוגדרים כברירת מחדל.

    אפשר להגדיר או להשבית את תיעוד הביצועים באמצעות הדגל --performance-capture-config באותה פקודת יצירה, או לעדכן את המופע מאוחר יותר. מידע נוסף זמין במאמר בנושא הגדרת תיעוד הביצועים של MySQL.
    SAN בהתאמה אישית
    הוספת שם חלופי של בעלים (subject) מותאם אישית (SAN) --custom-subject-alternative-names=DNS_NAMES

    אם אתם רוצים להשתמש בשם DNS מותאם אישית כדי להתחבר למכונת Cloud SQL במקום להשתמש בכתובת IP, אתם צריכים להגדיר את ההגדרה של שם חלופי של בעלים (subject) (SAN) בזמן יצירת המכונה. שם ה-DNS המותאם אישית שמוסיפים להגדרת ה-SAN המותאמת אישית מתווסף לשדה ה-SAN של אישור השרת של המופע. כך תוכלו להשתמש בשם ה-DNS המותאם אישית עם אימות שם המארח בצורה מאובטחת.

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

  3. שימו לב לכתובת ה-IP שהוקצתה באופן אוטומטי.

    אם אתם לא משתמשים בשרת proxy ל-Cloud SQL Auth, תשתמשו בכתובת הזו ככתובת המארח שהאפליקציות או הכלים שלכם משתמשים בה כדי להתחבר למכונה.

  4. מגדירים את הסיסמה למשתמש MySQL ‏root@%:
          gcloud sql users set-password root \
          --host=% \
          --instance INSTANCE_NAME \
          --password PASSWORD
          

Terraform

כדי ליצור מכונה, משתמשים במשאב של Terraform.

resource "google_sql_database_instance" "mysql_pvp_instance_name" {
  name             = "mysql-pvp-instance-name"
  region           = "asia-northeast1"
  database_version = "MYSQL_8_0"
  root_password    = "abcABC123!"
  settings {
    tier = "db-f1-micro"
    password_validation_policy {
      min_length                  = 6
      complexity                  = "COMPLEXITY_DEFAULT"
      reuse_interval              = 2
      disallow_username_substring = true
      enable_password_policy      = true
    }
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

החלה של השינויים

כדי להחיל את הגדרות Terraform בפרויקט ב- Google Cloud , מבצעים את השלבים בקטעים הבאים.

הכנת Cloud Shell

  1. מפעילים את Cloud Shell.
  2. מגדירים את פרויקט ברירת המחדל שבו רוצים להחיל את ההגדרות של Terraform. Google Cloud

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

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

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

הכנת הספרייה

לכל קובץ תצורה של Terraform צריכה להיות ספרייה משלו (שנקראת גם מודול ברמה הבסיסית).

  1. יוצרים ספרייה חדשה ב-Cloud Shell ובה יוצרים קובץ חדש. שם הקובץ חייב לכלול את הסיומת .tf, למשל main.tf. במדריך הזה, הקובץ נקרא main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. אם אתם עוקבים אחרי המדריך, תוכלו להעתיק את הקוד לדוגמה בכל קטע או שלב.

    מעתיקים את הקוד לדוגמה בקובץ main.tf החדש שיצרתם.

    לחלופין, אפשר גם להעתיק את הקוד מ-GitHub. כדאי לעשות את זה כשקטע הקוד של Terraform הוא חלק מפתרון מקצה לקצה.

  3. בודקים את הפרמטרים לדוגמה ומשנים אותם בהתאם לסביבה שלכם.
  4. שומרים את השינויים.
  5. מפעילים את Terraform. צריך לעשות זאת רק פעם אחת לכל ספרייה.
    terraform init

    אופציונלי: תוכלו לכלול את האפשרות -upgrade, כדי להשתמש בגרסה העדכנית ביותר של הספק של Google:

    terraform init -upgrade

החלה של השינויים

  1. בודקים את ההגדרות ומוודאים שהמשאבים שמערכת Terraform תיצור או תעדכן תואמים לציפיות שלכם:
    terraform plan

    מתקנים את ההגדרות לפי הצורך.

  2. מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה, כדי להחיל את הגדרות Terraform:
    terraform apply

    ממתינים עד שב-Terraform תוצג ההודעה "Apply complete!‎".

  3. פותחים את Google Cloud הפרויקט כדי לראות את התוצאות. במסוף Google Cloud , נכנסים למשאבים בממשק המשתמש כדי לוודא שהם נוצרו או עודכנו ב-Terraform.

מחיקת השינויים

כדי למחוק את השינויים:

  1. כדי להשבית את ההגנה מפני מחיקה, מגדירים בקובץ התצורה של Terraform את הארגומנט deletion_protection לערך false.
    deletion_protection =  "false"
  2. מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה, כדי להחיל את הגדרות Terraform המעודכנות:
    terraform apply
  1. כדי להסיר משאבים שהוחלו בעבר על הגדרות Terraform, מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה:

    terraform destroy

REST v1

יצירת המופע

בדוגמה הזו נוצרת מכונה. נכללים גם פרמטרים אופציונליים מסוימים, כמו backups ו-binary logging. רשימה מלאה של הפרמטרים של הקריאה הזו מופיעה בדף Instances:insert. מידע על הגדרות של מופעים, כולל ערכים תקינים לאזור, זמין במאמר הגדרות של מופעים.

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • INSTANCE_ID: מזהה המכונה
  • DATABASE_VERSION: גרסת מסד הנתונים. לדוגמה: MYSQL_9_7, ‏ MYSQL_8_4 או MYSQL_8_0_37. אם לא מציינים גרסת מסד נתונים, גרסת ברירת המחדל של מסד הנתונים היא MYSQL_8_4.
  • REGION: האזור
  • MACHINE_TYPE: סוג המכונה
  • EDITION_TYPE: מהדורת Cloud SQL שלכם
  • DATA_CACHE_ENABLED: (אופציונלי) מגדירים את הערך true כדי להפעיל מטמון נתונים עבור המופע
  • PRIVATE_NETWORK: מציינים את השם של רשת הענן הווירטואלי הפרטי (VPC) שרוצים להשתמש בה עבור המופע הזה. צריך להגדיר מראש את הגישה לשירותים פרטיים ברשת.
  • AUTHORIZED_NETWORKS: לחיבורי IP ציבורי, מציינים את החיבורים מרשתות מורשות שיכולות להתחבר למופע.
  • CA_MODE: מציינים היררכיית רשויות אישורים למופע, GOOGLE_MANAGED_INTERNAL_CA או GOOGLE_MANAGED_CAS_CA. אם לא מציינים את serverCaMode, הגדרת ברירת המחדל היא GOOGLE_MANAGED_INTERNAL_CA. התכונה הזו נמצאת בגרסת טרום-השקה.
  • SERVER_CERTIFICATE_ROTATION_MODE: לסיבוב אוטומטי של אישורי שרת עבור
  • SERVER_CERTIFICATE_ROTATION_MODE: כדי להגדיר רוטציה אוטומטית של אישורי שרת עבור המופע, מציינים AUTOMATIC_ROTATION_DURING_MAINTENANCE. אם לא מציינים את serverCertificateRotationMode, ברירת המחדל היא NO_AUTOMATIC_ROTATION.
  • DNS_NAMES: מוסיפים רשימה מופרדת בפסיקים של עד שלושה שמות DNS לאישור השרת של מופע Cloud SQL. אפשר לאבטח כמה שמות DNS באמצעות אישור אחד. התכונה הזו זמינה בגרסת טרום-השקה ורק במופעים של CUSTOMER_MANAGED_CAS_CA.

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

  • enablePasswordPolicy: מפעיל את מדיניות הסיסמאות כשהערך הוא true.

    כדי להסיר את מדיניות הסיסמאות, אפשר להשתמש בבקשת PATCH עם null כערך של enablePasswordPolicy. במקרה כזה, הפרמטרים האחרים של מדיניות הסיסמאות מאופסים.

  • minLength: מציין את מספר התווים המינימלי שהסיסמה צריכה להכיל.
  • complexity: בודקת אם הסיסמה היא שילוב של אותיות קטנות, אותיות רישיות, ספרות ותווים לא אלפאנומריים. ערך ברירת המחדל הוא COMPLEXITY_DEFAULT.
  • reuseInterval: מציינת את מספר הסיסמאות הקודמות שאסור להשתמש בהן שוב.

    האפשרות נתמכת רק ב-Cloud SQL ל-MySQL 8.0 ואילך.

  • disallowUsernameSubstring: אם הערך הוא true, אי אפשר להשתמש בשם המשתמש בסיסמה.

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

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

  • QUERY_INSIGHTS_ENABLED: צריך להגדיר את הערך true כדי להפעיל את התובנות לגבי שאילתות עבור המופע.
  • RECORD_CLIENT_ADDRESS: מוגדר כ-true כדי לאחסן את כתובות ה-IP של הלקוחות שמהן מגיעות השאילתות, וכדי לעזור לכם לקבץ את הנתונים האלה ולהפעיל מדדים לגביהם. השאילתות מגיעות מיותר ממארח אחד. בדיקת הגרפים של שאילתות מכתובות IP של לקוחות יכולה לעזור לזהות את מקור הבעיה.
  • RECORD_APPLICATION_TAGS: מוגדר כ-true כדי לאחסן תגי אפליקציה שעוזרים לכם לקבוע את ממשקי ה-API ואת המסלולים של בקר התצוגה של המודל (MVC) ששולחים בקשות, ולקבץ את הנתונים כדי להפעיל מדדים על בסיסם. כדי להשתמש באפשרות הזו, צריך להוסיף הערות לשאילתות עם קבוצה ספציפית של תגים. אפשר לעשות זאת באמצעות ספריית sqlcommenter בקוד פתוח למיפוי יחסי של אובייקטים (ORM) עם מכשור אוטומטי. המידע הזה עוזר לכלי Query Insights לזהות את מקור הבעיה ואת ה-MVC שממנו הבעיה מגיעה. נתיבי אפליקציות עוזרים לכם לעקוב אחרי אפליקציות.
  • QUERY_STRING_LENGTH: מוגדר למגבלת אורך השאילתה בבייטים. מגדיר את מגבלת אורך השאילתה שמוגדרת כברירת מחדל. אורך שאילתה גדול יותר שימושי יותר לשאילתות אנליטיות, אבל הוא גם דורש יותר זיכרון. כדי לשנות את אורך השאילתה, צריך להפעיל מחדש את המופע. עדיין אפשר להוסיף תגים לשאילתות שחורגות ממגבלת האורך. במהדורת Cloud SQL Enterprise, אפשר לציין ערך בבייט מ-256 עד 4500. אורך ברירת המחדל של השאילתה הוא 1024 בייטים. במהדורת Cloud SQL Enterprise Plus, אפשר לציין מגבלה בבייטים מ-1 עד 1048576. ערך ברירת המחדל הוא 1024 בייט (1 KB).

  • QUERY_PLANS_PER_MINUTE: הערך שמוגדר כאן הוא מספר תוכניות השאילתות שיירשמו בכל דקה. כברירת מחדל, המערכת מתעדת עד 5 דוגמאות של תוכניות שאילתות שהופעלו בכל דקה בכל מסדי הנתונים במופע. הגדלת קצב הדגימה כנראה תספק לכם יותר נקודות נתונים, אבל עלולה להוסיף תקורה לביצועים. כדי להשבית את הדגימה, מגדירים את הערך הזה ל-0. במהדורת Cloud SQL Enterprise, אפשר לשנות את הערך מ-0 ל-20. במהדורת Cloud SQL Enterprise Plus, אפשר להגדיל את הערך המקסימלי עד 200 כדי לספק יותר נקודות נתונים.

  • ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED: מגדירים את הערך true כדי להפעיל את התובנות המשופרות לגבי השאילתות עבור המופע.

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

  • PERFORMANCE_CAPTURE_ENABLED: מוגדר ל-false כדי להשבית את איסוף נתוני הביצועים של MySQL עבור המופע. אם הערך של queryInsightsEnabled הוא true, אז הלכידה של נתוני הביצועים מופעלת באופן אוטומטי, וערכי ברירת המחדל מוחלים על תנאי הטריגר שמבוססים על סף.
  • PROBING_INTERVAL_SECONDS: מספר שלם בין 30 ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ברירת המחדל היא 30.
  • PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא 1 עד 20. ברירת המחדל היא 3.
  • RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה, 10. הערך חייב להיות גדול מ-10 או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ברירת המחדל היא MIN(600, cpuCount * 20). ערך ברירת המחדל הוא 600 או מספר ליבות ה-vCPU במופע כפול 20, לפי הנמוך מביניהם.
  • SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקים לקריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-1. ברירת המחדל היא 900.
  • TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים. לדוגמה, 300. הערך המינימלי הוא 60. ברירת המחדל היא 3600.
  • SECONDS: משך הזמן בשניות של העסקאות ארוכות הטווח שיוסיימו באופן אוטומטי. אי אפשר להגדיר את המגבלה הזו לערך נמוך מהערך שהגדרתם לפרמטר transactionDurationThreshold (TRANSACTION_DURATION_THRESHOLD).
  • TRANSACTION_TYPE: קובע את קטגוריות העסקאות שיש לסיים. הערכים האפשריים הם:
    • READ_ONLY_TRANSACTIONS: מסיימת רק שאילתות לקריאה בלבד או שאילתות SELECT. זו ברירת המחדל אם לא צוין transactionKillType.
    • ALL_TRANSACTIONS: מסיים כל שאילתה פעילה שחורגת מהסף, כולל שאילתות עם פעולות כתיבה. זה כולל את INSERT,‏ UPDATE,‏ DELETE ומשפטים אחרים של DDL.
  • EXCLUSION_LIST: רשימה של מחרוזות שיוחרגו. אפשר לספק את הערכים כ-user@host או כמשתמש עצמאי, שברירת המחדל שלו היא user@%. הרשימה תומכת בתווים הכלליים לחיפוש % ו-_ להתאמה בחלק של המארח.
  • CPU_UTILIZATION_THRESHOLD_PERCENT: אחוז השימוש הכולל במעבד שחורג באופן עקבי. לדוגמה, 90. הערך המינימלי הוא 10 והערך המקסימלי הוא 99. ברירת המחדל היא 0 (מושבת).
  • MEMORY_USAGE_THRESHOLD_PERCENT: אחוז השימוש הכולל בזיכרון שצריך לעבור באופן עקבי. לדוגמה, 90. הערך המינימלי הוא 10 והערך המקסימלי הוא 99. ברירת המחדל היא 0 (מושבת).
  • TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT: ערך הסף לעסקאות שמותר שיהיו במצב LOCK WAIT. לדוגמה, 50. הערך המינימלי הוא 10 והערך המקסימלי הוא 10000. ברירת המחדל היא 0 (מושבת).
  • SEMAPHORE_WAIT_THRESHOLD_COUNT: the threshold for the number of threads waiting on InnoDB semaphores from the SHOW ENGINE INNODB STATUS command. לדוגמה, 20. הערך המינימלי הוא 10 והערך המקסימלי הוא 10000. ברירת המחדל היא 0 (מושבת).
  • HISTORY_LIST_LENGTH_THRESHOLD_COUNT: ערך הסף של מספר הרשומות ברשימת ההיסטוריה של InnoDB (HLL) שמותר למסד הנתונים. לדוגמה, 100000. הערך המינימלי הוא 10000 והערך המקסימלי הוא 10000000. ברירת המחדל היא 0 (מושבת).

ה-method של ה-HTTP וכתובת ה-URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

תוכן בקשת JSON:

{
  "name": "INSTANCE_ID",
  "region": "REGION",
  "databaseVersion": "DATABASE_VERSION",
  "settings": {
    "tier": "MACHINE_TYPE",
    "edition": "EDITION_TYPE",
    "dataCacheConfig": {
      "dataCacheEnabled": DATA_CACHE_ENABLED
    },
    "backupConfiguration": {
      "binaryLogEnabled": true,
      "enabled": true
    },
    "passwordValidationPolicy": {
      "enablePasswordPolicy": true
      "minLength": "MIN_LENGTH",
      "complexity": COMPLEXITY_DEFAULT,
      "reuseInterval": "REUSE_INTERVAL",
      "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING"
    },
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [AUTHORIZED_NETWORKS],
      "ipv4Enabled": false,
      "enablePrivatePathForGoogleCloudServices": true,
      "serverCaMode": "CA_MODE",
      "serverCertificateRotationMode": "SERVER_CERTIFICATE_ROTATION_MODE",
      "customSubjectAlternativeNames": "DNS_NAMES"
    },
    "dataApiAccess": "ALLOW_DATA_API",
    "insightsConfig" : {
       "queryInsightsEnabled" : QUERY_INSIGHTS_ENABLED,
       "recordClientAddress" : RECORD_CLIENT_ADDRESS,
       "recordApplicationTags" : RECORD_APPLICATION_TAGS,
       "queryStringLength" : QUERY_STRING_LENGTH,
       "queryPlansPerMinute" : QUERY_PLANS_PER_MINUTE,
       "enableEnhancedQueryInsightsEnabled": ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED
    },
    "performanceCaptureConfig": {
       "enabled": PERFORMANCE_CAPTURE_ENABLED,
       "probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
       "probeThreshold": PROBE_THRESHOLD,
       "runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
       "secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
       "cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
       "memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
       "transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
       "semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
       "historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT,
       "transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
       "transactionKillThresholdSeconds": SECONDS,
       "transactionKillType": TRANSACTION_TYPE,
       "transactionKillExcludedUserHosts": [ EXCLUSION_LIST
     ]
   },
  }
 "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2019-09-25T22:19:33.735Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

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

עדכון סיסמת הבסיס

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • project-id: מזהה הפרויקט
  • instance-id: מזהה המופע שנוצר בשלב הקודם
  • root-password: סיסמת הבסיס הרצויה

ה-method של ה-HTTP וכתובת ה-URL:

PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?host=%25&name=root

תוכן בקשת JSON:

{
  "name": "root",
  "host": "%",
  "password": "root-password"
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "status": "DONE",
  "user": "user@example.com",
  "insertTime": "2019-09-26T14:32:30.592Z",
  "startTime": "2019-09-26T14:32:30.594Z",
  "endTime": "2019-09-26T14:32:33.518Z",
  "operationType": "UPDATE_USER",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

אחזור כתובת ה-IPv4

מאחזרים את כתובת ה-IPv4 שהוקצתה באופן אוטומטי למכונה החדשה:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • project-id: מזהה הפרויקט
  • instance-id: מזהה המופע שנוצר בשלב הקודם

ה-method של ה-HTTP וכתובת ה-URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0_18",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-f1-micro",
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "ipv4Enabled": true
    },
    "locationPreference": {
      "zone": "us-west1-a",
      "kind": "sql#locationPreference"
    },
    "dataDiskType": "PD_SSD",
    "backupConfiguration": {
      "startTime": "18:00",
      "kind": "sql#backupConfiguration",
      "enabled": true,
      "binaryLogEnabled": true
    },
    "settingsVersion": "1",
    "storageAutoResizeLimit": "0",
    "storageAutoResize": true,
    "dataDiskSizeGb": "10"
  },
  "etag": "--redacted--",
  "ipAddresses": [
    {
      "type": "PRIMARY",
      "ipAddress": "10.0.0.1"
    }
  ],
  "serverCaCert": {
    ...
  },
  "instanceType": "CLOUD_SQL_INSTANCE",
  "project": "project-id",
  "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
  "backendType": "SECOND_GEN",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "us-west1",
  "gceZone": "us-west1-a"
}

מחפשים את השדה ipAddress בתשובה.

REST v1beta4

יצירת המופע

בדוגמה הזו נוצרת מכונה. נכללים גם פרמטרים אופציונליים מסוימים, כמו backups ו-binary logging. רשימה מלאה של הפרמטרים של הקריאה הזו מופיעה בדף instances:insert. מידע על הגדרות של מופע, כולל ערכים תקינים של אזור, זמין במאמר הגדרות של מופע

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • INSTANCE_ID: מזהה המכונה
  • DATABASE_VERSION: גרסת מסד הנתונים. לדוגמה: MYSQL_9_7, ‏ MYSQL_8_4 או MYSQL_8_0_37. אם לא מציינים גרסת מסד נתונים, גרסת ברירת המחדל היא MYSQL_8_4.
  • REGION: האזור
  • MACHINE_TYPE: סוג המכונה
  • EDITION_TYPE: מהדורת Cloud SQL שלכם
  • DATA_CACHE_ENABLED: (אופציונלי) מגדירים את הערך true כדי להפעיל מטמון נתונים עבור המופע
  • PRIVATE_NETWORK: מציינים את השם של רשת הענן הווירטואלי הפרטי (VPC) שרוצים להשתמש בה עבור המופע הזה. צריך להגדיר מראש את הגישה לשירותים פרטיים ברשת.
  • AUTHORIZED_NETWORKS: לחיבורי IP ציבורי, מציינים את החיבורים מרשתות מורשות שיכולות להתחבר למופע.
  • CA_MODE: מציינים היררכיית רשויות אישורים למופע, GOOGLE_MANAGED_INTERNAL_CA או GOOGLE_MANAGED_CAS_CA. אם לא מציינים את serverCaMode, הגדרת ברירת המחדל היא GOOGLE_MANAGED_INTERNAL_CA. התכונה הזו נמצאת בגרסת טרום-השקה.
  • SERVER_CERTIFICATE_ROTATION_MODE: כדי להגדיר רוטציה אוטומטית של אישור השרת עבור המופע, מציינים AUTOMATIC_ROTATION_DURING_MAINTENANCE. אם לא מציינים את serverCertificateRotationMode, הגדרת ברירת המחדל היא NO_AUTOMATIC_ROTATION.
  • DNS_NAMES: מוסיפים רשימה מופרדת בפסיקים של עד שלושה שמות DNS לאישור השרת של מופע Cloud SQL. אפשר לאבטח כמה שמות DNS באמצעות אישור אחד. התכונה הזו זמינה בגרסת טרום-השקה ורק במופעים של CUSTOMER_MANAGED_CAS_CA.

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

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

  • enablePasswordPolicy: הפעלת מדיניות הסיסמאות כשההגדרה היא true.

    כדי להסיר את מדיניות הסיסמאות, אפשר להשתמש בבקשת PATCH עם null כערך של enablePasswordPolicy. במקרה כזה, הפרמטרים האחרים של מדיניות הסיסמאות מאופסים.

  • minLength: מציינת את מספר התווים המינימלי שהסיסמה צריכה להכיל.
  • complexity: בודקת אם הסיסמה היא שילוב של אותיות קטנות, אותיות גדולות, תווים מספריים ותווים לא אלפאנומריים. ערך ברירת המחדל הוא COMPLEXITY_DEFAULT.
  • reuseInterval: מציינת את מספר הסיסמאות הקודמות שאסור להשתמש בהן שוב.

    האפשרות נתמכת רק ב-Cloud SQL ל-MySQL 8.0 ואילך.

  • disallowUsernameSubstring: מונע שימוש בשם המשתמש בסיסמה אם הערך הוא true.

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

  • QUERY_INSIGHTS_ENABLED: צריך להגדיר את הערך true כדי להפעיל את התובנות לגבי שאילתות עבור המופע.
  • RECORD_CLIENT_ADDRESS: מוגדר כ-true כדי לאחסן את כתובות ה-IP של הלקוחות שמהן מגיעות השאילתות, וכדי לעזור לכם לקבץ את הנתונים האלה ולהפעיל מדדים לגביהם. השאילתות מגיעות מיותר ממארח אחד. בדיקת הגרפים של שאילתות מכתובות IP של לקוחות יכולה לעזור לזהות את מקור הבעיה.
  • RECORD_APPLICATION_TAGS: מוגדר כ-true כדי לאחסן תגי אפליקציה שעוזרים לכם לקבוע את ממשקי ה-API ואת המסלולים של בקר התצוגה של המודל (MVC) ששולחים בקשות, ולקבץ את הנתונים כדי להפעיל מדדים על בסיסם. כדי להשתמש באפשרות הזו, צריך להוסיף הערות לשאילתות עם קבוצה ספציפית של תגים. אפשר לעשות זאת באמצעות ספריית sqlcommenter בקוד פתוח למיפוי יחסי של אובייקטים (ORM) עם מכשור אוטומטי. המידע הזה עוזר לכלי Query Insights לזהות את מקור הבעיה ואת ה-MVC שממנו הבעיה מגיעה. נתיבי אפליקציות עוזרים לכם לעקוב אחרי אפליקציות.
  • QUERY_STRING_LENGTH: מוגדר למגבלת אורך השאילתה בבייטים. מגדיר את מגבלת אורך השאילתה שמוגדרת כברירת מחדל. אורך שאילתה גדול יותר שימושי יותר לשאילתות אנליטיות, אבל הוא גם דורש יותר זיכרון. כדי לשנות את אורך השאילתה, צריך להפעיל מחדש את המופע. עדיין אפשר להוסיף תגים לשאילתות שחורגות ממגבלת האורך. במהדורת Cloud SQL Enterprise, אפשר לציין ערך בבייט מ-256 עד 4500. אורך ברירת המחדל של השאילתה הוא 1024 בייטים. במהדורת Cloud SQL Enterprise Plus, אפשר לציין מגבלה בבייטים מ-1 עד 1048576. ערך ברירת המחדל הוא 1024 בייט (1 KB).

  • QUERY_PLANS_PER_MINUTE: הערך שמוגדר כאן הוא מספר תוכניות השאילתות שיירשמו בכל דקה. כברירת מחדל, המערכת מתעדת עד 5 דוגמאות של תוכניות שאילתות שהופעלו בכל דקה בכל מסדי הנתונים במופע. הגדלת קצב הדגימה כנראה תספק לכם יותר נקודות נתונים, אבל עלולה להוסיף תקורה לביצועים. כדי להשבית את הדגימה, מגדירים את הערך הזה ל-0. במהדורת Cloud SQL Enterprise, אפשר לשנות את הערך מ-0 ל-20. במהדורת Cloud SQL Enterprise Plus, אפשר להגדיל את הערך המקסימלי עד 200 כדי לספק יותר נקודות נתונים.

  • ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED: מגדירים את הערך true כדי להפעיל את התובנות המשופרות לגבי השאילתות עבור המופע.

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

  • PERFORMANCE_CAPTURE_ENABLED: מוגדר ל-false כדי להשבית את איסוף נתוני הביצועים של MySQL עבור המופע. אם הערך של queryInsightsEnabled הוא true, אז תיעוד הביצועים של MySQL מופעל אוטומטית, וערכי ברירת המחדל חלים על תנאי ההפעלה מבוססי הסף.
  • PROBING_INTERVAL_SECONDS: מספר שלם בין 30 ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ברירת המחדל היא 30.
  • PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא 1 עד 20. ברירת המחדל היא 3.
  • RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה, 10. הערך חייב להיות גדול מ-10 או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ברירת המחדל היא MIN(600, cpuCount * 20). ערך ברירת המחדל הוא 600 או מספר ליבות ה-vCPU במופע כפול 20, לפי הנמוך מביניהם.
  • SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקים לקריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-1. ברירת המחדל היא 900.
  • TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים. לדוגמה, 300. הערך המינימלי הוא 60. ברירת המחדל היא 3600.
  • SECONDS: משך הזמן בשניות של העסקאות ארוכות הטווח שיוסיימו באופן אוטומטי. אי אפשר להגדיר את המגבלה הזו לערך נמוך מהערך שהגדרתם לפרמטר transactionDurationThreshold (TRANSACTION_DURATION_THRESHOLD).
  • TRANSACTION_TYPE: קובע את קטגוריות העסקאות שיש לסיים. הערכים האפשריים הם:
    • READ_ONLY_TRANSACTIONS: מסיימת רק שאילתות לקריאה בלבד או שאילתות SELECT. זו ברירת המחדל אם לא צוין transactionKillType.
    • ALL_TRANSACTIONS: מסיים כל שאילתה פעילה שחורגת מהסף, כולל שאילתות עם פעולות כתיבה. זה כולל את INSERT,‏ UPDATE,‏ DELETE ומשפטים אחרים של DDL.
  • EXCLUSION_LIST: רשימה של מחרוזות שיוחרגו. אפשר לספק את הערכים כ-user@host או כמשתמש עצמאי, שברירת המחדל שלו היא user@%. הרשימה תומכת בתווים הכלליים לחיפוש % ו-_ להתאמה בחלק של המארח.
  • CPU_UTILIZATION_THRESHOLD_PERCENT: אחוז השימוש הכולל במעבד שחורג באופן עקבי. לדוגמה, 90. הערך המינימלי הוא 10 והערך המקסימלי הוא 99. ברירת המחדל היא 0 (מושבת).
  • MEMORY_USAGE_THRESHOLD_PERCENT: אחוז השימוש הכולל בזיכרון שצריך לעבור באופן עקבי. לדוגמה, 90. הערך המינימלי הוא 10 והערך המקסימלי הוא 99. ברירת המחדל היא 0 (מושבת).
  • TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT: ערך הסף לעסקאות שמותר שיהיו במצב LOCK WAIT. לדוגמה, 50. הערך המינימלי הוא 10 והערך המקסימלי הוא 10000. ברירת המחדל היא 0 (מושבת).
  • SEMAPHORE_WAIT_THRESHOLD_COUNT: the threshold for the number of threads waiting on InnoDB semaphores from the SHOW ENGINE INNODB STATUS command. לדוגמה, 20. הערך המינימלי הוא 10 והערך המקסימלי הוא 10000. ברירת המחדל היא 0 (מושבת).
  • HISTORY_LIST_LENGTH_THRESHOLD_COUNT: ערך הסף של מספר הרשומות ברשימת ההיסטוריה של InnoDB (HLL) שמותר למסד הנתונים. לדוגמה, 100000. הערך המינימלי הוא 10000 והערך המקסימלי הוא 10000000. ברירת המחדל היא 0 (מושבת).

ה-method של ה-HTTP וכתובת ה-URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances

תוכן בקשת JSON:

{
  "name": "INSTANCE_ID",
  "region": "REGION",
  "databaseVersion": "DATABASE_VERSION",
  "settings": {
    "tier": "MACHINE_TYPE",
    "edition": "EDITION_TYPE",
    "dataCacheConfig" {
      "dataCacheEnabled": DATA_CACHE_ENABLED
    },
    "backupConfiguration": {
      "binaryLogEnabled": true,
      "enabled": true
    },
    "passwordValidationPolicy": {
      "enablePasswordPolicy": true
      "minLength": "MIN_LENGTH",
      "complexity": COMPLEXITY_DEFAULT,
      "reuseInterval": "REUSE_INTERVAL",
      "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING",
    },
    "ipConfiguration": {
      "privateNetwork": "PRIVATE_NETWORK",
      "authorizedNetworks": [AUTHORIZED_NETWORKS],
      "ipv4Enabled": false,
      "enablePrivatePathForGoogleCloudServices": true,
      "serverCaMode": "CA_MODE",
      "serverCertificateRotationMode": "SERVER_CERTIFICATE_ROTATION_MODE",
      "customSubjectAlternativeNames": "DNS_NAMES"
    },
    "dataApiAccess": "ALLOW_DATA_API",
    "insightsConfig": {
       "queryInsightsEnabled" : QUERY_INSIGHTS_ENABLED,
       "recordClientAddress" : RECORD_CLIENT_ADDRESS,
       "recordApplicationTags" : RECORD_APPLICATION_TAGS,
       "queryStringLength" : QUERY_STRING_LENGTH,
       "queryPlansPerMinute" : QUERY_PLANS_PER_MINUTE,
       "enableEnhancedQueryInsightsEnabled": ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED
    },
    
    "performanceCaptureConfig": {
       "enabled": PERFORMANCE_CAPTURE_ENABLED,
      "probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
      "probeThreshold": PROBE_THRESHOLD,
      "runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
      "secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
      "cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
      "memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
      "transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
      "semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
      "historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT,
      "transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
      "transactionKillThresholdSeconds": SECONDS,
      "transactionKillType": TRANSACTION_TYPE,
      "transactionKillExcludedUserHosts": [ EXCLUSION_LIST
     ]
    },
    
  },
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2019-09-25T22:19:33.735Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

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

עדכון סיסמת הבסיס

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • project-id: מזהה הפרויקט
  • instance-id: מזהה המופע שנוצר בשלב הקודם
  • root-password: סיסמת הבסיס הרצויה

ה-method של ה-HTTP וכתובת ה-URL:

PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?host=%25&name=root

תוכן בקשת JSON:

{
  "name": "root",
  "host": "%",
  "password": "root-password"
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "status": "DONE",
  "user": "user@example.com",
  "insertTime": "2019-09-26T14:32:30.592Z",
  "startTime": "2019-09-26T14:32:30.594Z",
  "endTime": "2019-09-26T14:32:33.518Z",
  "operationType": "UPDATE_USER",
  "name": "operation-id",
  "targetId": "instance-id",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
  "targetProject": "project-id"
}

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

אחזור כתובת ה-IPv4

מאחזרים את כתובת ה-IPv4 שהוקצתה באופן אוטומטי למכונה החדשה:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • project-id: מזהה הפרויקט
  • instance-id: מזהה המופע שנוצר בשלב הקודם

ה-method של ה-HTTP וכתובת ה-URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "MYSQL_8_0_18",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-f1-micro",
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "ipv4Enabled": true
    },
    "locationPreference": {
      "zone": "us-west1-a",
      "kind": "sql#locationPreference"
    },
    "dataDiskType": "PD_SSD",
    "backupConfiguration": {
      "startTime": "18:00",
      "kind": "sql#backupConfiguration",
      "enabled": true,
      "binaryLogEnabled": true
    },
    "settingsVersion": "1",
    "storageAutoResizeLimit": "0",
    "storageAutoResize": true,
    "dataDiskSizeGb": "10"
  },
  "etag": "--redacted--",
  "ipAddresses": [
    {
      "type": "PRIMARY",
      "ipAddress": "10.0.0.1"
    }
  ],
  "serverCaCert": {
    ...
  },
  "instanceType": "CLOUD_SQL_INSTANCE",
  "project": "project-id",
  "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
  "backendType": "SECOND_GEN",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
  "connectionName": "project-id:region:instance-id",
  "name": "instance-id",
  "region": "us-west1",
  "gceZone": "us-west1-a"
}

מחפשים את השדה ipAddress בתשובה.

כדי לראות איך בקשת API בארכיטקטורת REST הבסיסית בנויה למשימה הזו, אפשר לעיין ב-APIs Explorer בדף instances:insert.

יצירת נקודת הקצה לכתיבה

נקודת קצה לכתיבה היא שם גלובלי של Domain Name Service‏ (DNS) שמקבל באופן אוטומטי את כתובת ה-IP של המופע הראשי הנוכחי. נקודת הקצה הזו מפנה מחדש חיבורים נכנסים למופע הראשי החדש באופן אוטומטי במקרה של יתירות כשל או מעבר לגיבוי פעיל של רפליקה. אפשר להשתמש בנקודת הקצה לכתיבה במחרוזת חיבור SQL במקום בכתובת IP. שימוש בנקודת קצה לכתיבה מאפשר לכם להימנע משינויים בחיבור האפליקציה במקרה של הפסקת חשמל באזור.

מידע נוסף על שימוש בנקודת קצה לכתיבה כדי להתחבר למופע זמין במאמר בנושא התחברות למופע באמצעות נקודת קצה לכתיבה.

ציון הגרסה המשנית של מסד הנתונים ל-MySQL 8.0

אפשר לציין את הגרסה המשנית של מכונת MySQL 8.0 קיימת באמצעות gcloud או ה-API בארכיטקטורת REST.

gcloud

משתמשים בפקודה gcloud sql instances create עם הדגל --database-version.

לפני שמריצים את הפקודה, מחליפים את המשתנים הבאים:

  • INSTANCE_NAME: השם של המכונה.
  • DATABASE_VERSION: הגרסה המשנית של מסד הנתונים של המכונה:‫ MYSQL_8_0_18,‏ MYSQL_8_0_26,‏ MYSQL_8_0_27,‏ MYSQL_8_0_28,‏ MYSQL_8_0_30,‏ MYSQL_8_0_31,‏ MYSQL_8_0_32,‏ MYSQL_8_0_33,‏ MYSQL_8_0_34,‏ MYSQL_8_0_35,‏ MYSQL_8_0_36,‏ MYSQL_8_0_37,‏ MYSQL_8_0_39,‏ MYSQL_8_0_40,‏ MYSQL_8_0_41,‏ MYSQL_8_0_42,‏ MYSQL_8_0_43,‏ MYSQL_8_0_44,‏ MYSQL_8_0_45 (גרסת ברירת המחדל ל-MySQL 8.0) או MYSQL_8_0_46. אם מציינים MYSQL_8_0, נעשה שימוש בגרסת המשנה שמוגדרת כברירת מחדל.

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

gcloud sql instances create INSTANCE_NAME \
--database-version=DATABASE_VERSION

אם אתם יוצרים מכונה עם MySQL מגרסה משנית 8.0.35 והלאה, אפשר להפעיל שדרוגים אוטומטיים של גרסאות משניות על ידי ציון האפשרות --enable-auto-upgrade-minor-version. כשמפעילים שדרוגים אוטומטיים של גרסאות משניות, המכונה משודרגת לגרסת ברירת המחדל של Cloud SQL ל-MySQL 8.0 במהלך עדכון התחזוקה המתוזמן הרגיל. הסימון הבוליאני הזה לא זמין ב-MySQL בגרסה 8.0.34 ובגרסאות קודמות.

gcloud sql instances create INSTANCE_NAME \
--database-version=DATABASE_VERSION \
--enable-auto-upgrade-minor-version

מידע מפורט זמין במאמר בנושא יצירת מופע באמצעות gcloud.

REST v1

משתמשים בבקשת POST עם השיטה instances:insert והדגל databaseVersion.

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את המשתנים האלה:
  • project_id: מזהה הפרויקט.
  • instance_id: השם של המכונה.
  • databaseVersion: גרסת מסד הנתונים של המכונה: ‫MYSQL_8_0_18, ‫MYSQL_8_0_26, ‫MYSQL_8_0_27, ‫MYSQL_8_0_28, ‫MYSQL_8_0_30, ‫MYSQL_8_0_31, ‫MYSQL_8_0_32, ‫MYSQL_8_0_33, ‫MYSQL_8_0_34, ‫MYSQL_8_0_35, ‫MYSQL_8_0_36, ‫MYSQL_8_0_37, ‫MYSQL_8_0_39, ‫MYSQL_8_0_40, ‫MYSQL_8_0_41, ‫MYSQL_8_0_42, ‫MYSQL_8_0_43, ‫MYSQL_8_0_44, ‫MYSQL_8_0_45 (גרסת המשנה שמוגדרת כברירת מחדל ל-MySQL 8.0) או ‫MYSQL_8_0_46. אם מציינים את הגרסה MYSQL_8_0, נעשה שימוש בגרסת המשנה שמוגדרת כברירת מחדל. אם לא מציינים את הדגל databaseVersion, המערכת משתמשת בגרסה הראשית שמוגדרת כברירת מחדל, MYSQL_8_0.

מידע מפורט מופיע במאמר בנושא יצירת מופע באמצעות REST v1 API.

REST v1beta4

משתמשים בבקשת POST עם השיטה instances:insert והדגל databaseVersion.

  POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את המשתנים האלה:

  • project_id: מזהה הפרויקט.
  • instance_id: השם של המכונה.
  • databaseVersion: גרסת מסד הנתונים של המופע: MYSQL_8_0_18, MYSQL_8_0_26, MYSQL_8_0_27, MYSQL_8_0_28, MYSQL_8_0_30, MYSQL_8_0_31, MYSQL_8_0_32, MYSQL_8_0_33. ‫MYSQL_8_0_34, MYSQL_8_0_35, MYSQL_8_0_36, MYSQL_8_0_37, MYSQL_8_0_39, MYSQL_8_0_40, MYSQL_8_0_41, MYSQL_8_0_42, MYSQL_8_0_43, MYSQL_8_0_44, ‫MYSQL_8_0_45 (גרסת המשנה שמוגדרת כברירת מחדל ל-MySQL 8.0) או MYSQL_8_0_46. אם מציינים את MYSQL_8_0, נעשה שימוש בגרסת המשנה שמוגדרת כברירת מחדל. אם לא מציינים את הדגל databaseVersion, המערכת משתמשת בגרסה הראשית שמוגדרת כברירת מחדל, MYSQL_8_0.

מידע מפורט מופיע במאמר בנושא יצירת מופע באמצעות REST v1beta4 API.

גרסה משנית של מסד הנתונים לרפליקות לקריאה, לשיבוטים ול-PITR

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

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

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

הגדרות מותאמות אישית של מופעים

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

במכונות במהדורת Cloud SQL Enterprise Plus, ‏ Cloud SQL מציע סוגי מכונות מוגדרים מראש למכונות שלכם בסדרות המכונות N2 ו-C4A.

למכונות במהדורת Cloud SQL Enterprise,‏ Cloud SQL מציע את סדרות המכונות general purpose shared core, general purpose dedicated core ו-N4.

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

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

מידע נוסף על סוגי המכונות וסדרות המכונות שזמינים למכונת Cloud SQL שלכם זמין במאמר סקירה כללית על סדרות מכונות.

פתרון בעיות

שגיאה פתרון בעיות
הודעת שגיאה: The zone or region does not have sufficient resources to handle the request at the moment.

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

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

הודעת שגיאה: Failed to create subnetwork. Couldn't find free blocks in allocated IP ranges. Please allocate new ranges for this service provider. אין יותר כתובות זמינות בטווח כתובות ה-IP שהוקצה. יכולים להיות כמה תרחישים אפשריים:
  • הגודל של טווח כתובות ה-IP שהוקצה לחיבור הפרטי לשירות קטן מ-‎ /24.
  • הגודל של טווח כתובות ה-IP שהוקצה לחיבור הפרטי לשירות קטן מדי ביחס למספר המכונות של Cloud SQL.
  • הדרישה לגבי הגודל של טווח כתובות ה-IP שהוקצה תהיה גדולה יותר אם המכונות הווירטואליות נוצרות בכמה אזורים. הצגת גודל הטווח שהוקצה

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

אם השתמשתם בדגל --allocated-ip-range-name כשיצרתם את מופע Cloud SQL, תוכלו להרחיב רק את טווח כתובות ה-IP שצוין.

אם מקצים טווח חדש, צריך לוודא שההקצאה לא חופפת להקצאות קיימות.

אחרי שיוצרים טווח IP חדש, מעדכנים את ה-VPC Peering באמצעות הפקודה הבאה:

gcloud services vpc-peerings update \
--service=servicenetworking.googleapis.com \
--ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \
--network=VPC_NETWORK \
--project=PROJECT_ID \
--force
    

אם מרחיבים הקצאה קיימת, חשוב להגדיל רק את טווח ההקצאה ולא להקטין אותו. לדוגמה, אם ההקצאה המקורית הייתה 10.0.10.0/24, ההקצאה החדשה צריכה להיות לפחות 10.0.10.0/23.

באופן כללי, אם מתחילים מהקצאה של ‎ /24, מומלץ להקטין את ‎ /mask ב-1 לכל תנאי (קבוצת סוגי מופעים נוספת, אזור נוסף). לדוגמה, אם מנסים ליצור שתי קבוצות של סוגי מופעים באותו הקצאה, מעבר מ-‎ /24 ל-‎ /23 מספיק.

אחרי הרחבת טווח כתובות IP קיים, מעדכנים את ה-VPC Peering באמצעות הפקודה הבאה:

gcloud services vpc-peerings update \
--service=servicenetworking.googleapis.com \
--ranges=RESERVED_RANGE_NAME \
--network=VPC_NETWORK \
--project=PROJECT_ID
    
הודעת שגיאה: Failed to create subnetwork. Router status is temporarily unavailable. Please try again later. Help Token: [token-ID]. נסו ליצור שוב את המכונה של Cloud SQL.
הודעת שגיאה: HTTPError 400: Invalid request: Incorrect Service Networking config for instance: PROJECT_ID:INSTANCE_NAME:SERVICE_NETWORKING_NOT_ENABLED.

מפעילים את Service Networking API באמצעות הפקודה הבאה ומנסים שוב ליצור את מכונת Cloud SQL.

gcloud services enable servicenetworking.googleapis.com \
--project=PROJECT_ID
    
הודעת שגיאה: Failed to create subnetwork. Required 'compute.projects.get' permission for PROJECT_ID. כשיוצרים מופע באמצעות כתובת IP פרטית, נוצר חשבון שירות בדיוק בזמן באמצעות Service Networking API. אם הפעלתם את Service Networking API רק לאחרונה, יכול להיות שחשבון השירות לא ייווצר ויצירת המופע תיכשל. במקרה כזה, צריך לחכות עד שחשבון השירות יתעדכן בכל המערכת או להוסיף אותו ידנית עם ההרשאות הנדרשות.
הודעת שגיאה: More than 3 subject alternative names are not allowed. אתם מנסים להשתמש ב-SAN בהתאמה אישית כדי להוסיף יותר משלושה שמות DNS לאישור השרת של מופע Cloud SQL. אי אפשר להוסיף למופע יותר משלושה שמות DNS.
הודעת שגיאה: Subject alternative names %s is too long. The maximum length is 253 characters. מוודאים ששמות ה-DNS שרוצים להוסיף לאישור השרת של מופע Cloud SQL לא מכילים יותר מ-253 תווים.
הודעת שגיאה: Subject alternative name %s is invalid.

מוודאים ששמות ה-DNS שרוצים להוסיף לאישור השרת של מופע Cloud SQL עומדים בקריטריונים הבאים:

  • הם לא כוללים תווים כלליים לחיפוש.
  • הם לא מסתיימים בנקודות.
  • הם עומדים בדרישות של RFC 1034.

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

  1. יצירת מסד נתונים של MySQL במכונה.
  2. יצירת משתמשי MySQL במכונה.
  3. גישה מאובטחת למופע ושליטה בו.
  4. מתחברים למכונה באמצעות לקוח MySQL.
  5. ייבוא נתונים למסד הנתונים.
  6. מידע על הגדרות של מופע