הגדרת פרמטרים של מסד נתונים ב-AlloyDB Omni

בוחרים גרסה של מאמרי העזרה:

כדי להגדיר פרמטר של מסד נתונים ל-AlloyDB Omni, אתם יכולים לעדכן את הפרמטרים של Grand Unified Configuration‏ (GUC) באחת מהאפשרויות הבאות:

  • קובץ postgresql.conf לסביבות שבהן AlloyDB Omni פועל במכונה וירטואלית.

  • קובץ המניפסט של אשכול מסד הנתונים בסביבות שמופעל בהן AlloyDB Omni באשכול Kubernetes.

עדכון פרמטר ב-AlloyDB Omni בקונטיינר

ב-AlloyDB Omni שפועל במכונה וירטואלית, אפשר לעדכן פרמטר על ידי עריכה של הקובץ postgresql.conf באופן הבא:

  1. מאתרים את קובץ התצורה postgresql.conf של ההתקנה של AlloyDB Omni.

  2. משתמשים בכלי לעריכת טקסט כדי להוסיף או לעדכן דגל של מסד נתונים ב-postgresql.conf.

    לדוגמה, כדי לאכוף את תפוגת הסיסמה, מגדירים את הדגל הבא בקובץ postgresql.conf:

    password.enforce_expiration = ON
    
  3. אחרי שמוסיפים או עורכים את הדגלים לניהול מסד נתונים, צריך לטעון מחדש את postgresql.conf הקובץ כדי שהשינויים ייכנסו לתוקף. לדוגמה, אם התקנתם את AlloyDB Omni באמצעות Docker, אתם יכולים להריץ את הפקודה הבאה כדי להפעיל מחדש את המכונה של Docker ולטעון מחדש את postgresql.conf:

    docker restart CONTAINER-NAME

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

עדכון פרמטר ב-AlloyDB Omni באשכול Kubernetes

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

spec:
  primarySpec:
    parameters:
      "PARAMETER_NAME": "PARAMETER_VALUE"
      ...

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PARAMETER_NAME: שם הפרמטר, לדוגמה autovacuum.
  • ‫PARAMETER_VALUE: הערך של הפרמטר, לדוגמה: off.

כדי שהשינויים ייכנסו לתוקף, בחלק מהפרמטרים צריך להפעיל מחדש את האשכול. אפשר לקבל רשימה של פרמטרים שדורשים הפעלה מחדש מתוך pg_catalog.pg_settings. כל פרמטר עם pg_catalog.pg_settings.context = 'postmaster' דורש הפעלה מחדש.

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

kubectl patch dbclusters.alloydbomni.dbadmin.goog dbcluster-sample -p '{"spec":{"primarySpec":{"parameters": {"PARAMETER_NAME": "PARAMETER_VALUE"}}}}' --type=merge

הגדרות הפרמטרים נמצאות בחלק status של השדה currentParameters.

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

kubectl get dbclusters.alloydbomni.dbadmin.goog dbcluster-sample -o jsonpath={.status.primary.currentParameters}

הפלט אמור להיראות כך:

{"autovacuum":"off","max_connections":"3000"}

אם AlloyDB Omni לא יכול להחיל את הפרמטרים שביקשתם במניפסט של אשכול מסד הנתונים, הערכים בשדה currentParameters יכולים להיות שונים מהערכים בשדה parameters של המניפסט. לדוגמה, אם אתם מחילים פרמטר שלא קיים או מגדירים ערך מחרוזת לפרמטר של מספר שלם.