התחברות ל-Cloud SQL ל-MySQL באמצעות שרת proxy ל-Cloud SQL Auth

בדף הזה מוסבר איך להתחבר ל-Cloud SQL מסביבת בדיקה מקומית באמצעות Cloud SQL Auth Proxy. שרת ה-proxy ל-Cloud SQL Auth מספק גישה מאובטחת למכונה שלכם ב-Cloud SQL בלי שתצטרכו להשתמש ברשתות מורשות או להגדיר SSL. באמצעות שרת proxy ל-Cloud SQL Auth, אתם יכולים להתחבר למכונה של Cloud SQL בצורה מאובטחת.

ההוראות בדף הזה מיועדות לסביבת בדיקה בלבד, ולא לשימוש בסביבות ייצור. מידע נוסף על ההגדרה הנדרשת לסביבות ייצור זמין במאמרים שימוש בשרת proxy ל-Cloud SQL Auth בסביבת ייצור וחיבור באמצעות שרת proxy ל-Cloud SQL Auth.

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

  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. 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

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

  6. מפעילים את ממשקי Google Cloud API הנדרשים.

    המסוף

    נכנסים לדף APIs במסוף Google Cloud .

    לדף APIs

    מפעילים את Cloud SQL Admin API.

    gcloud

    כדי לפתוח את Cloud Shell, שמאפשר גישה לשורת הפקודה למשאבים Google Cloud שלכם ישירות מהדפדפן, לוחצים על הלחצן הבא. אפשר להשתמש ב-Cloud Shell כדי להריץ את הפקודות של gcloud שמופיעות במדריך למתחילים הזה.

    פתיחת Cloud Shell

    מריצים את הפקודה gcloud services enable באמצעות Cloud Shell כדי להפעיל את ממשקי ה-API שנדרשים במדריך למתחילים הזה:

    gcloud services enable sqladmin.googleapis.com

    הפקודה הזו מפעילה את ממשקי ה-API הבאים:

    • Cloud SQL Admin API
  7. צריך לוודא שיש לכם בפרויקט את התפקיד או התפקידים הבאים: אדמין Cloud SQL ‏ (roles/cloudsql.admin)

    בדיקת התפקידים

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

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

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

    מתן התפקידים

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

      כניסה לדף IAM
    2. בוחרים את הפרויקט.
    3. לוחצים על Grant access.
    4. בשדה New principals, מזינים את מזהה המשתמש. ‫ בדרך כלל מזהה המשתמש הוא כתובת האימייל של חשבון Google.

      ‫
    5. לוחצים על Select a role ומחפשים את התפקיד.
    6. כדי לתת עוד תפקידים, לוחצים על Add another role ומוסיפים אותם.
    7. לוחצים על Save.

יצירת מכונה של Cloud SQL

במדריך למתחילים הזה נשתמש במסוף Google Cloud . כדי להשתמש ב-CLI של gcloud, ב-curl או ב-PowerShell, אפשר לעיין במאמר בנושא יצירת מכונות.

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

    כניסה לדף Cloud SQL Instances

  2. לוחצים על Create instance.
  3. בתפריט יצירת מופע, בוחרים באפשרות מופע חדש.
  4. לוחצים על Choose MySQL (בחירת MySQL).
  5. בשדה Instance ID (מזהה המופע), מזינים את הערך myinstance.
  6. בשדה סיסמה, מזינים סיסמה למשתמש root.
  7. לוחצים על Create instance.

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

  1. מורידים את MySQL Community Server לפלטפורמה שלכם מדף ההורדה של MySQL Community Server.
    שרת הקהילה כולל את לקוח MySQL.
  2. מתקינים את Community Server לפי ההוראות בדף ההורדה.

מידע נוסף על התקנת MySQL זמין במאמר Installing and Upgrading MySQL.

התקנת לקוח של שרת proxy ל-Cloud SQL Auth

קובץ ה-Cloud SQL Auth Proxy הבינארי שאתם מורידים תלוי במערכת ההפעלה שלכם, ובסוג הליבה שבה היא משתמשת (32 ביט או 64 ביט). ברוב המכשירים החדשים יותר נעשה שימוש בקרנל של 64 ביט. אם אתם לא בטוחים אם במחשב שלכם פועל ליבת 32 ביט או 64 ביט, תוכלו להשתמש בפקודה uname -a ב-Linux או ב-macOS. למידע על Windows, אפשר לעיין במאמרי העזרה של Windows.

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

אם מריצים ב-Linux או ב-Mac, אפשר למצוא את זה על ידי הרצת הפקודה הבאה:

  uname -a
  

‏Linux‏ 64 סיביות

  1. מורידים את שרת ה-proxy ל-Cloud SQL Auth:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.linux.amd64
  2. הופכים את שרת ה-proxy ל-Cloud SQL Auth לקובץ הפעלה:
    chmod +x cloud-sql-proxy

