אפשר להרחיב את PostgreSQL על ידי איגוד אובייקטים של SQL לחבילה ושימוש בהם כיחידה אחת. בדף הזה מוסבר איך להגדיר את התוספים של PostgreSQL שנתמכים ב-Cloud SQL.
שימוש בתוספים ל-PostgreSQL
אפשר להתקין רק את התוספים ש-Cloud SQL תומך בהם. מידע נוסף זמין במאמר בנושא תוספים ל-PostgreSQL שנתמכים על ידי Cloud SQL.
התקנה של תוסף
לפני שמשתמשים בתוסף, צריך להתקין אותו:
- בכלי psql, מריצים את הפקודה CREATE EXTENSION.
דרישה להרשאות של משתמש-על
ב-Cloud SQL, רק משתמשים ששייכים לתפקיד cloudsqlsuperuser יכולים ליצור תוספים. כשיוצרים מופע חדש של PostgreSQL, נוצר בשבילכם משתמש ברירת המחדל postgres (אבל אתם צריכים להגדיר את הסיסמה של המשתמש). משתמש ברירת המחדל postgres הוא חלק מהתפקיד cloudsqlsuperuser. מידע נוסף זמין במאמר בנושא משתמשי PostgreSQL.
חיבורים בין מסדי נתונים
מכונות היעד לחיבורים צריכות להיות באותה רשת VPC כמו המכונה שממנה מתבצע החיבור.
במקרים של מופעי אשכולות, אי אפשר לבחור באפשרות Require trusted client certificates (נדרשים אישורי לקוח מהימנים) במסוףCloud de Confiance .
בנוסף, כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח ל-localhost או ל-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע שלכם במסוף Cloud de Confiance .
בקשת תמיכה בתוסף חדש
אי אפשר ליצור תוספים משלכם ב-Cloud SQL.
כדי לבקש תמיכה בתוסף, לוחצים על +1 בבעיה הפתוחה או יוצרים בעיה חדשה. רשימת הבעיות הפתוחות בנושא Cloud SQL ומידע על יצירת בעיות חדשות זמינים במאמר איך מחפשים או יוצרים דיווחים על בעיות ואיך שולחים בקשות למאפיינים חדשים לפי מוצר.
תוספי PostgreSQL שנתמכים על ידי Cloud SQL
בטבלאות שבהמשך מופיעים קישורים לתיעוד שבו אפשר לקבל מידע על שימוש בתוסף ספציפי.
התמיכה בתוספים של PostgreSQL ב-Cloud SQL מתחלקת לקטגוריות הבאות:
PostGIS
התוסף PostGIS נתמך ב-Cloud SQL ל-PostgreSQL בכל הגרסאות העיקריות.
בטבלה הבאה מפורטות הגרסאות של תוסף PostGIS לכל גרסה של Cloud SQL ל-PostgreSQL:
| גרסה של Cloud SQL ל-PostgreSQL | תוסף PostGIS |
| PostgreSQL 9.6 | 3.2.5 |
| PostgreSQL 10 | 3.2.5 |
| PostgreSQL 11 | 3.2.5 |
| PostgreSQL 12 | 3.4.4 |
| PostgreSQL 13 | 3.5.2 |
| PostgreSQL 14 | 3.5.2 |
| PostgreSQL 15 | 3.5.2 |
| PostgreSQL 16 | 3.5.2 |
| PostgreSQL 17 | 3.5.2 |
בפקודה CREATE EXTENSION, אפשר לציין גרסה של תוסף PostGIS באמצעות התנאי VERSION, עבור גרסה ראשית ספציפית של PostgreSQL.
התוסף PostGIS כולל את הפריטים הבאים:
postgispostgis_rasterpostgis_sfcgalpostgis_tiger_geocoderpostgis_topologyaddress_standardizeraddress_standardizer_data_us
מידע נוסף זמין במאמר בנושא התקנת PostGIS.
בנוסף, Cloud SQL ל-PostgreSQL כולל את גרסה 3.6.2 של התוסף pgRouting, שמרחיב את PostGIS.
התוסף pgRouting משפר את העיבוד הגיאו-מרחבי באמצעות ניתוח וניתוב ברשת.
אפשר לשדרג את PostGIS ואת התוספים שקשורים אליו לגרסה האחרונה באופן ידני. מידע נוסף על שדרוג תוספי PostGIS זמין במאמר שדרוג PostGIS.
הרחבות של סוגי נתונים
| תוסף | תיאור |
| btree_gin | מספק מחלקות לדוגמה של אופרטורים של GIN שמטמיעות התנהגות שוות ערך של B-tree. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.0. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 1.3. |
| btree_gist | מספק מחלקות אופרטורים של אינדקס GiST שמטמיעות התנהגות שוות ערך של עץ B. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 10, 11, 12 ו-13 נעשה שימוש בגרסה 1.5. ב-PostgreSQL 14 נעשה שימוש בגרסה 1.6. ב-PostgreSQL 15, 16 ו-17 נעשה שימוש בגרסה 1.7. PostgreSQL 18 משתמש בגרסה 1.8. |
| chkpass | המערכת מטמיעה סוג נתונים chkpass שמיועד לאחסון סיסמאות מוצפנות. ב-PostgreSQL בגרסאות 9.6 ו-10 נעשה שימוש בגרסה 1.0. לא אפשרי בגרסאות אחרות. |
| citext | מספק סוג מחרוזת תווים לא תלוי-רישיות citext.ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. ב-PostgreSQL בגרסאות 12, 13, 14, 15, 16 ו-17 נעשה שימוש בגרסה 1.6. PostgreSQL 18 משתמש בגרסה 1.8. |
| cube | מטמיע סוג נתונים cube לייצוג קוביות רב-ממדיות.ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.2. PostgreSQL 11 משתמש בגרסה 1.3. ב-PostgreSQL 12 ו-13 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.5. |
| hstore | מטמיעה את סוג הנתונים hstore לאחסון של קבוצות של צמדי מפתח/ערך בתוך ערך PostgreSQL יחיד.ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. ב-PostgreSQL 12 נעשה שימוש בגרסה 1.6. ב-PostgreSQL 13 נעשה שימוש בגרסה 1.7. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.8. |
| ip4r | מספק סוגי נתונים לכתובות IPv4/v6 ולטווח כתובות, וגם תמיכה באינדקס. Cloud SQL ל-PostgreSQL משתמש בגרסה 2.4.2. |
| isn | מספק סוגי נתונים לחלק מהתקנים הבינלאומיים למספור מוצרים. ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.1. ב-PostgreSQL בגרסאות 11, 12, 13, 14, 15, 16 ו-17 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.3. |
| lo | תמיכה בניהול אובייקטים גדולים (שנקראים גם LO או BLOB). Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1. |
| ltree | מיישמת סוג נתונים ltree לייצוג תוויות של נתונים שאוחסנו במבנה היררכי דמוי עץ. ב-PostgreSQL 9.6, 10, 11 ו-12 נעשה שימוש בגרסה 1.1. ב-PostgreSQL בגרסאות 13, 14, 15 ו-16 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 17 נעשה שימוש בגרסה 1.3. |
| postgresql-hll | הוספנו סוג נתונים חדש, hll, שהוא מבנה נתונים של HyperLogLog. אפשר לעיין גם בpostgresql-hll במסמך הזה.Cloud SQL ל-PostgreSQL משתמש בגרסה 2.18. |
| prefix | הוא מספק התאמה של תחיליות ותמיכה באינדקס. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.0. |
תוספים לשפה
| תוסף | תיאור |
| plpgsql | שפה פרוצדורלית שאפשר לטעון כדי ליצור פונקציות, פרוצדורות וטריגרים. אפשר גם להשתמש בשפה הזו להרצה ישירה של קוד בבלוקים של DO. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| plv8 | מספק שפה פרוצדורלית להפעלת JavaScript. Cloud SQL ל-PostgreSQL משתמש בגרסה 3.2.2, שמשתמשת בתורה במנוע V8 של JavaScript בגרסה 11.5. |
תוספים שונים
| תוסף | תיאור |
| amcheck | הפונקציות האלה מאפשרות לבדוק את העקביות הלוגית של מבנה היחסים, וכך אפליקציית pg_amcheck יכולה לבדוק אם יש נתונים פגומים. |
| auto_explain | ההגדרה מאפשרת רישום אוטומטי ביומן של תוכניות ביצוע של הצהרות איטיות, לצורך פתרון בעיות ועוד. מספק דרך אוטומטית לבצע את הפונקציונליות של הפקודה EXPLAIN. אפשר לעיין גם בauto_explain במסמך הזה. |
| autoinc | מספק פונקציות להגדלת שדות באופן אוטומטי. הטריגר הזה מאחסן את הערך הבא של רצף בשדה מספר שלם. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| bloom | מספק שיטה לגישה לאינדקסים שמבוססים על מסנני בלום. מסנן בלום הוא מבנה נתונים שחוסך מקום, ואפשר להשתמש בו כדי לבדוק אם רכיב מסוים הוא חלק מקבוצה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| dblink | מספק פונקציות לקישור למסדי נתונים של PostgreSQL מתוך סשן של מסד נתונים. אפשר גם לעיין ב
dblink במסמך הזה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2. |
| decoderbufs | מפענח לוגי של PostgreSQL שמעביר נתוני פלט כ-Protocol Buffers, מותאם ל-Debezium. |
| dict_int | תבנית מילון של תוסף לחיפוש טקסט מלא ששולטת באינדוקס של מספרים שלמים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| earthdistance | הפונקציה מספקת שתי גישות לחישוב מרחקי מעגל גדול על פני כדור הארץ. ב-PostgreSQL בגרסאות 9.6, 10, 11, 12, 13, 14, 15 ו-16 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 17 ו-18 נעשה שימוש בגרסה 1.2. |
| fuzzystrmatch | מספקת כמה פונקציות לקביעת הדמיון והמרחק בין מחרוזות. ב-PostgreSQL בגרסאות 9.6, 10, 11, 12, 13, 14 ו-15 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 16 ואילך נעשה שימוש בגרסה 1.2 |
| google_ml_integration | יוצר הטבעות וקטוריות כדי לתרגם הנחיות טקסט לווקטורים מספריים באמצעות מודל שפה גדול (LLM). ב-PostgreSQL 12 ואילך נעשה שימוש בגרסה 1.4.3. לא אפשרי בגרסאות אחרות. |
| insert_username | מספק פונקציות לאחסון השם של המשתמש הנוכחי בשדה טקסט. אפשר להשתמש בזה כדי לעקוב אחרי מי שינה לאחרונה שורה בטבלת מסד נתונים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| intagg | מספק אגרגטור של מספרים שלמים ומונה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1. |
| intarray | הפונקציות והאופרטורים האלה מאפשרים לבצע מניפולציות במערכים של מספרים שלמים שלא מכילים ערכי null, ולבצע בהם חיפושים לפי אינדקס. ב-PostgreSQL 9.6, 10, 11 ו-12 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 13 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.5. |
| moddatetime | מספקת פונקציות לאחסון השעה הנוכחית בשדה timestamp. אפשר להשתמש בזה כדי לעקוב אחרי הפעם האחרונה שבה שורה בטבלת מסד נתונים משתנה.Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| oracle_fdw | מספקת עטיפת נתונים חיצוניים (fdw) לגישה קלה ויעילה למסדי נתונים של Oracle. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2. אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע שלכם ב-Cloud SQL, אתם צריכים להפעיל קישוריות יוצאת של Private Service Connect כדי להשתמש בתוסף הזה. |
| orafce | מספק פונקציות ואופרטורים שמדמים קבוצת משנה של פונקציות וחבילות ממסד נתונים של Oracle. אפשר להשתמש בפונקציות האלה כדי להעביר אפליקציות של Oracle ל-PostgreSQL. ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 3.25. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 4.13. |
| pageinspect | בודק את התוכן של דפי מסד נתונים ברמה נמוכה. אפשר גם לעיין בpageinspect במסמך הזה. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.5. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.6. ב-PostgreSQL 11 ו-12 נעשה שימוש בגרסה 1.7. ב-PostgreSQL 13 ו-14 נעשה שימוש בגרסה 1.8. ב-PostgreSQL 15 נעשה שימוש בגרסה 1.11. ב-PostgreSQL 16 ו-17 נעשה שימוש בגרסה 1.12. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.13. |
| pgAudit | איסוף נתוני ביקורת.
הערכים האפשריים להגדרה של קובצי יומן הביקורת לכל הגרסאות של pgAudit הם למידע נוסף על השימוש בתוסף הזה עם Cloud SQL, אפשר לעיין במאמר ביקורת ב-PostgreSQL באמצעות pgAudit. |
| pg_background | מאפשר להריץ פקודות שרירותיות ב-worker ברקע. ב-PostgreSQL 17 ובגרסאות קודמות נעשה שימוש בגרסה 1.3. PostgreSQL 18 משתמש בגרסה 1.4. |
| pg_bigm | מאפשרת חיפוש טקסט מלא, ומאפשרת אינדקס של שני גרמים (ביגרם) לחיפוש טקסט מלא מהיר יותר. אפשר לעיין גם ב-pg_bigm במסמך הזה. |
| pg_buffercache | הכלי מאפשר לבדוק בזמן אמת מה קורה במאגר המשותף של
הנתונים במטמון. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.2. ב-PostgreSQL בגרסאות 10, 11, 12, 13, 14 ו-15 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 16 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 17 ואילך נעשה שימוש בגרסה 1.5. |
| pg_cron | מספק מתזמן משימות מבוסס-cron. התוסף הזה מאפשר להשתמש בתחביר cron כדי לתזמן פקודות PostgreSQL ישירות ממסד הנתונים. מידע נוסף על התוסף זמין בקטע pg_cron במסמך הזה. ב-PostgreSQL בגרסה 10 ואילך נעשה שימוש בגרסה 1.6.4. |
| pgcrypto | מספק פונקציות קריפטוגרפיות ל-PostgreSQL. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3. |
| pglogical | מספקת שכפול לוגי ל-PostgreSQL. מידע נוסף זמין במאמר בנושא
הגדרה של שכפול לוגי ופענוח. ב-PostgreSQL 17 ובגרסאות קודמות נעשה שימוש בגרסה 2.4.5. PostgreSQL 18 משתמש בגרסה 2.4.6. |
| pgfincore | קבוצה של פונקציות לניהול דפים בזיכרון המטמון של הדיסק במערכת ההפעלה מ-PostgreSQL. מידע נוסף מופיע בקטע pgfincore במסמך הזה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3.1. |
| pg_freespacemap | בודק את מפת השטח הפנוי (FSM).
אפשר לעיין גם ב-pg_freespacemap במסמך הזה. ב-PostgreSQL 17 ובגרסאות קודמות נעשה שימוש בגרסה 1.2. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.3. |
| pg_hint_plan | התכונה הזו מאפשרת לשפר את תוכניות ההפעלה של PostgreSQL באמצעות רמזים, שהם תיאורים פשוטים בתגובות של SQL. אפשר לעיין גם בpg_hint_plan במסמך הזה. |
| pgoutput | התוסף הזה משמש שכפול לוגי לסימון נתונים שהשתנו (CDC).
pgoutput הוא תוסף ברירת מחדל ולכן הוא נתמך בכל הגרסאות של Cloud SQL ל-PostgreSQL.
|
| pg_ivm | מאפשרת לכם לעדכן תצוגות חומריות שבהן מחושבים ומיושמים רק שינויים מצטברים בתצוגות, במקום לחשב מחדש את התוכן מאפס. ב-PostgreSQL בגרסה 13 ואילך יש תמיכה בגרסה 1.9. |
| pg_partman | מאפשר ליצור ולנהל קבוצות של מחיצות בטבלה שמבוססות על זמן ועל סדר. מידע נוסף זמין גם בקטע pg_partman במאמר הזה. ב-PostgreSQL בגרסה 14 ואילך יש תמיכה בגרסה 5.2.4, ואילו בגרסאות קודמות של PostgreSQL יש תמיכה רק עד גרסה 4.7.4. |
| pg_prewarm | מספק דרך נוחה לטעון נתונים יחסיים למטמון של מערכת ההפעלה או למטמון של PostgreSQL. ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 1.2. |
| plpgsql_check | כלי Linter לניתוח סטטי של PL/pgSQL, שפת הפרוצדורות המאוחסנות המקורית ב-PostgreSQL. Cloud SQL ל-PostgreSQL משתמש בגרסה 2.8. התוסף הזה נתמך ב-PostgreSQL מגרסה 14 ואילך. |
| pg_proctab | מאפשר להשתמש ב-pg_top עם Cloud SQL ל-PostgreSQL, וליצור דוחות מטבלת התהליכים של מערכת ההפעלה. אפשר לעיין גם בpg_proctab במסמך הזה. |
| pg_repack | מאפשרת להסיר נתונים מיותרים מטבלאות ומאינדקסים.
אופציונלי, מאפשר לבצע CLUSTER באינטרנט (לסדר טבלאות לפי אינדקס של אשכול). אפשר לעיין גם בקטע pg_repack במאמר הזה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.5.0. |
| pg_roaringbitmap | התוסף pg_roaringbitmap מציג סוג נתונים של מפת סיביות (bitmap) שמאפשר אחסון יעיל מאוד ופעולות מהירות על קבוצות גדולות של מספרים שלמים. הוא מאחסן מספרים שלמים באופן דינמי בצורות דחוסות (מערכים, מפות סיביות או קונטיינרים של רצפים) על סמך הצפיפות שלהם, וכך מצמצם באופן משמעותי את נפח האחסון ומאיץ פעולות נפוצות כמו איחוד, חיתוך וחישובים של עוצמת קבוצה.זמין ב-PostgreSQL מגרסה 12 ואילך. Cloud SQL ל-PostgreSQL משתמש בגרסה 0.5 של pg_roaringbitmap. |
| pgrowlocks | מחזירה מידע על נעילת שורות בטבלה שצוינה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2. |
| pgstattuple | מספקת פונקציות שונות לקבלת נתונים סטטיסטיים ברמת ה-tuple. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.4. בכל שאר הגרסאות נעשה שימוש בגרסה 1.5. |
| pg_similarity | תמיכה בשאילתות דמיון ב-PostgreSQL. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| pg_squeeze | הפונקציה מסירה מטבלה רווחים שלא נעשה בהם שימוש, ויש לה אפשרות להשתמש באינדקס כדי למיין רשומות או שורות (טפלים) של הטבלה. מידע נוסף על התוסף הזה זמין במאמר הזה בקטע pg_squeeze. ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. PostgreSQL 12, 13, 14, 15, 16 ו-17 משתמשים בגרסה 1.8. PostgreSQL 18 משתמש בגרסה 1.9. |
| pg_stat_statements | האפשרות הזו מספקת אמצעי למעקב אחרי נתוני הביצוע של כל הצהרות ה-SQL שבוצעו. ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.4. PostgreSQL 10 ו-11 משתמשות בגרסה 1.6. PostgreSQL 12 משתמש ב-1.7. PostgreSQL 13 משתמש ב-1.8. PostgreSQL 14 משתמש ב-1.9. ב-PostgreSQL 15 ו-16 נעשה שימוש ב-1.10. PostgreSQL 17 משתמש ב-1.11. PostgreSQL 18 משתמש ב-1.12. |
| pgTAP | מספק מסגרת לבדיקות יחידה ל-PostgreSQL, שנכתבה ב-PL/pgSQL
וב-PL/SQL. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3.0. |
| pg_trgm | הפונקציות והאופרטורים שמוגדרים במודול הזה מאפשרים לקבוע את הדמיון של טקסט אלפאנומרי על סמך התאמה של טריגרמות, וגם להשתמש במחלקות של אופרטורים של אינדקסים שתומכות בחיפוש מהיר של מחרוזות דומות. ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 11 ו-12 נעשה שימוש בגרסה 1.4. PostgreSQL 13 משתמש ב-1.5. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.6. |
| pgtt | יוצר ומנהל טבלאות זמניות גלובליות בסגנון DB2 או Oracle במסד נתונים של PostgreSQL. |
| pgvector |
תוסף בקוד פתוח לאחסון ולהוספה של הטבעות וקטוריות במסדי נתונים של PostgreSQL. |
| pg_visibility | הדוח מאפשר לבדוק את מפת החשיפה (VM) ואת מידע החשיפה ברמת הדף של טבלה. אפשר לעיין גם בpg_visibility במסמך הזה. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2. |
| pg_wait_sampling | איסוף נתונים סטטיסטיים של דגימה של אירועי המתנה, ומתן נתוני אירועי המתנה לתהליכים בשרתים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.5. |
| PL/Proxy | פונקציית handler של שפה פרוצדורלית שמאפשרת קריאות לפרוצדורות מרוחקות בין מסדי נתונים של PostgreSQL, עם אפשרות לשיתוף.
אפשר לעיין גם בקטע PL/Proxy במסמך הזה. Cloud SQL ל-PostgreSQL משתמש בגרסה 2.11.0. |
| postgres_fdw | מאפשר ליצור עטיפות נתונים חיצוניות בתוך מופעים או בין מופעים. אפשר לעיין גם ב-postgres_fdw במסמך הזה. ב-PostgreSQL בגרסאות 9.6, 10, 11, 12 ו-13 נעשה שימוש בגרסה 1.0. ב-PostgreSQL בגרסה 14 ואילך נעשה שימוש בגרסה 1.1. |
| postgresql_anonymizer | מטשטש או מחליף פרטים אישיים מזהים (PII) או נתונים רגישים ממסד נתונים של PostgreSQL. מידע נוסף זמין בקטע postgresql_anonymizer. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.0. |
| postgresql_hll | מספק מבנה נתונים של HyperLogLog ( Cloud SQL ל-PostgreSQL משתמש בגרסה 2.18. |
| rdkit | אוסף של תוכנות לכימואינפורמטיקה ולמידת מכונה. אתם יכולים להשתמש בתוסף הזה כדי להשוות מבנים מולקולריים, לשנות אותם ולזהות אותם.
Cloud SQL ל-PostgreSQL משתמש בגרסה 4.6.1. |
| refint | כולל פונקציות לבדיקת אילוצים של מפתח זר, הטבלה המפנה והטבלה שאליה מתבצעת ההפניה. התוסף הזה מדגים גם את ממשק התכנות של השרת (SPI). Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| sslinfo | הוא מספק מידע על אישור ה-SSL שהלקוח הנוכחי סיפק כשהוא התחבר למופע. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2. |
| tablefunc | כוללת פונקציות שונות שמחזירות טבלאות (כמה שורות). Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| tcn | מספק פונקציית טריגר ששולחת התראות למאזינים על שינויים בתוכן של טבלאות במסד נתונים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| tds_fdw | מספקת עטיפת נתונים חיצוניים (fdw) לגישה למסדי נתונים, כמו Microsoft SQL Server ו-Sybase, שמשתמשים בפרוטוקול Tabular Data Stream (TDS). Cloud SQL ל-PostgreSQL משתמש בגרסה 2.0.4. לקוח Postgres יכול להתחבר למקור שרת SQL באמצעות הצפנת SSL. עם זאת, אימות אישור השרת לא נאכף. |
| temporal_tables | תמיכה בטבלאות זמניות. בטבלה זמנית מתועד פרק הזמן שבו שורה תקפה מנקודת המבט של מסד הנתונים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.2. |
| tsm_system_rows | הפונקציה מספקת את שיטת הדגימה של הטבלה SYSTEM_ROWS, שאפשר להשתמש בה בפסקה TABLESAMPLE של פקודת SELECT. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| tsm_system_time | מספקת את שיטת הדגימה של הטבלה SYSTEM_TIME, שאפשר להשתמש בה בפסקה TABLESAMPLE של פקודת SELECT. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0. |
| unaccent | מילון לחיפוש טקסט שמסיר סימני הטעמה (סימנים דיאקריטיים) מלקסמות. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1. |
| uuid-ossp | מספק פונקציות ליצירת מזהים ייחודיים אוניברסליים (UUID) באמצעות אחד מכמה אלגוריתמים סטנדרטיים. Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1. |
מידע נוסף על חלק מהתוספים של PostgreSQL
בקטע הזה מפורט מידע נוסף על חלק מההרחבות של PostgreSQL שמופיעות בטבלאות שלמעלה.
auto_explain
כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_auto_explain ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
כדי לראות את הנתונים והאירועים ביומן שמשויכים ליומנים של תוכניות ההרצה שהתוסף הזה מאפשר, אפשר לעיין במסמכי התיעוד של Cloud Logging.
לחלופין, אם למשתמש יש רק את התפקיד cloudsqlsuperuser, אפשר להשתמש בפקודה load כדי לטעון את התוסף הזה לסשן אחד.
dblink
במהלך סשן במסד נתונים, אפשר להשתמש בתוסף הזה כדי להתחבר למסדי נתונים של PostgreSQL ולהריץ שאילתות.
בשלב הזה, התוסף הזה פועל בשתי מכונות עם כתובות IP פרטיות של Cloud SQL באותה רשת VPC, או במסדי נתונים שונים באותה מכונה.
מידע נוסף זמין במאמר dblink במסמכי התיעוד של PostgreSQL.
שימוש ב-dblink כדי להתחבר באמצעות סיסמה
כדי להתחבר למסדי נתונים, או להתחבר לאותו מופע כמו משתמש אחר, צריך לציין סיסמה. לדוגמה (אבל לא למטרות ייצור), הנה קטע קוד:
SELECT * FROM dblink (
'dbname=name port=1234 host=host user=user password=password',
'select id, name from table' \
) AS t(id int, name text);
לחלופין, כדי להגדיר רק חיבור, הנה קטע קוד לדוגמה (לא לשימוש בסביבת ייצור):
SELECT dblink_connect('dbname=dblinktest user=postgres host=name_or_ip password=xxx');
שימוש ב-dblink כדי להתחבר בלי סיסמה
כדי להתחבר לאותו מופע כאותו משתמש, אפשר להתחבר בלי סיסמה. לדוגמה:
מגדירים את הדגל הבא של מסד הנתונים כדי להפעיל חיבורים מקומיים ללא סיסמה
cloudsql.allow_passwordless_local_connectionsהתחברות בלי לציין מארח, מה שאומר התחברות לאותו מופע. לדוגמה:
SELECT * FROM dblink('dbname=finance user=alice', 'select income from revenue') AS revenue(income integer);התוצאה יכולה להיראות כך:
income -------- 1000 (1 row)
כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח ל-localhost או ל-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע במסוף Cloud de Confiance .
אפשר לעיין גם בpostgres_fdw וב-PL/Proxy במסמך הזה.
pageinspect
התוסף הזה בודק את התוכן של דפי מסד נתונים ברמה נמוכה. מידע נוסף זמין במאמר pageinspect במאמרי העזרה של PostgreSQL.
pg_bigm
התוסף הזה מאפשר חיפוש טקסט מלא, וכולל אינדקס של שני גרמים (ביגרם) לחיפוש מהיר יותר של טקסט מלא.
כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_pg_bigm ל-on. יש תמיכה גם בדגלים הבאים:
pg_bigm.enable_recheckpg_bigm.gin_key_limitpg_bigm.similarity_limit
מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
pg_cron
כדי להתחיל להשתמש ב-pg_cron במופע, מגדירים את הדגל cloudsql.enable_pg_cron לערך on. מידע על הגדרת דגלים ועל הדגלים הנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
העבודות מוגדרות כעובדים ברקע, ולכן יכול להיות שתצטרכו להשתמש בטכניקות סטנדרטיות של PostgreSQL (כמו הדגל max_worker_processes) כדי לשנות את מספר העובדים ברקע.
בתוסף הזה, Cloud SQL תומך במצב של עובד ברקע, אבל לא בממשק libpq. לכן, לא נדרש אימות מהימן ישירות בתוסף הזה.
pgfincore
התוסף הזה מכיל פונקציות לניהול דפים בזיכרון מטמון של דיסק מערכת ההפעלה מ-PostgreSQL. מידע נוסף זמין במאמרי העזרה בנושא pgfincore.
pg_freespacemap
התוסף הזה בודק את מפת הנפח הפנוי (FSM). מידע נוסף זמין במאמר pg_freespacemap במסמכי התיעוד של PostgreSQL.
pg_hint_plan
כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_pg_hint_plan ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
לחלופין, אם רוצים להשתמש בתוסף רק עבור משתמש עם התפקיד cloudsqlsuperuser, אפשר להשתמש בפקודה load כדי לטעון את התוסף לסשן אחד.
pg_partman
התוסף הזה מאפשר לכם ליצור ולנהל קבוצות של מחיצות בטבלה שמבוססות על זמן ועל סדר.
ב-Cloud SQL, התוסף הזה לא כולל את העובד ברקע לתחזוקה אוטומטית של מחיצות. במקום זאת, אתם יכולים להשתמש, לדוגמה, ב-Cloud Scheduler כדי להפעיל תחזוקה על ידי קריאה לפונקציות תחזוקה במרווחי זמן קבועים.
pg_proctab
כדי להפעיל את כלי השירות pg_top, צריך להשתמש בתוסף pg_proctab. כך עושים את זה:
- בכלי psql, מריצים את הפקודה CREATE EXTENSION עבור pg_proctab.
- מורידים ומריצים את pg_top.
- כשמתחברים למופע של Cloud SQL ל-PostgreSQL, מוסיפים את האפשרות
-rכדי להתחבר למסד נתונים מרוחק ולקבל מדדים.
המדדים הבאים ברמת המופע, שנכללים בפלט, כוללים את השימוש של סוכנים ושירותים תומכים אחרים במופע:
- ממוצע עומס
- מצבי המעבד (CPU) (% user, nice, system, idle, and iowait)
- זיכרון (בשימוש, פנוי ובמטמון)
pg_repack
התוסף הזה מאפשר לכם להסיר נתונים מיותרים מטבלאות ומאינדקסים. אפשר גם להשתמש בתוסף הזה כדי לבצע CLUSTER אונליין (סידור טבלאות לפי אינדקס אשכול). מידע נוסף מופיע במאמרי העזרה בנושא pg_repack. בנוסף, כדי להשתמש בתוסף הזה ב-Cloud SQL, צריך לבצע הליך מיוחד כדי להוסיף הרשאות למשתמש.
אם משתמש שלא הוקצה לו התפקיד cloudsqlsuperuser רוצה להשתמש בתוסף, צריך להעניק לו הרשאות cloudsqlsuperuser. דרישות להרשאות סופר-משתמש
בדוגמה הבאה משתמשים בפקודה GRANT כדי להוסיף את ההרשאות הנדרשות.
דוגמה להוספת הרשאות
לצורך הדוגמה שבהמשך, csuper1 הוא cloudsqlsuperuser ו-testdb הוא מסד נתונים בבעלות testuser. כדי ליצור את התוסף pg_repack ב-testdb, מריצים את הפקודות הבאות:
התחברות אל
testdbבתורcloudsqlsuperuser:psql -U csuper1 -d testdb;הענקת הרשאה לבעלים של מסד הנתונים, שהוא
testuser,, ל-csuper1:GRANT testuser TO csuper1;יוצרים את התוסף:
CREATE EXTENSION pg_repack;מריצים את הפקודה
pg_repackבטבלה, כמוt1ב-testdb, בתורcsuper1:pg_repack -h <hostname> -d testdb -U csuper1 -k -t t1אחרי שהמשימה pg_repack מסתיימת, מבטלים את ההרשאה שביצעתם בשלב 2:
REVOKE testuser FROM csuper1;
יכול להיות שהפקודה pg_repack תיכשל עם השגיאה הבאה:
"ERROR: query failed: SSL SYSCALL error: EOF detected"
אם השגיאה הזו מתרחשת, מנסים להגדיר ערך קטן יותר ל-TCP keepalives ואז מריצים את הפקודה pg_repack. מידע נוסף זמין במאמר בנושא זמן קצוב לתפוגה של חיבורים (מ-Compute Engine).
pg_squeeze
התוסף הזה מסיר רווחים לא בשימוש מטבלה, ויש לו אפשרות להשתמש באינדקס כדי למיין את הטופלים של הטבלה. כדי להתחיל להשתמש בתוסף במופע, מגדירים את הדגל cloudsql.enable_pg_squeeze לערך on.
התוסף הזה תומך גם בפענוח לוגי על ידי כתיבת מידע נוסף ליומן הפעולות (WAL). כדי להפעיל את הפונקציונליות הזו בתוסף, צריך להגדיר את פרמטר ההגדרה wal_level לערך logical או לערך גבוה יותר על ידי הגדרת הדגל cloudsql.logical_decoding לערך on.
צריך להגדיר ערך לדגל max_replication_slots בתוסף. אם לא ציינתם ערך לדגל הזה, צריך להגדיר את הערך 1. אחרת, מוסיפים 1 לערך שמוגדר לדגל.
מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
pgtt
כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל pgtt.enabled ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
pg_visibility
התוסף הזה מאפשר לבדוק את מפת החשיפה (VM) ואת פרטי החשיפה ברמת הדף של טבלה. מידע נוסף זמין במאמר בנושא pg_visibility במסמכי התיעוד של PostgreSQL.
PL/Proxy
התוסף הזה הוא handler של שפה פרוצדורלית שמאפשר קריאות לפרוצדורות מרוחקות בין מסדי נתונים של PostgreSQL, עם אפשרות לשיתוף.
מידע נוסף מופיע במאמרי העזרה בנושא PL/Proxy.
מכונות היעד לחיבורים צריכות להיות באותה רשת VPC כמו המכונה שממנה מתבצע החיבור. בנוסף, אי אפשר לבחור במסוףCloud de Confiance את הלחצן Allow only SSL connections (אפשר לאשר רק חיבורי SSL) עבור מופעי אשכול.
כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח ל-localhost או ל-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע במסוף Cloud de Confiance .
אפשר לעיין גם ב-postgres_fdw וב-dblink במסמך הזה.
postgresql_anonymizer
כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_anon ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.
postgres_fdw
התוסף הזה מאפשר לחשוף טבלאות ממסדי נתונים אחרים ("חיצוניים") של PostgreSQL כטבלאות "חיצוניות" במסד הנתונים הנוכחי. אחר כך אפשר להשתמש בטבלאות האלה, כאילו הן טבלאות מקומיות. מידע נוסף זמין במאמר postgres_fdw במסמכי התיעוד של PostgreSQL.
התוסף הזה פועל בשני מקרים: כשמדובר בשני מופעים של Cloud SQL עם כתובות IP פרטיות באותה רשת VPC, או כשמדובר במסדי נתונים שונים באותו מופע.
כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח כ-localhost או כ-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע שלכם במסוף Cloud de Confiance .
בנוסף, אם יש לכם מופע שבו מאוחסנים נתונים ממדינות אחרות, אתם יכולים לבחור באפשרות Allow only SSL connections [אפשרות רק לחיבורי SSL] במסוף Cloud de Confiance .
אי אפשר לבחור באפשרות נדרשים אישורי לקוח מהימנים.
רק cloudsqlsuperuser יכול להיות הבעלים של postgres_fdw foreign data wrapper.
אפשר לעיין גם בPL/Proxy וב-dblink במסמך הזה.
postgresql-hll
התוסף הזה מציג סוג נתונים חדש, hll, שהוא מבנה נתונים של HyperLogLog. מידע נוסף זמין במסמכי התיעוד של postgresql-hll.