הגדרת פרמטרים של מסד נתונים ב-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 של המניפסט. לדוגמה, אם אתם מחילים פרמטר שלא קיים או מגדירים ערך מחרוזת לפרמטר של מספר שלם.