‏Linux‏ 32 סיביות

  1. מורידים את שרת ה-proxy ל-Cloud SQL Auth:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.linux.386
  2. אם הפקודה curl לא נמצאה, מריצים את הפקודה sudo apt install curl וחוזרים על פקודת ההורדה.
  3. הופכים את שרת ה-proxy ל-Cloud SQL Auth לקובץ הפעלה:
    chmod +x cloud-sql-proxy

macOS‏ 64 סיביות

  1. מורידים את שרת ה-proxy ל-Cloud SQL Auth:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.darwin.amd64
  2. הופכים את שרת ה-proxy ל-Cloud SQL Auth לקובץ הפעלה:
    chmod +x cloud-sql-proxy

Mac M1

  1. מורידים את שרת ה-proxy ל-Cloud SQL Auth:
      curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.darwin.arm64
      
  2. הופכים את שרת ה-proxy ל-Cloud SQL Auth לקובץ הפעלה:
      chmod +x cloud-sql-proxy
      

‏Windows‏ 64 סיביות

לוחצים לחיצה ימנית על https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.x64.exe ובוחרים באפשרות שמירת קישור בשם כדי להוריד את שרת ה-proxy ל-Cloud SQL Auth. משנים את שם הקובץ ל-cloud-sql-proxy.exe.

‏Windows‏ 32 סיביות

לוחצים לחיצה ימנית על https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.26.0/cloud-sql-proxy.x86.exe ובוחרים באפשרות שמירת קישור בשם כדי להוריד את שרת ה-proxy ל-Cloud SQL Auth. משנים את שם הקובץ ל-cloud-sql-proxy.exe.

קובץ אימג' של Docker לשרת proxy ל-Cloud SQL Auth

לשרת ה-proxy ל-Cloud SQL Auth יש תמונות קונטיינר שונות, כמו distroless,‏ alpine ו-buster. קובץ האימג' של קונטיינר ברירת המחדל של Cloud SQL Auth Proxy משתמש ב-distroless, שלא מכיל מעטפת. אם אתם צריכים מעטפת או כלים קשורים, אתם יכולים להוריד תמונה שמבוססת על alpine או על buster. מידע נוסף זמין במאמר תמונות קונטיינר של Cloud SQL Auth Proxy.

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

docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.26.0

מערכת הפעלה אחרת

במערכות הפעלה אחרות שלא נכללות כאן, אפשר לקמפל את שרת ה-proxy ל-Cloud SQL Auth ממקור.

קבלת שם החיבור של המכונה

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

    כניסה לדף Cloud SQL Instances

  2. לוחצים על שם המופע כדי לפתוח את הדף סקירה כללית.
  3. בקטע Connect to this instance (חיבור למופע הזה), מעתיקים את Connection name (שם החיבור). שם החיבור הוא בפורמט projectID:region:instanceID.

הפעלת שרת proxy ל-Cloud SQL Auth

מפעילים את שרת ה-proxy ל-Cloud SQL Auth בטרמינל משלו כדי לעקוב אחרי הפלט שלו. מחליפים את INSTANCE_CONNECTION_NAME בשם החיבור של המכונה שהעתקתם בשלב הקודם.

בסביבות Linux, משתמשים בפקודה הבאה כדי להפעיל את שרת ה-proxy ל-Cloud SQL Auth:

./cloud-sql-proxy INSTANCE_CONNECTION_NAME

ב-PowerShell ב-Windows, משתמשים בפקודה הזו כדי להפעיל את Cloud SQL Auth Proxy:

.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME

מופיעה הודעה דומה לזו:

Listening on 127.0.0.1:3306 for INSTANCE_CONNECTION_NAME
Ready for new connections

מריצים את הפקודה הבאה:

mysql -u root -p --host 127.0.0.1 --port 3306

בהנחיה Enter password:, מזינים את הסיסמה של חשבון משתמש Root של MySQL.

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

חוזרים לחלון הטרמינל שבו הפעלתם את שרת ה-proxy ל-Cloud SQL Auth. אמורה להופיע הודעה דומה לזו:

New connection for myInstance

הסרת המשאבים

כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה:

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

    כניסה לדף Cloud SQL Instances

  2. בוחרים את מופע myinstance כדי לפתוח את הדף פרטי המופע.
  3. בסרגל הסמלים בחלק העליון של הדף, לוחצים על מחיקה.
  4. בחלון Delete instance, מקלידים את שם המכונה ולוחצים על Delete.

שלבי ניקוי אופציונליים

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

  • ממשקי ה-API שהופעלו במדריך הזה למתחילים:
    • Cloud SQL Admin API
  1. נכנסים לדף APIs במסוף Google Cloud .

    לדף APIs

  2. בוחרים את Cloud SQL Admin API ולוחצים על הלחצן Disable API.

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