אפשר להשתמש בלקוח שורת הפקודה של PostgreSQL כדי להתחבר ל-Cloud SQL. בדף הזה מוסבר איך לחבר
לקוח psql למכונת Cloud SQL, בין אם הוא פועל באופן מקומי במחשב הלקוח, במכונה וירטואלית של Compute Engine או ב-Cloud Shell.
לפני שמתחילים
כדי להשתמש בלקוח psql כדי להתחבר למופע Cloud SQL, צריך לבצע את הפעולות הבאות:
-
יצירת מכונה של Cloud SQL, כולל הגדרת משתמש ברירת המחדל.
אפשר לעיין במאמרים בנושא יצירת מכונות וירטואליות והגדרת הסיסמה לחשבון המשתמש שמוגדר כברירת מחדל.
אפשרות נוספת היא ליצור מכונת VM ב-Compute Engine ואז להתחבר למכונה באמצעות SSH.
אפשר לעיין במאמרים יצירה והפעלה של מופע של מכונה וירטואלית, מידע על חיבורי SSH או חיבור למכונות וירטואליות של Windows באמצעות RDP.
מחליטים איך להתחבר למופע.
במאמר מידע על אפשרויות קישור מוסבר על אפשרויות הקישור ואיך לבחור מביניהן.
שימוש בלקוח PostgreSQL במחשב מקומי או במכונה וירטואלית ב-Compute Engine
כדי להשתמש בpsql לקוח כדי להתחבר למכונה שלכם ב-Cloud SQL, צריך לבצע שלוש משימות ברמה גבוהה:
התקנת הלקוח
כדי להתקין את לקוח psql:
Debian/Ubuntu
מתקינים את לקוח psql ממנהל החבילות:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
מתקינים את לקוח psql ממנהל החבילות:
sudo yum install postgresql
openSUSE
מתקינים את לקוח psql ממנהל החבילות:
sudo zypper install postgresql
פלטפורמות אחרות
- מורידים את PostgreSQL Core Distribution לפלטפורמה שלכם מדף ההורדות של PostgreSQL.
ההפצה המרכזית כוללת את לקוח psql. - מתקינים את מסד הנתונים של PostgreSQL לפי ההוראות בדף ההורדה.
הגדרת גישה למכונה של Cloud SQL
כדי להגדיר גישה למופע:
- במכונת הלקוח או במכונה וירטואלית ב-Compute Engine, משתמשים בWhat's my IP כדי לראות את כתובת ה-IP של מכונת הלקוח.
- מעתיקים את כתובת ה-IP.
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות Connections (קישורים).
- בוחרים בכרטיסייה Networking.
- בקטע Authorized networks לוחצים על Add network ומזינים את כתובת ה-IP של המחשב שבו מותקן הלקוח.
- לוחצים על סיום. לוחצים על שמירה בתחתית הדף כדי לשמור את השינויים.
- מתחברים למופע, באמצעות SSL/TLS או ללא הצפנה (ללא שימוש ב-SSL/TLS).
חיבור למכונה של Cloud SQL ללא הצפנה
כדי לאפשר לכם להתחבר ללא הצפנה, במכונה צריך להגדיר את מצב SSL לערך ALLOW_UNENCRYPTED_AND_ENCRYPTED. במסוף Google Cloud , ההגדרה המקבילה היא Allow unencrypted network traffic (התרת תנועת רשת לא מוצפנת).
מידע נוסף על הגדרת SSL/TLS במופע זמין במאמר בנושא הגדרת אישורי SSL/TLS.
כדי להתחבר למופע:
- מוודאים שהתקנתם את הלקוח והגדרתם גישה למופע.
- מפעילים את לקוח
psql:psql "sslmode=disable dbname=postgres user=postgres hostaddr=INSTANCE_IP_ADDRESS"
- הזן סיסמה.
- מופיעה ההנחיה של psql.
התחברות למכונה של Cloud SQL באמצעות SSL/TLS
כדי להתחבר למופע באמצעות SSL/TLS ואימות מובנה:
- מפעילים את לקוח
psql:psql "sslmode=require \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
לדוגמה:
psql "sslmode=require \ hostaddr=203.12.34.56 \ user=postgres dbname=postgres"אפשר גם ליצור קובץ שירות חיבור כדי לנהל את פרמטרי החיבור, במיוחד אם מתחברים ליותר ממופע אחד. מידע נוסף זמין ב מסמכי העזרה של PostgreSQL.
- מזינים את הסיסמה. הסיסמה היא חובה ב-Cloud SQL, גם אם PostgreSQL תומך בקישוריות ללא סיסמה בזמן השימוש ב-SSL/TLS.
- כדי לוודא שהחיבור מוצפן, מחפשים את הצופן בפרטי החיבור:
SSL connection (cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128)
התחברות למכונת Cloud SQL באמצעות SSL/TLS ואימות אישור לקוח
אם ssl_mode במכונת Cloud SQL שלכם מוגדר ל-TRUSTED_CLIENT_CERTIFICATE_REQUIRED, אתם צריכים לספק גם זהות לקוח מאומתת כשאתם מתחברים.
כדי להתחבר באמצעות אישורי SSL/TLS עם אימות לקוח, צריך את הדברים הבאים:
- אישור של מפתח ציבורי של לקוח בקובץ client-cert.pem.
- מפתח פרטי של לקוח בקובץ client-key.pem.
בנוסף, כדי לאפשר ללקוח לאמת את זהות השרת לצורך אימות הדדי, צריך לציין את אישור השרת server-ca.pem.
לדוגמה, כדי להפעיל את לקוחpsql:
psql "sslmode=verify-ca sslrootcert=server-ca.pem \ sslcert=client-cert.pem sslkey=client-key.pem \ hostaddr=INSTANCE_IP_ADDRESS \ user=postgres dbname=DB_NAME"
אם אין לכם אישור לקוח ומפתח פרטי תואם, אתם צריכים ליצור אישור לקוח חדש.
שימוש בלקוח ב-Cloud Shell
כדי להתחבר למכונה של Cloud SQL (רק כתובת IP ציבורית):
- נכנסים למסוף Google Cloud .
- לוחצים על סמל Cloud Shell
בצד שמאל של סרגל הכלים.
תהליך האתחול של Cloud Shell נמשך כמה רגעים.
- בשורת הפקודה של Cloud Shell, משתמשים בלקוח המובנה כדי להתחבר למכונה של Cloud SQL:
gcloud sql connect INSTANCE_ID \ --user=postgres
- הזן סיסמה.
הפקודה gcloud sql connect לא תומכת בחיבור למכונת Cloud SQL באמצעות כתובת IP פרטית או באמצעות SSL/TLS. כדי להתחבר עם הצפנה, מתקינים את ה-proxy ומשתמשים בו ב-Cloud Shell:
- מתקינים את ה-Proxy (Linux 64-bit) בספרייה
/home/USER. - מפעילים את ה-proxy באמצעות אימות של ה-CLI של gcloud:
./cloud-sql-proxy INSTANCE_CONNECTION_NAME &
- מתחברים למסד הנתונים באמצעות חיבור TCP:
psql -U USERNAME --host=127.0.0.1
המאמרים הבאים
- מידע על הגדרת מכונה עם כתובת IP פרטית
- אפשרויות לחיבור המכונה לאפליקציה
- מידע על אופן הפעולה של לקוח
psqlעם SSL
נסו בעצמכם
אנחנו ממליצים למשתמשים חדשים ב-Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של Cloud SQL בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300 $להרצה, לבדיקה ולפריסה של עומסי העבודה.
להתנסות ב-Cloud SQL בחינם