התחברות ל-Cloud SQL ל-SQL Server באמצעות Cloud SQL Auth Proxy
בדף הזה מוסבר איך להתחבר ל-Cloud SQL מסביבת בדיקה מקומית באמצעות Cloud SQL Auth Proxy. Cloud SQL Auth Proxy מספק גישה מאובטחת למכונה של Cloud SQL בלי צורך ברשתות מורשות או בהגדרת SSL. באמצעות Cloud SQL Auth Proxy, אתם יכולים להתחבר למכונה של Cloud SQL באופן מאובטח.
ההוראות בדף הזה מיועדות לסביבת בדיקה בלבד, ולא לסביבות ייצור. למידע נוסף על ההגדרות הנדרשות לסביבות ייצור, ראו שימוש ב-Cloud SQL Auth Proxy בסביבת ייצור והתחברות באמצעות Cloud SQL Auth Proxy.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloudליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
מפעילים את ממשקי ה-API הנדרשים של Google Cloud.
המסוף
נכנסים לדף APIs במסוף Google Cloud .
מפעילים את Cloud SQL Admin API.gcloud
לוחצים על הכפתור הבא כדי לפתוח את Cloud Shell, שמאפשר גישה למשאבים של Google Cloud בשורת הפקודה ישירות מהדפדפן. אפשר להשתמש ב-Cloud Shell כדי להריץ את הפקודות של
gcloudשמוצגות במדריך למתחילים הזה.מריצים את הפקודה
gcloud services enableבאמצעות Cloud Shell כדי להפעיל את ממשקי ה-API שנדרשים למדריך למתחילים הזה:gcloud services enable sqladmin.googleapis.com
הפקודה הזו מפעילה את ממשקי ה-API הבאים:
- Cloud SQL Admin API
-
צריך לוודא שיש לכם בפרויקט את התפקיד או התפקידים הבאים: אדמין ב-Cloud SQL (
roles/cloudsql.admin)בדיקת התפקידים
-
נכנסים לדף IAM במסוף Google Cloud .
כניסה לדף IAM - בוחרים את הפרויקט.
-
בעמודה Principal, מחפשים את כל השורות שמזהות אתכם או קבוצה שאתם חברים בה. כדי לברר לאילו קבוצות אתם שייכים, פנו לאדמין.
- בכל השורות שבהן אתם מופיעים, בודקים בעמודה Role אם רשימת התפקידים כוללת את התפקידים הנדרשים.
מתן התפקידים
-
נכנסים לדף IAM במסוף Google Cloud .
כניסה לדף IAM - בוחרים את הפרויקט.
- לוחצים על Grant access.
-
בשדה New principals, מזינים את מזהה המשתמש. בדרך כלל מזהה המשתמש הוא כתובת האימייל של חשבון Google.
- לוחצים על Select a role ומחפשים את התפקיד.
- כדי לתת עוד תפקידים, לוחצים על Add another role ומוסיפים אותם.
- לוחצים על Save.
-
- מתקינים ומפעילים את ה-CLI של gcloud.
יצירת מכונה של Cloud SQL
במדריך למתחילים הזה משתמשים במסוף Google Cloud . כדי להשתמש ב-CLI של gcloud, ב-curl או ב-PowerShell, קראו את המאמר יצירת מכונות.
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- לוחצים על Create instance.
- בתפריט Create instance, בוחרים באפשרות New instance.
- לוחצים על Choose SQL Server.
- בשדה Instance ID, מזינים את הערך
myinstance. - בשדה Password, מזינים סיסמה למשתמש
sqlserver. לוחצים על Create instance.
חוזרים לרשימת המכונות. אתם יכולים ללחוץ על המכונה החדשה מיד כדי לראות את הפרטים, אבל היא לא תהיה זמינה לפעולות אחרות עד שהיא תופעל ותתחיל לפעול.
Debian/Ubuntu
ב-Debian/Ubuntu, מתקינים את כלי שורת הפקודה הרלוונטיים של SQL Server באמצעות ההוראות האלה.
CentOS/RHEL
ב-CentOS/RHEL, מתקינים את כלי שורת הפקודה הרלוונטיים של SQL Server באמצעות ההוראות האלה.
openSUSE
ב-openSUSE, מתקינים את כלי שורת הפקודה הרלוונטיים של SQL Server באמצעות ההוראות האלה.
פלטפורמות אחרות
בדף הנחיתה להתקנת SQL Server ובדף ההורדות של SQL Server.
התקנת הלקוח של Cloud SQL Auth Proxy
להתקנה, ראו התקנת Cloud SQL Auth Proxy.
איך מקבלים את שם החיבור של המכונה
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- לוחצים על שם המכונה כדי לפתוח את הדף Overview שלה.
- בקטע Connect to this instance, מעתיקים את הערך של Connection name. שם החיבור הוא בפורמט
projectID:region:instanceID.
הפעלת Cloud SQL Auth Proxy
Cloud SQL Auth Proxy משתמש ב-Application Default Credentials (ADC) כדי לאמת את Google Cloud. מידע נוסף מופיע במאמר אפשרויות לאימות של Cloud SQL Auth Proxy.
כדי לאמת את Cloud SQL Auth Proxy באמצעות פרטי כניסה לחשבון המשתמש, מריצים את הפקודה הבאה:
gcloud auth application-default login
מפעילים את Cloud SQL Auth Proxy בטרמינל משלו כדי שתוכלו לעקוב אחרי הפלט שלו. מחליפים את INSTANCE_CONNECTION_NAME בשם החיבור של המכונה שהעתקתם בשלב הקודם.
בסביבות Linux או macOS, משתמשים בפקודה הזו כדי להפעיל את Cloud SQL Auth Proxy:
./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:1433 for INSTANCE_CONNECTION_NAME Ready for new connections
מריצים את הפקודה הבאה, ומחליפים את USER_NAME בשם המשתמש שלכם ב-SQL Server.
sqlcmd -S 127.0.0.1 -U USER_NAME
חוזרים לחלון הטרמינל שבו הפעלתם את Cloud SQL Auth Proxy. אמורה להופיע הודעה דומה לזו:
New connection for myInstance
הסרת המשאבים
כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה:
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- בוחרים את המכונה
myinstanceכדי לפתוח את הדף Instance details. - בסרגל הסמלים שבחלק העליון של הדף, לוחצים על מחיקה.
- בחלון Delete instance, מקלידים את שם המכונה ולוחצים על Delete.
שלבי ניקוי אופציונליים
אם אתם לא משתמשים בממשקי ה-API שהופעלו כחלק מהמדריך למתחילים, אתם יכולים להשבית אותם.
- ממשקי ה-API שהופעלו במדריך למתחילים הזה:
- Cloud SQL Admin API
נכנסים לדף APIs במסוף Google Cloud .
בוחרים את Cloud SQL Admin API ולוחצים על הלחצן Disable API.