הגדרת דגלים של מסד נתונים

בדף הזה מוסבר איך להגדיר דגלים למסדי נתונים ב-Cloud SQL, ומפורטים הדגלים שאפשר להגדיר למכונה. משתמשים בדגלים לניהול מסד נתונים בהרבה פעולות, כולל התאמת פרמטרים של MySQL, התאמת אפשרויות והגדרה וכוונון של מכונה.

במקרים מסוימים, כדי להפעיל באופן מלא את הפונקציונליות שבה רוצים להשתמש, צריך להגדיר דגל אחד וגם דגל נוסף. לדוגמה, כדי להפעיל את רישום השאילתות האיטיות ביומן, צריך להגדיר את הדגל slow_query_log לערך on ואת הדגל log_output לערך FILE, כדי שהיומנים יהיו זמינים באמצעות Logs Explorer במסוף Google Cloud .

כשמגדירים, מסירים או משנים דגל של מכונה של מסד נתונים, יכול להיות שמסד הנתונים יופעל מחדש. ערך הדגל נשמר במכונה עד שמסירים אותו. אם המכונה היא המקור של רפליקה, והמכונה מופעלת מחדש, גם הרפליקה מופעלת מחדש כדי להתאים להגדרות הנוכחיות של המכונה.

הגדרת דגלים לניהול מסדי נתונים

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

הגדרת דגל לניהול מסד נתונים

המסוף

  1. במסוףGoogle Cloud , בוחרים את הפרויקט שמכיל את המכונה של Cloud SQL שרוצים להגדיר לה דגל לניהול מסד נתונים.
  2. פותחים את המכונה ולוחצים על Edit.
  3. עוברים לקטע דגלים.
  4. כדי להגדיר דגל שלא הוגדר במכונה בעבר, לוחצים על Add item, בוחרים את הדגל מהתפריט הנפתח ומגדירים את הערך שלו.
  5. לוחצים על Save כדי לשמור את השינויים.
  6. מאשרים את השינויים בקטע סימונים בדף הסקירה הכללית.

gcloud

עורכים את המכונה:

gcloud sql instances patch INSTANCE_NAME --database-flags=FLAG1=VALUE1,FLAG2=VALUE2

הפקודה הזו תחליף את כל הדגלים לניהול מסד הנתונים שהוגדרו קודם. כדי לשמור אותם ולהוסיף דגלים חדשים, צריך לכלול את הערכים של כל הדגלים שרוצים להגדיר במכונה. כל דגל שלא נכלל באופן ספציפי מוגדר לערך ברירת המחדל שלו. בדגלים שלא מקבלים ערך, מציינים את שם הדגל ואחריו סימן שוויון ("=").

לדוגמה, כדי להגדיר את הדגלים general_log,‏ skip_show_database ו-wait_timeout, אפשר להשתמש בפקודה הבאה:

gcloud sql instances patch INSTANCE_NAME \
  --database-flags=general_log=on,skip_show_database=on,wait_timeout=200000

Terraform

כדי להוסיף דגלים לניהול מסד נתונים, משתמשים במשאב של Terraform.

resource "google_sql_database_instance" "instance" {
  database_version = "MYSQL_8_0"
  name             = "mysql-instance"
  region           = "us-central1"
  settings {
    database_flags {
      name  = "general_log"
      value = "on"
    }
    database_flags {
      name  = "skip_show_database"
      value = "on"
    }
    database_flags {
      name  = "wait_timeout"
      value = "200000"
    }
    disk_type = "PD_SSD"
    tier      = "db-n1-standard-2"
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

החלה של השינויים

כך מחילים את ההגדרות של Terraform בפרויקט ב- Google Cloud :

הכנת Cloud Shell

  1. מפעילים את Cloud Shell.
  2. מגדירים את פרויקט ברירת המחדל ב- Google Cloud שבו רוצים להחיל את ההגדרות של Terraform.

    תצטרכו להריץ את הפקודה הזו רק פעם אחת לכל פרויקט, ותוכלו לעשות זאת בכל ספרייה.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    אם תגדירו ערכים ספציפיים בקובץ התצורה של Terraform, הם יבטלו את ערכי ברירת המחדל של משתני הסביבה.

הכנת הספרייה

לכל קובץ תצורה של Terraform צריכה להיות ספרייה משלו (שנקראת גם מודול ברמה הבסיסית).

  1. יוצרים ספרייה חדשה ב-Cloud Shell ובה יוצרים קובץ חדש. שם הקובץ חייב לכלול את הסיומת .tf, למשל main.tf. במדריך הזה, הקובץ נקרא main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. אם אתם עוקבים אחרי המדריך, תוכלו להעתיק את הקוד לדוגמה בכל קטע או שלב.

    מעתיקים את הקוד לדוגמה בקובץ main.tf החדש שיצרתם.

    לחלופין, אפשר גם להעתיק את הקוד מ-GitHub. כדאי לעשות את זה כשקטע הקוד של Terraform הוא חלק מפתרון מקצה לקצה.

  3. בודקים את הפרמטרים לדוגמה ומשנים אותם בהתאם לסביבה שלכם.
  4. שומרים את השינויים.
  5. מפעילים את Terraform. צריך לעשות זאת רק פעם אחת לכל ספרייה.
    terraform init

    אופציונלי: תוכלו לכלול את האפשרות -upgrade, כדי להשתמש בגרסה העדכנית ביותר של הספק של Google:

    terraform init -upgrade

החלה של השינויים

  1. בודקים את ההגדרות ומוודאים שהמשאבים שמערכת Terraform תיצור או תעדכן תואמים לציפיות שלכם:
    terraform plan

    מתקנים את ההגדרות לפי הצורך.

  2. מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה, כדי להחיל את הגדרות Terraform:
    terraform apply

    ממתינים עד שב-Terraform תוצג ההודעה "Apply complete!‎".

  3. פותחים את הפרויקט ב- Google Cloud כדי להציג את התוצאות. במסוף Google Cloud , נכנסים למשאבים בממשק המשתמש כדי לוודא שהם נוצרו או עודכנו ב-Terraform.

למחוק את השינויים

כדי למחוק את השינויים:

  1. כדי להשבית את ההגנה מפני מחיקה, בקובץ התצורה של Terraform מגדירים את הארגומנט deletion_protection לערך false.
    deletion_protection =  "false"
  2. מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה, כדי להחיל את הגדרות Terraform המעודכנות:
    terraform apply
  1. כדי להסיר משאבים שהוחלו בעבר על הגדרות Terraform, מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה:

    terraform destroy

REST v1

כדי להגדיר דגל למסד נתונים קיים:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "flag_name",
        "value": "flag_value"
      }
    ]
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "general_log",
        "value": "on"
      }
    ]
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

אם כבר הוגדרו דגלים למסד הנתונים, צריך לשנות את הפקודה הקודמת כדי לכלול אותם. הפקודה PATCH מחליפה את הדגלים הקיימים בדגלים שצוינו בבקשה.

REST v1beta4

כדי להגדיר דגל למסד נתונים קיים:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "flag_name",
        "value": "flag_value"
      }
    ]
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags":
    [
      {
        "name": "general_log",
        "value": "on"
      }
    ]
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

אם כבר הוגדרו דגלים למסד הנתונים, צריך לשנות את הפקודה הקודמת כדי לכלול אותם. הפקודה PATCH מחליפה את הדגלים הקיימים בדגלים שצוינו בבקשה.

איפוס כל הדגלים לערכי ברירת המחדל שלהם

המסוף

  1. במסוףGoogle Cloud , בוחרים את הפרויקט שמכיל את המכונה של Cloud SQL שרוצים לנקות את כל הדגלים שלה.
  2. פותחים את המכונה ולוחצים על Edit.
  3. פותחים את הקטע Database flags.
  4. לוחצים על ה-X לצד כל הסימונים שמוצגים.
  5. לוחצים על Save כדי לשמור את השינויים.

gcloud

איפוס כל הדגלים לערכי ברירת המחדל שלהם במכונה:

gcloud sql instances patch INSTANCE_NAME \
--clear-database-flags

תתבקשו לאשר את ההפעלה מחדש של המכונה.

REST v1

כדי לנקות את כל הדגלים של מכונה קיימת:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags": []
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

REST v1beta4

כדי לנקות את כל הדגלים של מכונה קיימת:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

תוכן בקשת JSON:

{
  "settings":
  {
    "databaseFlags": []
  }
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

הצגת הערכים הנוכחיים של דגלים לניהול מסדי נתונים

כדי לראות את כל הערכים הנוכחיים של משתני המערכת של MySQL, מתחברים למכונה באמצעות הלקוח mysql ומזינים את ההצהרה הבאה:

 SHOW VARIABLES;

חשוב לדעת שאפשר לשנות את הערך רק בדגלים נתמכים (כפי שמפורט בהמשך).

איך בודקים אילו דגלים לניהול מסד נתונים הוגדרו למכונה

כדי לראות אילו דגלים הוגדרו למכונה של Cloud SQL:

המסוף

  1. במסוףGoogle Cloud , בוחרים את הפרויקט שמכיל את המכונה של Cloud SQL שרוצים לראות את דגלי ניהול מסד הנתונים שהוגדרו לה.
  2. בוחרים את המכונה כדי לפתוח את הדף Instance Overview.

    הדגלים שהוגדרו למסד הנתונים מופיעים בקטע Database flags.

gcloud

בודקים את מצב המכונה:

gcloud sql instances describe INSTANCE_NAME

בפלט, הדגלים לניהול מסד הנתונים מופיעים בקולקציה databaseFlags, מתחת ל-settings. למידע נוסף על ייצוג הדגלים בפלט, ראו ייצוג משאבים של מכונות.

REST v1

כדי להציג רשימה של דגלים שהוגדרו למכונה:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

בפלט, מחפשים את השדה databaseFlags.

REST v1beta4

כדי להציג רשימה של דגלים שהוגדרו למכונה:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫project-id: מזהה הפרויקט
  • ‫instance-id: מזהה המכונה

ה-method של ה-HTTP וכתובת ה-URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

בפלט, מחפשים את השדה databaseFlags.

דגלים שמנוהלים על ידי Cloud SQL

מערכת Cloud SQL משנה דגלי מערכת מסוימים בהתאם לסוג המכונה.

innodb_buffer_pool_instances
  • ‫1 ל-db-f1-micro ול-db-g1-small.
  • ‫1 אם ה-RAM קטן מ-7.5GB.
  • ‫2 אם 7.5GB‏ <= RAM‏ < 13GB.
  • ‫4 אם 13GB <= RAM < 26GB.
  • ‫8 אם זיכרון ה-RAM הוא >= 26GB.

דגלים נתמכים

הדגלים שנתמכים ב-Cloud SQL הם הדגלים הנפוצים ביותר שמתבקשים ל-MySQL. אין תמיכה בדגלים שלא מוזכרים בקטע הזה.

יכול להיות ש-Cloud SQL יתמוך בערך או בטווח שונים של דגל מסוים, בהשוואה לפרמטר או לאפשרות התואמים ב-MySQL.

הדגלים חלים על כל הגרסאות של MySQL שנתמכות על ידי Cloud SQL, אלא אם צוין אחרת.

A | B | C | D | E | F | G | H | I | L | M | N | O | P | Q | R | S | T | U | W

דגל של Cloud SQL סוג
ערכים קבילים והערות
נדרשת
הפעלה מחדש?
activate_all_roles_on_login boolean
on | off
ברירת מחדל: off
לא
activate_mandatory_roles boolean
on | off
ברירת מחדל: on
לא
autocommit boolean
on | off
ברירת מחדל: on
לא
auto_increment_increment integer
1 ... 65535
לא
auto_increment_offset integer
1 ... 65535
לא
automatic_sp_privileges boolean
on | off
ברירת מחדל: on
לא
back_log integer
1 ... 65535
ברירת מחדל: max_connections
‫MySQL 8.4 וגרסאות קודמות: 4000
‫MySQL 9.7 וגרסאות חדשות יותר: 10000
כן
binlog_cache_size integer
4096 ... 9223372036854775807
לא
binlog_expire_logs_seconds integer
0 או 86400 (1 day) ... 4294967295 (max value)
ברירת המחדל היא 86400, שזה שווה ערך ליום אחד.

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
binlog_group_commit_sync_delay 0 ... 1000000

נתמך ב-MySQL 5.7 ואילך

ברירת המחדל היא 0.

לא
binlog_group_commit_sync_no_delay_count 0 ... 1000000

נתמך ב-MySQL 5.7 ואילך

ברירת המחדל היא 0.

לא
binlog_gtid_simple_recovery boolean
on | off
ברירת מחדל: on
כן
binlog_order_commits boolean
on | off
ברירת מחדל: on

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
binlog_row_image ‫enumeration
full (ברירת מחדל), minimal או noblob
לא
binlog_row_metadata ‫enumeration
full או minimal (ברירת מחדל)
לא
binlog_row_value_options string
PARTIAL_JSON
לא
binlog_rows_query_log_events boolean
on | off
ברירת מחדל: off
לא
binlog_stmt_cache_size 4096 ... 9223372036854775807 לא
binlog_transaction_compression boolean
on | off
ברירת מחדל: off

שינויים ב-binlog_transaction_compression ייכנסו לתוקף רק אחרי דף החשבון הבא של START REPLICA.

לא
binlog_transaction_compression_level_zstd integer
1 ... 22
ברירת מחדל: 3

שינויים בbinlog_transaction_compression_level_zstd ייכנסו לתוקף רק אחרי דף החשבון הבא של START REPLICA.

לא
binlog_transaction_dependency_history_size integer
1 ... 10000000 ברירת המחדל:
- MySQL 8.4 וגרסאות קודמות: 25000
- MySQL 9.7 וגרסאות חדשות יותר: 10000000

למידע על אופן השימוש בדגל הזה ובערכים הקבילים שלו, קראו את המאמר הגדרת רפליקציה מקבילה.

לא
binlog_transaction_dependency_tracking enumeration

למידע על אופן השימוש בדגל הזה ובערכים הקבילים שלו, קראו את המאמר הגדרת רפליקציה מקבילה. הדגל הזה לא נתמך ב-MySQL מגרסה 8.4 ואילך.

לא
block_encryption_mode string
aes-keylen-mode
ברירת מחדל: aes-128-ECB
לא
bulk_insert_buffer_size integer
0 ... 4294967295
ברירת מחדל: 8388608
לא
caching_sha2_password_storage_format string
CRYPT5 | PBKDF2_SHA512
default: CRYPT5
לא
caching_sha2_password_enforce_storage_format boolean
1 (true) | 0 (false)
ברירת מחדל: 0 (false)
לא
caching_sha2_password_proxy_users boolean
on | off
ברירת מחדל: OFF

מידע נוסף על הדגל הזה זמין בקטע טיפים.

לא
collation_connection string
ברירת המחדל:
‫MySQL 8.0 ואילך – utf8mb4_0900_ai_ci

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
collation_server string
ברירת המחדל:
MySQL 5.7 – utf8_general_ci
MySQL 8.0 ואילך – utf8mb4_0900_ai_ci
לא
character_set_client string

ברירת המחדל:
MySQL 5.7: utf8
MySQL 8.0 ואילך: utf8mb4

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
character_set_connection string
ברירת המחדל:
MySQL 5.7: utf8
MySQL 8.0 ואילך: utf8mb4

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
character_set_results string
utf8 או utf8mb4
ברירת המחדל:
MySQL 5.7: utf8
MySQL 8.0 ואילך: utf8mb4

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
character_set_server string
utf8 או utf8mb4 (מומלץ)
כן
check_proxy_users boolean
on | off
ברירת מחדל: off
לא
cloudsql_allow_analyze_table boolean on | off
default: off
לא
cloudsql_avoid_parse_session_logging boolean on | off
ברירת מחדל: off
לא
cloudsql_iam_authentication boolean on | off
ברירת מחדל: off
נתמך ב-MySQL 5.7 ואילך ב-Cloud SQL.
לא
cloudsql_ignore_innodb_encryption boolean on | off
default: off
לא
cloudsql_index_recreate_enable boolean
on | off
ברירת מחדל: on
לא
cloudsql_index_recreate_replica_group string
ברירת מחדל: NULL
לא
cloudsql_mysql_audit_data_masking_cmds string
"", dql, dml, ddl, dcl, show, call, create_udf, drop_function, create_procedure, create_function, drop_procedure, alter_procedure, alter_function, create_trigger, drop_trigger, create_event, alter_event, drop_event, create_db, drop_db, alter_db, create_user, drop_user, rename_user, alter_user, create_table, create_index, alter_table, drop_table, drop_index, create_view, drop_view, rename_table, update, insert, insert_select, delete, truncate, replace, replace_select, delete_multi, update_multi, load, select, call_procedure, connect, disconnect, grant, revoke, revoke_all, show_triggers, show_create_proc, show_create_func, show_procedure_code, show_function_code, show_create_event, show_events, show_create_trigger, show_grants, show_binlog_events, show_relaylog_events

ברירת מחדל: create_user, alter_user, grant, ו-update
לא
cloudsql_mysql_audit_data_masking_regex string
max_string_length: 2048
ברירת מחדל: ראו הגדרות של פלאגין הביקורת.
לא
cloudsql_mysql_audit_log_write_period ‫integer
0...5000 אלפיות השנייה
ברירת המחדל: 500 אלפיות השנייה
לא
cloudsql_mysql_audit_max_query_length integer
-1...1073741824
ברירת מחדל: -1
לא
cloudsql_parameterized_secure_view boolean
on | off
ברירת מחדל: off
לא
cloudsql_vector boolean on | off
ברירת מחדל: off
כן
cloudsql_vector_iterative_filtering boolean

ברירת מחדל: off
לא
cloudsql_vector_iterative_filtering_max_neighbors integer
10...1000
ברירת מחדל: 500
לא
cloudsql_vector_max_mem_size integer
1073741824...innodb_buffer_pool_size/2
ברירת המחדל: 1073741824 בבייטים
כן
completion_type ‫enumeration
NO_CHAIN (ברירת המחדל), CHAIN או RELEASE
לא
concurrent_insert ‫enumeration
NEVER,‏ AUTO (ברירת המחדל) או ALWAYS
לא
connect_timeout integer
2 ... 31536000
ברירת מחדל: 10
לא
connection_memory_chunk_size integer
0 ... 536870912
ברירת המחדל:
‫MySQL 8.0.28 עד 8.0.33: 8912
‫MySQL 8.0.34 ואילך: 8192
לא
connection_memory_limit integer
2097152 ... 9223372036854775807
לא
connection_memory_status_limit integer
16777216 ... 9223372036854775807
default: 9223372036854775807
לא
cte_max_recursion_depth integer
0 ... 4294967295
ברירת מחדל: 1000
לא
default_authentication_plugin string
mysql_native_password|caching_sha2_password
כן
default_password_lifetime integer 0...65535
ברירת המחדל: 0
לא
default_time_zone string
יש שתי דרכים לציין אזורי זמן: כהפרשים מאזור זמן וכשמות של אזורי זמן. לדוגמה, +00:00 הוא הפרש אזור הזמן של לונדון (שנמצאת באזור הזמן UTC), ו-Europe/London הוא השם של אזור הזמן שלה.

אתם משתמשים בערכים כדי לציין את ההפרש בין אזורי הזמן, מ--12:59 עד +13:00. צריך להוסיף אפסים בתחילת המספר.

כשמשתמשים בשמות של אזורי זמן, יש תמיכה בכוונון אוטומטי לשעון קיץ. אי אפשר להשתמש בהיסטים של אזורי זמן. רשימת שמות של אזורי זמן שנתמכים ב-Cloud SQL ל-MySQL. כדי להביא זאת בחשבון, צריך לעדכן את הדגל הזה באופן ידני במכונה הראשית ובכל הרפליקות לקריאה בלבד.

כדי להגדיר את אזור הזמן בלי להפעיל מחדש את המכונה של Cloud SQL, משתמשים בפקודה set time_zone=timezone_offset או timezone_name עם הדגל init_connect.

כן
default_tmp_storage_engine string
INNODB|MEMORY
ברירת מחדל: INNODB
לא
default_week_format integer
0 ... 7
ברירת מחדל: 0
לא
delay_key_write ‫enumeration
OFF,‏ ON (ברירת המחדל) או ALL
לא
disconnect_on_expired_password boolean on | off
ברירת מחדל: on
כן
div_precision_increment integer
0 ... 30
ברירת מחדל: 4
לא
end_markers_in_json boolean
on | off
ברירת מחדל: off
לא
eq_range_index_dive_limit integer
0 ... 2147483647
לא
event_scheduler boolean
on | off

אם אתם משתמשים ב-Event Scheduler, הגדירו את המכונה עם מדיניות הפעלה מסוג ALWAYS כדי לוודא שהאירועים המתוזמנים יפעלו.

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
expire_logs_days integer
0 ... 99
ערך ברירת המחדל הוא 0, כלומר אין הסרה אוטומטית.

הערה: הדגל הזה לא נתמך ב-MySQL 8.4. במקום זאת, אתם צריכים להשתמש ב-binlog_expire_logs_seconds. מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
explicit_defaults_for_timestamp boolean
on | off

לא
flush_time integer
0 ... 31536000
ברירת מחדל: 0
לא
foreign_key_checks boolean
on | off
ברירת מחדל: on

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
ft_max_word_len integer
10 ... 252
כן
ft_min_word_len integer
1 ... 16
כן
ft_query_expansion_limit integer
0 ... 1000
כן
ft_stopword_file string
כן
general_log boolean
on | off

בקטע טיפים מופיע מידע נוסף על יומנים כלליים.

לא
generated_random_password_length integer 5-255
ברירת המחדל: 20
לא
global_connection_memory_limit integer
16777216 ... 9223372036854775807
לא
global_connection_memory_status_limit integer
16777216 ... 9223372036854775807
default: 9223372036854775807
לא
global_connection_memory_tracking ‫boolean
on | off
ברירת מחדל: off
לא
group_concat_max_len integer
4 ... 17179869184
לא
gtid_executed_compression_period integer
0 ... 4294967295
ברירת מחדל (עד גרסה 8.0.22): 1000
ברירת מחדל (גרסה 8.0.23 ואילך): 0
לא
histogram_generation_max_mem_size integer
1000000 ... 4294967295
ברירת מחדל: 20000000
לא
init_connect string לא
innodb_adaptive_hash_index boolean
on | off
לא
innodb_adaptive_hash_index_parts integer
1 ... 512
כן
innodb_adaptive_max_sleep_delay integer
0 ... 1000000
לא
innodb_autoextend_increment integer
1 ... 1000
לא
innodb_autoinc_lock_mode integer
0 ... 2
כן
innodb_buffer_pool_chunk_size integer
1048576 ... (innodb_buffer_pool_size/innodb_buffer_pool_instances)

ערך הדגל הזה תלוי ב-innodb_buffer_pool_size וב-innodb_buffer_pool_instances. ‫MySQL יכול לכוונן אוטומטית את הערך של innodb_buffer_pool_chunk_size על סמך שני הדגלים האלה.

כן
innodb_buffer_pool_dump_pct integer
1 ... 100
ברירת מחדל: 25
לא
innodb_buffer_pool_dump_at_shutdown boolean
on | off
לא
innodb_buffer_pool_dump_now boolean
on | off

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
innodb_buffer_pool_instances integer
1 ... 64
כן
innodb_buffer_pool_load_abort boolean
on | off

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
innodb_buffer_pool_load_at_startup boolean
on | off
כן
innodb_buffer_pool_load_now boolean
on | off

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
innodb_buffer_pool_size integer

כדי להגדיר את הדגל הזה ל-MySQL 5.6, צריך להפעיל מחדש. בקטע טיפים מופיע מידע נוסף על הדגל הזה.

לא
innodb_change_buffer_max_size integer
0 ... 50
ברירת המחדל:
- MySQL 8.4 וגרסאות קודמות: 25
- MySQL 9.7 וגרסאות חדשות יותר: 5
לא
innodb_change_buffering string

אפשרויות: none, inserts, deletes, changes, purges, all.

ברירת המחדל:
- MySQL 8.0 וגרסאות קודמות: none
- MySQL 8.4 וגרסאות חדשות יותר: all
לא
innodb_checksum_algorithm string

אפשרויות: crc32, strict_crc32, innodb, strict_innod, none, strict_none.

לא
innodb_cloudsql_managed_buffer_pool boolean
on | off
ברירת מחדל: off
לא
innodb_cloudsql_managed_buffer_pool_threshold_pct integer
50 ... 99
טווח זיכרון ה-RAM של המכונהברירת מחדל
פחות מ-3GB RAMלא רלוונטי (אין תמיכה בליבת מעבד משותפת)
‫RAM בנפח 3GB עד 8GB90
‫RAM בנפח 8GB-15GB92
‫RAM בנפח 15GB עד 100GB95
‫RAM בנפח של יותר מ-100GB97
לא
innodb_cloudsql_managed_buffer_pool_tuneup_pct integer
48 ... 97
ברירת מחדל: 70

הערך של הדגל הזה חייב להיות קטן ב-2 לפחות מהערך של innodb_cloudsql_managed_buffer_pool_threshold_pct.

לא
innodb_cloudsql_optimized_write boolean

הדגל הזה זמין רק למכונות עם מהדורת Cloud SQL Enterprise Plus. למידע נוסף על הדגל הזה, ראו את הקטע טיפים.

כן
innodb_cmp_per_index_enabled boolean
on | off
לא
innodb_commit_concurrency integer
0 ... 1000
כן
innodb_compression_failure_threshold_pct integer
0 ... 100
לא
innodb_compression_level integer
0 ... 9
לא
innodb_compression_pad_pct_max integer
0 ... 75
לא
innodb_concurrency_tickets integer
1 ... 4294967295
לא
innodb_ddl_buffer_size integer
65536 ... 4294967295
default: 1048576
לא
innodb_ddl_threads integer
1 ... 64
default: 4
לא
innodb_deadlock_detect boolean
on | off

נתמך ב-MySQL מגרסה 5.7 ואילך.

ברירת המחדל: on

לא
innodb_disable_sort_file_cache boolean
on | off
לא
innodb_doublewrite_batch_size integer
0 ... 256
ברירת מחדל: 0
כן
innodb_doublewrite_files integer
2 ... 128
כן
innodb_doublewrite_pages integer
4 ... 512
ברירת מחדל: 64
כן
innodb_file_per_table boolean
on | off

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
innodb_fill_factor integer
10 ... 100
לא
innodb_flush_log_at_timeout double
0.0001... 2700
ברירת מחדל: 1

נתמך ב-MySQL 5.7 ואילך.

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
innodb_flush_log_at_trx_commit integer
0, 1, 2
ברירת המחדל: 1

אם מקדמים רפליקה כשהדגל הזה מופעל, הדגל מוסר באופן אוטומטי, וכתוצאה מכך הרפליקה המקודמת מקבלת עמידות מלאה כברירת מחדל. כדי להשתמש בדגל הזה עם רפליקה שקודמה, אפשר לעדכן את הדגל ברפליקה אחרי הקידום.

מידע נוסף זמין בקטע טיפים.

לא
innodb_flush_method string

אפשרויות: fsync, O_DIRECT, O_DSYNC

ברירת המחדל: O_DIRECT
כן
innodb_flush_neighbors enumeration
0 ... 2
ערכי ברירת המחדל:
- MySQL 5.6: 0
- MySQL 5.7 to MySQL 8.0:2
- MySQL 8.4 and later: 0
לא
innodb_flush_sync boolean
on | off
לא
innodb_flushing_avg_loops integer
1 ... 1000
ברירת מחדל: 30
לא
innodb_fsync_threshold ‫integer
0 ... 9223372036854775807
ברירת המחדל: 0
לא
innodb_ft_aux_table string

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

כן
innodb_ft_cache_size integer
1600000 ... 80000000
כן
innodb_ft_enable_diag_print boolean
on | off
לא
innodb_ft_enable_stopword boolean
on | off
לא
innodb_ft_max_token_size integer
10 ... 252
כן
innodb_ft_min_token_size integer
0 ... 16
כן
innodb_ft_num_word_optimize integer
1000 ... 10000
לא
innodb_ft_result_cache_limit integer
1000000 ... 4294967295
לא
innodb_ft_server_stopword_table string לא
innodb_ft_sort_pll_degree integer
1 ... 32
כן
innodb_ft_total_cache_size integer
32000000 ... 1600000000
כן
innodb_ft_user_stopword_table string לא
innodb_idle_flush_pct integer
0 ... 100
ברירת מחדל: 100
לא
innodb_io_capacity integer
100 ... 100000
ברירת מחדל: 5000

מידע נוסף על הגדרת ביצועי הדיסק זמין בטבלה E2 VMs במאמר הגדרת דיסקים בהתאם לדרישות הביצועים.

לא
innodb_io_capacity_max integer
100 ... 100000
ברירת מחדל: 10000

מידע נוסף על הגדרת ביצועי הדיסק זמין בטבלה E2 VMs במאמר הגדרת דיסקים בהתאם לדרישות הביצועים.

לא
innodb_large_prefix boolean
on | off

נתמך רק ב-MySQL 5.6.

לא
innodb_lock_wait_timeout integer
1 ... 1073741824
לא
innodb_log_buffer_size integer
262144 ... 4294967295
כן
innodb_log_checksums boolean
on | off
ברירת מחדל: on
לא
innodb_log_file_size integer
‫- MySQL 5.6:‏ 1048576 ... 274877906944
‫- MySQL 5.7 עד 8.4:‏ 4194304 ... 274877906944
‫- MySQL 9.7: הוסר ממסד הנתונים

מידע נוסף על הדגל הזה זמין בקטע טיפים.

כן
innodb_log_spin_cpu_abs_lwm integer
0 ... 4294967295
ברירת מחדל: 80
לא
innodb_log_spin_cpu_pct_hwm integer
0 ... 100
ברירת מחדל: 50
לא
innodb_log_wait_for_flush_spin_hwm integer
0 ... 4294967295
ברירת מחדל: 400
לא
innodb_log_write_ahead_size integer
512 ... 65536
ברירת מחדל: 8192
לא
innodb_lru_scan_depth integer
100 ... 9223372036854775807
לא
innodb_max_dirty_pages_pct float
0 ... 99.99
ברירת מחדל: 90
לא
innodb_max_dirty_pages_pct_lwm float
0 ... 99.99
ברירת מחדל: 10
לא
innodb_max_purge_lag integer
0 ... 4294967295
ברירת מחדל: 0
לא
innodb_max_undo_log_size integer
10485760 ... 9223372036854775807
ברירת מחדל: 1073741824
לא
innodb_max_purge_lag_delay integer
0 ... 10000000
ברירת מחדל: 0
לא
innodb_monitor_disable string לא
innodb_monitor_enable string לא
innodb_monitor_reset string
counter, module, pattern, all
לא
innodb_monitor_reset_all enumeration
ערכים תקינים: counter,‏ module,‏ pattern,‏ all
לא
innodb_native_foreign_keys boolean
on | off
ברירת מחדל: off
לא
innodb_old_blocks_pct integer
5 ... 95
לא
innodb_old_blocks_time integer
0 ... 4294967295
לא
innodb_online_alter_log_max_size integer
65536 ... 9223372036854775807
לא
innodb_open_files integer
100 ... 2147483647
ברירת מחדל:
MySQL 5.7: 2000
MySQL 8.0 ואילך: 4000
‫≥ 8.0.28: לא
≤ 8.0.27: כן
innodb_optimize_fulltext_only boolean
on | off
לא
innodb_page_cleaners integer
1 ... 64
נתמך ב-MySQL 5.7 ואילך. ב-MySQL 5.7 ו-8.0, ערך ברירת המחדל הוא 4. ב-MySQL 8.4, ברירת המחדל שווה לערך שמוגדר לדגל innodb_buffer_pool_instances.
כן
innodb_parallel_read_threads integer
1 ... 256
ברירת מחדל: 4
לא
innodb_print_all_deadlocks boolean
on | off
ברירת מחדל: off
לא
innodb_print_ddl_logs boolean
on | off
לא
innodb_purge_batch_size integer
1 ... 5000
ברירת מחדל: 300
לא
innodb_purge_rseg_truncate_frequency integer
1 ... 128
ברירת מחדל: 128
לא
innodb_purge_threads integer
1 ... 32
ערכי ברירת המחדל:
- MySQL 5.6: 1
- MySQL 5.7 ואילך: 4
כן
innodb_random_read_ahead boolean
on | off
לא
innodb_read_ahead_threshold integer
0 ... 64
לא
innodb_read_io_threads integer
1 ... 64
כן
innodb_redo_log_capacity integer
- MySQL 8.0.33 וגרסאות קודמות: 8388608 (8MB) ... 137438953472 (128GB)
- MySQL 8.0.34 וגרסאות חדשות יותר: 8388608 (8MB) ... 549755813888 (512GB)

מידע נוסף על הדגל הזה זמין בקטע טיפים.

לא
innodb_replication_delay integer
0 ... 4294967295
לא
innodb_rollback_on_timeout boolean
on | off
כן
innodb_rollback_segments integer
1 ... 128
לא
innodb_segment_reserve_factor float
.03 ... 40
ברירת מחדל: 12.5
לא
innodb_sort_buffer_size integer
65536 ... 67108864
כן
innodb_spin_wait_delay integer
‫- MySQL 5.7:‏ 0 ... 1000000
‫- MySQL 8.0.13 ואילך:‏ 0 ... 1000
ברירת המחדל: 6
לא
innodb_stats_auto_recalc boolean
on | off
לא
innodb_stats_include_delete_marked boolean
on | off
ברירת מחדל: off
לא
innodb_stats_method enumeration
nulls_equal | nulls_unequal | nulls_ignored
לא
innodb_stats_on_metadata boolean
on | off
לא
innodb_stats_persistent boolean
on | off
לא
innodb_stats_persistent_sample_pages integer
1 ... 9223372036854775807
לא
innodb_stats_sample_pages integer
1 ... 9223372036854775807
לא
innodb_stats_transient_sample_pages integer
1 ... 9223372036854775807
לא
innodb_status_output boolean
on | off
לא
innodb_status_output_locks boolean
on | off
לא
innodb_strict_mode boolean
on | off
לא
innodb_sync_array_size 1 ... 1024

ברירת המחדל היא 1.

כן
innodb_sync_spin_loops integer
0 ... 4294967295
ברירת מחדל: 30
לא
innodb_table_locks boolean
on | off
ברירת מחדל: on
לא
innodb_thread_concurrency integer
0 ... 1000
לא
innodb_thread_sleep_delay integer
0 ... 1000000
לא
innodb_undo_log_truncate boolean
on | off
ברירת מחדל: on
לא
innodb_use_native_aio boolean
on | off
ברירת מחדל: on
כן
innodb_write_io_threads integer
1 ... 64
כן
interactive_timeout integer
1 ... 31536000
לא
internal_tmp_disk_storage_engine enumeration
INNODB | MYISAM
ברירת מחדל: INNODB
לא
internal_tmp_mem_storage_engine enumeration
MEMORY, TempTable
.
לא
join_buffer_size integer
128 ... 9223372036854775807
לא
keep_files_on_create boolean
on | off
ברירת מחדל: off
לא
key_buffer_size integer
4096 ... 4294967295
ברירת מחדל: 8388608
לא
key_cache_age_threshold integer
100 ... 9223372036854775807
ברירת מחדל: 300
לא
key_cache_block_size integer
512 ... 16384
ברירת מחדל: 1024
לא
key_cache_division_limit integer
1 ... 100
ברירת מחדל: 100
לא
lc_times_names string
en_US | cs_CZ | da_DK | nl_NL | et_EE | fr_FR | de_DE | el_GR | hu_HU | it_IT | ja_JP | ko_KR | no_NO | nb_NO | pl_PL | pt_PT | ro_RO | ru_RU | sr_RS | sk_SK | es_ES | sv_SE | uk_UA
ברירת מחדל: en_US
לא
local_infile boolean
on | off
לא
lock_wait_timeout integer
1 ... 31536000
לא
log_bin_trust_function_creators boolean
on | off
לא
log_output set
FILE | TABLE | NONE
לא
log_error_verbosity integer
1 ... 3
default:
MySQL 5.7: 3
MySQL 8.0 and later: 2
לא
log_queries_not_using_indexes boolean
on | off
לא
log_slow_admin_statements boolean
on | off
ברירת מחדל: off
לא
log_slow_extra boolean
on | off
ברירת מחדל: off
לא
log_slow_replica_statements boolean
on | off ברירת המחדל: off
לא
log_slow_slave_statements boolean
on | off ברירת המחדל: off
לא
log_throttle_queries_not_using_indexes integer
0 ... 9223372036854775807
לא
log_timestamps string
"UTC | SYSTEM"
ברירת מחדל: UTC
לא
long_query_time float
0 ... 30000000

ב-Cloud SQL אפשר להגדיר את הדגל הזה לערך קטן מ-1, אם צריך.

אם גם הדגל log_queries_not_using_indexes מופעל, יכול להיות שיוצגו שאילתות עם פחות מהזמן שצוין כאן.

לא
‫lower_case_table_names 5.7 | 8.0 ‫integer
0 או 1
ברירת מחדל: 0

אם משתמשים בערך ברירת המחדל 0 בדגל הזה, שמות הטבלאות ומסדי הנתונים תלויי אותיות רישיות. כשהערך הוא 1, שמות של טבלאות ומסדי נתונים הם לא תלויי-רישיות.

במכונות של MySQL 5.7, אפשר לשנות את הערך של הדגל הזה בכל שלב. אם כן, חשוב להבין איך השינוי משפיע על הטבלאות ומסדי הנתונים הקיימים.

במופעים של MySQL 8.0 ואילך, אפשר להגדיר את הערך של הדגל הזה לערך הרצוי רק בזמן שיוצרים מופע. אחרי שמגדירים את הערך הזה, אי אפשר לשנות אותו. בנוסף, אי אפשר לשנות את הערך של הדגל הזה במכונה קיימת.

כשיוצרים עותקים לקריאה בלבד של מכונות MySQL 5.7,‏ MySQL 8.0 או MySQL 8.4, העותק יורש את ערך הדגל הזה מהמכונה הראשית.

כן
mandatory_roles string role name
ברירת מחדל: empty string
לא
master_verify_checksum boolean
on | off ברירת המחדל: off
לא
max_allowed_packet integer
16384 ... 1073741824

הערך הזה חייב להיות כפולה של 1024, אם sql_mode=TRADITIONAL או sql_mode=STRICT_ALL_TABLES.

לא
max_binlog_cache_size integer
4096 ... 4294967296
ברירת מחדל: 4294967296
לא
max_binlog_size integer
4096 ... 1073741824
לא
max_binlog_stmt_cache_size integer
4096 ... 4294967296
ברירת מחדל: 4294967296
לא
max_connect_errors integer
1 ... 9223372036854775807
ברירת מחדל: 100
לא
max_connections integer
1 ... 100000
לא
max_digest_length integer
0 ... 1048576
כן
max_error_count integer
0 ... 65535
ברירת המחדל:
- MySQL 5.7 או גרסה קודמת: 64
- MySQL 8.0 ואילך: 1024
לא
max_execution_time integer
0 ... 9223372036854775807
לא
max_heap_table_size integer
16384 ... 67108864

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
max_join_size integer
16 ... 9223372036854775807
לא
max_length_for_sort_data integer
4 ... 8388608
לא
max_points_in_geometry integer
3 ... 1048576
לא
max_prepared_stmt_count integer
‫- MySQL 5.6 ו-5.7: 0 ... 1048576
‫- MySQL 8.0 ואילך: 0 ... 4194304
לא
max_seeks_for_key integer
1 ... 9223372036854775807
לא
max_sort_length integer
4 ... 8388608
לא
max_sp_recursion_depth integer
0 ... 255
לא
max_user_connections integer
0 ... 4294967295
לא
max_write_lock_count integer
1 ... 9223372036854775807
לא
min_examined_row_limit integer
0 ... 4294967295
ברירת מחדל: 0
לא
myisam_data_pointer_size integer
2...7
ברירת מחדל: 6
לא
myisam_max_sort_file_size integer
0...9223372036853727232
ברירת מחדל: 9223372036853727232
לא
myisam_mmap_size integer
7...9223372036854775807
ברירת מחדל: 9223372036854775807
כן
myisam_sort_buffer_size integer
4096...4294967295
ברירת מחדל: 8388608
לא
myisam_stats_method string
"nulls_unequal, nulls_equal, nulls_ignored"
ברירת מחדל: nulls_unequal
לא
myisam_use_mmap boolean
on | off
ברירת מחדל: off
לא
mysql_native_password_proxy_users boolean
on | off
ברירת מחדל: off
לא
net_buffer_length integer
1024 ... 1048576
ברירת מחדל: 16384
לא
net_read_timeout integer
30 ... 4294967295
לא
net_retry_count integer
10 ... 4294967295
לא
net_write_timeout integer
60 ... 4294967295
לא
ngram_token_size integer
1 ... 10
ברירת מחדל: 2
כן
optimizer_prune_level integer
0 ... 1
לא
optimizer_search_depth integer
0 ... 62
לא
optimizer_switch multi-value repeated string

בקטע טיפים מופיע מידע נוסף על דגלים עם כמה ערכים.

לא
optimizer_trace multi-value repeated string
enabled=on, enabled=off, one_line=on, one_line=off

בקטע טיפים מופיע מידע נוסף על דגלים עם כמה ערכים.

לא
optimizer_trace_features multi-value repeated string

בקטע טיפים מופיע מידע נוסף על דגלים עם כמה ערכים.

לא
optimizer_trace_max_mem_size integer
0 ... 9223372036854775807
לא
optimizer_trace_offset integer
-9223372036854775808 ... 9223372036854775807
לא
parser_max_mem_size integer
10000000 ... 9223372036854775807
לא
password_history integer 0-4294967295
default: 0
לא
password_require_current boolean on | off
ברירת מחדל: off
לא
password_reuse_interval integer 0-4294967295
default: 0
לא
performance_schema boolean
on | off
ברירת מחדל: off ל-MySQL 5.6, ‏ 5.7
ברירת מחדל: off למכונות MySQL 8.0 ואילך עם זיכרון RAM קטן מ-12GB
ברירת מחדל: on למכונות MySQL 8.0 ואילך עם זיכרון RAM גדול מ-12GB או שווה לו

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_accounts_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_digests_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_error_size integer
0 ... 1048576
כן
performance_schema_events_stages_history_long_size integer
-1 ... 1048576
כן
performance_schema_events_stages_history_size integer
-1 ... 1024

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_statements_history_long_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_statements_history_size integer
-1 ... 1024

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_transactions_history_long_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_transactions_history_size integer
-1 ... 1024

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_waits_history_long_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_events_waits_history_size integer
-1 ... 1024

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_hosts_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_cond_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_cond_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_digest_length integer
0 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_digest_sample_age integer
0 ... 1048576
ברירת מחדל: 60
לא
performance_schema_max_file_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_file_handles integer
0 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי pperformance_schema.

כן
performance_schema_max_file_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_index_stat integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_logger_classes integer
0 ... 200
ברירת מחדל: 80

למידע נוסף על דגלי performance_schema, קראו את הקטע טיפים.

כן
performance_schema_max_memory_classes integer
0 ... 1024

למידע נוסף על דגלי performance_schema, קראו את הקטע טיפים.

כן
performance_schema_max_metadata_locks integer
-1 ... 104857600

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_mutex_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_mutex_instances integer
-1 ... 104857600

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_prepared_statements_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_program_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_rwlock_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_rwlock_instances integer
-1 ... 104857600

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_socket_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_socket_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_sql_text_length integer
0 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_stage_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_statement_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_statement_stack integer
1 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_table_handles integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_table_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_table_lock_stat integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_thread_classes integer
0 ... 256

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_max_thread_instances integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_session_connect_attrs_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_setup_actors_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_setup_objects_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
performance_schema_show_processlist boolean
on | off
ברירת מחדל: off
לא
performance_schema_users_size integer
-1 ... 1048576

בקטע טיפים מופיע מידע נוסף על דגלי performance_schema.

כן
preload_buffer_size integer
1024 ... 1073741824
ברירת מחדל: 32768
לא
query_alloc_block_size integer
1024 ... 4294967295
לא
query_cache_limit integer
0 ... 223338299392

הדגל הזה לא זמין ל-MySQL 8.0 ואילך, כי המטמון של השאילתות הוצא משימוש החל מ-MySQL 5.7.20 והוסר ב-MySQL 8.0.

לא
query_cache_min_res_unit integer
0 ... 9223372036854775807

הדגל הזה לא זמין ל-MySQL 8.0 ואילך, כי המטמון של השאילתות הוצא משימוש החל מ-MySQL 5.7.20 והוסר ב-MySQL 8.0.

לא
query_cache_size integer
0 ... 223338299392

הדגל הזה לא זמין ל-MySQL 8.0 ואילך, כי המטמון של השאילתות הוצא משימוש החל מ-MySQL 5.7.20 והוסר ב-MySQL 8.0.

לא
query_cache_type enumeration
0 ... 2

הדגל הזה לא זמין ל-MySQL 8.0 ואילך, כי המטמון של השאילתות הוצא משימוש החל מ-MySQL 5.7.20 והוסר ב-MySQL 8.0.

כן
query_cache_wlock_invalidate boolean
on | off

הדגל הזה לא זמין ל-MySQL 8.0 ואילך, כי המטמון של השאילתות הוצא משימוש החל מ-MySQL 5.7.20 והוסר ב-MySQL 8.0.

לא
query_prealloc_size integer
8192 ... 9223372036854775807
לא
range_alloc_block_size integer
4096 ... 4294967295
לא
range_optimizer_max_mem_size integer
0 ... 9223372036854775807
לא
read_buffer_size integer
8192 ... 2147483647
לא
read_only boolean
on | off

אין השפעה על רפליקות.

לא
read_rnd_buffer_size integer
1 ... 2147483647
לא
regexp_stack_limit integer
0 ... 2147483647
לא
regexp_time_limit integer
0 ... 2147483647
ברירת מחדל: 32
לא
replica_checkpoint_group integer
32 ... 524280
ברירת המחדל היא 512.

הדגל הזה לא משפיע על רפליקות שלא מופעל בהן ריבוי הליכי משנה.

לא
replica_checkpoint_period integer
1 ... 4294967295
ברירת המחדל היא 300.

היחידה היא אלפיות השנייה.

לא
replica_compressed_protocol boolean
on | off
לא
replica_net_timeout integer
1 ... 31536000

היחידה היא שניות.

לא
replica_parallel_type enumeration
DATABASE, LOGICAL_CLOCK
ברירת המחדל:
‫MySQL 8.0.26 או גרסה קודמת: DATABASE
‫MySQL 8.0.27 או גרסה חדשה יותר: LOGICAL_CLOCK

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

לא
replica_parallel_workers integer

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

לא
replica_pending_jobs_size_max integer

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

לא
replica_preserve_commit_order boolean

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

לא
replica_skip_errors string
ברירת מחדל: OFF

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

כן
replica_sql_verify_checksum boolean
on | off
לא
replica_transaction_retries integer
0 ... 9223372036854775807
לא
replica_type_conversions String
ערכים: ALL_LOSSY,‏ ALL_NON_LOSSY,‏ ALL_SIGNED,‏ ALL_UNSIGNED
לא
replicate_do_db string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
replicate_do_table string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
replicate_ignore_db string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
replicate_ignore_table string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
replicate_wild_do_table string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
replicate_wild_ignore_table string

מידע נוסף על השימוש בדגל הזה זמין בקטע מסנני רפליקציה.

לא
rpl_read_size integer
8192 ... 4294959104
ברירת מחדל: 8192
לא
schema_definition_cache integer
256 ... 524288
ברירת מחדל: 256
לא
session_track_gtids string
OFF | OWN_GTID | ALL_GTIDS
ברירת מחדל: OFF
לא
session_track_schema boolean
on | off
ברירת מחדל: on
לא
session_track_state_change boolean
on | off
ברירת מחדל: off
לא
session_track_transaction_info string
OFF | STATE | CHARACTERISTICS
ברירת מחדל: OFF
לא
sha256_password_proxy_users boolean
on | off
ברירת מחדל: off
לא
show_create_table_verbosity boolean
on | off
ברירת מחדל: off
לא
show_compatibility_56 boolean
on | off

נתמך רק ב-MySQL 5.7.

לא
skip_character_set_client_handshake boolean
on | off
ברירת מחדל: off
כן
skip_show_database flag
on | off
כן
slave_checkpoint_group integer
32 ... 524280
ברירת המחדל היא 512.

הדגל הזה לא משפיע על רפליקות שלא מופעל בהן ריבוי הליכי משנה.

לא
slave_checkpoint_period integer
1 ... 4294967295
ברירת המחדל היא 300.

היחידה היא אלפיות השנייה.

לא
slave_compressed_protocol boolean
on | off
לא
slave_net_timeout integer
1 ... 31536000

היחידה היא שניות.

לא
slave_parallel_type enumeration
DATABASE, LOGICAL_CLOCK
ברירת המחדל:
‫MySQL 8.0.26 או גרסה קודמת: DATABASE
‫MySQL 8.0.27 או גרסה חדשה יותר: LOGICAL_CLOCK

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

לא
slave_parallel_workers integer

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

לא
slave_preserve_commit_order boolean

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

לא
slave_pending_jobs_size_max integer

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

לא
slave_skip_errors string
ברירת מחדל: OFF

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

כן
slave_sql_verify_checksum boolean
on | off
לא
slave_transaction_retries integer
0 ... 9223372036854775807
לא
slave_type_conversions string
ערכים: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED
לא
slow_launch_time Integer
0 ... 31536000
ברירת מחדל: 2
לא
slow_query_log boolean
on | off

בקטע טיפים מופיע מידע נוסף על יומני שאילתות איטיות.

לא
sort_buffer_size integer
32768 ... 9223372036854775807
לא
source_verify_checksum boolean
on | off
ברירת המחדל: off
לא
sql_generate_invisible_primary_key boolean
on | off
ברירת המחדל: off
לא
sql_mode string

במסמכי התיעוד של MySQL, בקטע Server SQL Modes, מפורטים הערכים המותרים, כולל מצבים משולבים כמו ANSI. אין תמיכה ב-NO_DIR_IN_CREATE.

ב-Cloud SQL ל-MySQL אי אפשר להשתמש בערכים ריקים בדגל sql_mode. במקום להשתמש בערך ריק, צריך להגדיר את הדגל הזה למצב NO_ENGINE_SUBSTITUTION.

לא
sql_require_primary_key boolean
on | off
ברירת מחדל: off
לא
sql_select_limit integer 0...9223372036854775807
ברירת מחדל: 18446744073709551615

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
stored_program_cache integer
16 ... 524288
לא
stored_program_definition_cache integer
256 ... 524288
ברירת מחדל: 256
לא
sync_binlog integer
0 ... 4294967295

הגדרת ברירת המחדל היא 1, והיא מאפשרת לסנכרן את היומן הבינארי לדיסק לפני שהטרנזקציות נשלחות.

אם מקדמים רפליקה כשהדגל הזה מופעל, הדגל מוסר באופן אוטומטי, וכתוצאה מכך הרפליקה המקודמת מקבלת עמידות מלאה כברירת מחדל. כדי להשתמש בדגל הזה עם רפליקה שקודמה, אפשר לעדכן את הדגל ברפליקה אחרי הקידום.

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
sync_master_info integer
0 ... 4294967295
ברירת המחדל: 10000
לא
sync_relay_log integer
0 ... 4294967295
ברירת מחדל: 10000
לא
sync_relay_log_info integer
0 ... 4294967295
ברירת מחדל: 10000
לא
sync_source_info integer
0 ... 4294967295
ברירת המחדל: 10000
לא
sysdate_is_now boolean
on | off
ברירת מחדל: off
כן
table_definition_cache integer
400 ... 524288
לא
tablespace_definition_cache integer
256 ... 524288
ברירת מחדל: 256
לא
table_open_cache integer
1 ... 524288
לא
table_open_cache_instances integer
1 ... 64
כן
table_open_cache_triggers integer
1 ... 524288
ברירת המחדל: 524288
לא
temptable_max_mmap integer
0 ... 68719476736

ערכי ברירת מחדל:

  • ‫MySQL 8.0 וגרסאות קודמות: 1073741824
  • ‫MySQL 8.4 ואילך: 0
לא
temptable_max_ram integer
2097152 ... 68719476736
ברירת מחדל: 1073741824
לא
thread_cache_size integer
0 ... 16384
לא
thread_stack integer
131072 ... 9223372036854775807
כן
tls_version String

גרסה 5.7 עד גרסה 8.0.27: TLSv1, TLSv1.1
גרסה 8.0.28 ואילך: TLSv1.2
גרסה 5.7: כן

גרסה 8.0 ואילך: לא
tmp_table_size integer
1024 ... 67108864

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
transaction_alloc_block_size integer
1024 ... 131072
לא
transaction_isolation enumeration
READ-UNCOMMITTED | READ-COMMITTED | REPEATABLE-READ | SERIALIZABLE
כן
transaction_prealloc_size integer
1024 ... 131072
לא
transaction_write_set_extraction enumeration

מידע נוסף על השימוש בדגל הזה ועל הערכים הקבילים שלו זמין במאמר הגדרת שכפול מקביל. הדגל הזה לא נתמך ב-MySQL 8.4.

לא
unique_checks boolean
on | off
ברירת מחדל: on

מידע נוסף על הדגל הזה מופיע בקטע טיפים.

לא
updatable_views_with_limit integer
0 ... 1
לא
wait_timeout integer
1 ... 31536000
לא
windowing_use_high_precision boolean
on | off
ברירת מחדל: on
לא

שמות של אזורי זמן

בקטע הזה מוסבר על שמות אזורי הזמן שנתמכים ב-Cloud SQL ל-MySQL.

בטבלה שבקטע הזה מוצגים הפרטים הבאים:

  • שם אזור הזמן: השם שנתמך ב-Cloud SQL ל-MySQL.
  • STD: הפרש השעות באזור הזמן בשעון רגיל (STD).
  • DST: ההסטה של אזור הזמן בשעון קיץ (DST).
  • שמות נרדפים: שמות של אזורי זמן שאתם רוצים להשתמש בהם, אבל הם לא נתמכים ב-Cloud SQL ל-MySQL. במצב כזה, צריך להשתמש בשם של אזור הזמן המתאים.
שם אזור הזמן STD מס שירותים דיגיטליים (DTS) שמות של מילים נרדפות
אפריקה/קהיר +02:00 +02:00 מצרים
אפריקה/קזבלנקה +01:00 +00:00
אפריקה/הארארה +02:00 +02:00 אפריקה/מפוטו
אפריקה/מונרוביה +00:00 +00:00
אפריקה/ניירובי +03:00 +03:00 Africa/Addis_Ababa
Africa/Asmera
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Kampala
Africa/Mogadishu
Indian/Antananarivo
Indian/Comoro
Indian/Mayotte
אפריקה/טריפולי +02:00 +02:00 לוב
אפריקה/וינדהוק +02:00 +02:00
אמריקה/אראגואינה ‎−03:00 ‎−03:00
אמריקה/אסונסיון ‎−04:00 ‎−03:00
אמריקה/בוגוטה ‎−05:00 ‎−05:00
אמריקה/בואנוס איירס ‎−03:00 ‎−03:00 אמריקה/ארגנטינה/בואנוס איירס
אמריקה/קראקס ‎−04:00 ‎−04:00
אמריקה/שיקגו ‎−06:00 ‎−05:00
אמריקה/צ'יוואווה ‎−07:00 ‎−06:00 אמריקה/אוחינאגה
אמריקה/קויאבה ‎−04:00 ‎−04:00
אמריקה/דנבר ‎−07:00 ‎−06:00 America/Shiprock
Navajo
MST7MDT
US/Mountain
אמריקה/דטרויט ‎−05:00 ‎−04:00
אמריקה/פורטלזה ‎−03:00 ‎−03:00
אמריקה/גואטמלה ‎−06:00 ‎−06:00
אמריקה/הליפקס ‎−04:00 ‎−03:00 קנדה/אטלנטי
America/Los_Angeles ‎−08:00 ‎−07:00
אמריקה/מנאוס ‎−04:00 ‎−04:00 ברזיל, מערב
אמריקה/מטמורוס ‎−06:00 ‎−05:00
אמריקה/מקסיקו סיטי ‎−06:00 ‎−05:00
אמריקה/מונטריי ‎−06:00 ‎−05:00
אמריקה/מונטווידאו ‎−03:00 ‎−03:00
America/New_York ‎−05:00 ‎−04:00
אמריקה/פיניקס ‎−07:00 ‎−07:00 ארה"ב/אריזונה
MST
אמריקה/קרסטון
אמריקה/סנטיאגו ‎−04:00 ‎−03:00 צ'ילה/יבשת אמריקה
אמריקה/סאו פאולו ‎−03:00 ‎−03:00
אמריקה/טיחואנה ‎−08:00 ‎−07:00 Mexico/BajaNorte
America/Ensenada
America/Santa_Isabel
אסיה/עמאן +02:00 +03:00
אסיה/אשגבאט +05:00 +05:00 אסיה/אשגבאט
אסיה/בגדד +03:00 +03:00
אסיה/באקו +04:00 +04:00
אסיה/בנגקוק +07:00 +07:00 אסיה/פנום פן
אסיה/ויינטיאן
אסיה/ביירות +02:00 +03:00
אסיה/כלכותה +05:30 +05:30 אסיה/כלכותה
אסיה/דמשק +02:00 +03:00
אסיה, דאקה +06:00 +06:00 אסיה/דאקה
אסיה/אירקוצק +08:00 +08:00
אסיה, ירושלים +02:00 +03:00 אסיה/תל אביב
ישראל
אסיה/קאבול +04:30 +04:30
אסיה/קראצ'י +05:00 +05:00
אסיה/קטמנדו +05:45 +05:45 אסיה/קטמנדו
אסיה/כלכותה +05:30 +05:30
אסיה/קראסנויארסק +07:00 +07:00
אסיה/מאגאדן +11:00 +11:00
אסיה/מוסקט +04:00 +04:00 אסיה, דובאי
אסיה/נובוסיבירסק +07:00 +07:00
אסיה/ריאד +03:00 +03:00 אסיה/כווית
אנטארקטיקה/שיואה
אסיה/עדן
אסיה, סיאול +09:00 +09:00 ROK
אסיה, שנגחאי +08:00 +08:00 אסיה/צ'ונגצ'ינג
אסיה/צ'ונגקינג
אסיה/חרבין
PRC
אסיה, סינגפור +08:00 +08:00 סינגפור
אסיה/טאיפיי +08:00 +08:00 ROC
אסיה/טהרן +03:30 +04:30 איראן
אסיה, טוקיו +09:00 +09:00 יפן
אסיה/אולן בטור +08:00 +08:00 אסיה/אולן בטור
אסיה/ולדיווסטוק +10:00 +10:00
אסיה/יקוטסק +09:00 +09:00
אסיה/ירוואן +04:00 +04:00
אטלנטי/האיים האזוריים ‎−01:00 +00:00
אוסטרליה/אדלייד +09:30 +10:30 אוסטרליה/דרום
אוסטרליה/בריסביין +10:00 +10:00 אוסטרליה/קווינסלנד
אוסטרליה/דרווין +09:30 +09:30 אוסטרליה/צפון
אוסטרליה/הוברט +10:00 +11:00 אוסטרליה/קארי
אוסטרליה/טסמניה
אוסטרליה/פרת' +08:00 +08:00 אוסטרליה/מערב
אוסטרליה/סידני +10:00 +11:00 אוסטרליה/ניו סאות' ויילס
אוסטרליה/טריטוריית הבירה האוסטרלית
אוסטרליה/קנברה
ברזיל, מזרח ‎−03:00 ‎−03:00 אמריקה/סאו פאולו
קנדה/ניופאונדלנד ‎−03:30 ‎−02:30 אמריקה/סנט ג'ונס
קנדה/ססקצ'ואן ‎−06:00 ‎−06:00 אמריקה/רג'יינה
קנדה/יוקון ‎−07:00 ‎−07:00 אמריקה/וייטהורס
אירופה/אמסטרדם +01:00 +02:00
אירופה/אתונה +02:00 +03:00
אירופה/דבלין +01:00 +00:00 Eire
אירופה/הלסינקי +02:00 +03:00 אירופה/מריהאמן
אירופה/איסטנבול +03:00 +03:00 טורקיה
Asia/Istanbul
אירופה/קלינינגרד +02:00 +02:00
אירופה/מדריד +01:00 +02:00
אירופה/מוסקבה +03:00 +03:00 W-SU
אירופה, פריז +01:00 +02:00 MET
CET
אירופה/פראג +01:00 +02:00 אירופה/ברטיסלבה
אירופה/סרייבו +01:00 +02:00 אירופה/בלגרד
אירופה/לובליאנה
אירופה/פודגוריצה
אירופה/סקופיה
אירופה/זאגרב
האוקיינוס השקט, אוקלנד +12:00 +13:00 NZ
Antarctica/McMurdo
Antarctica/South_Pole
האוקיינוס השקט/פיג'י +12:00 +13:00
האוקיינוס השקט/גואם +10:00 +10:00 האוקיינוס השקט/סאיפאן
האוקיינוס השקט/הונולולו ‎-10:00 ‎-10:00 ארה"ב, הוואי
האוקיינוס השקט/ג'ונסטון
HST
האוקיינוס השקט/סמואה ‎-11:00 ‎-11:00 האוקיינוס השקט/פאגו פאגו
ארה"ב/סמואה
ארה"ב, אלסקה ‎−09:00 ‎−08:00 America/Anchorage
America/Juneau
America/Metlakatla
America/Nome
America/Sitka
America/Yakutat
ארה"ב, מרכז ‎−06:00 ‎−05:00 אמריקה/שיקגו
ארה"ב, החוף המזרחי ‎−05:00 ‎−04:00 America/New_York
ארה"ב, מזרח אינדיאנה ‎−05:00 ‎−04:00 America/Indiana/Indianapolis
America/Indianapolis
America/Fort_Wayne
ארה"ב, אזור ההרים ‎−07:00 ‎−06:00 אמריקה/דנבר
ארה"ב, החוף המערבי ‎−08:00 ‎−07:00 America/Los_Angeles
UTC +00:00 +00:00 Etc/UTC
Etc/UCT
Etc/Universal
Etc/Zulu

יכול להיות שתצטרכו לרענן את טבלאות אזורי הזמן ב-Cloud SQL כדי לקבל את הנתונים העדכניים. לדוגמה, מדינה יכולה לעבור מאזור זמן של שעון קיץ לאזור זמן של שעון חורף, או להוסיף אזור זמן חדש.

בכל גרסה של סוכן שירות קריטי (CSA) ל-Cloud SQL, טבלאות אזורי הזמן מתעדכנות עם הנתונים העדכניים ביותר. במצב כזה, המכונות של הרפליקות מתרעננות מחוץ לחלון הזמן לתחזוקה. במהלך חלון הזמן לתחזוקה, המכונות הראשיות מתרעננות.

אתם יכולים לחכות לחלון הזמן הרגיל לתחזוקה של גרסת ה-CSA, או לבצע תחזוקה בשירות עצמי כדי לרענן את טבלאות אזורי הזמן עם הנתונים העדכניים. למידע נוסף על הצגת גרסאות התחזוקה הזמינות, ראו קביעת גרסת התחזוקה המיועדת.

טיפים לעבודה עם דגלים

general_log, slow_query_log

כדי שיומני general או slow query יהיו זמינים, מפעילים את הדגל המתאים ומגדירים את הדגל log_output לערך FILE. כך פלט היומן יהיה זמין באמצעות מציג היומנים במסוף Google Cloud . שימו לב שחלים חיובים על רישום ביומן של Google Cloud Observability. כדי לצמצם את עלות האחסון של המכונה, היומנים של general ו-slow query בדיסק של המכונה עוברים רוטציה כשקובץ היומן ישן יותר מ-24 שעות (ולא בוצעו בו שינויים במהלך פרק הזמן הזה) או כשהגודל שלו עולה על 100MB. קבצי יומן ישנים נמחקים באופן אוטומטי אחרי הרוטציה.

אם log_output מוגדר ל-NONE, אין לכם גישה ליומנים. אם מגדירים את log_output לערך TABLE, פלט היומן ממוקם בטבלה במסד הנתונים של מערכת mysql. הוא עלול לתפוס הרבה מקום בכונן. אם הטבלה הזו גדלה, היא יכולה להשפיע על זמן ההפעלה מחדש של המכונה או לגרום למכונה לאבד את הכיסוי של הסכם רמת השירות (SLA). לכן, לא מומלץ להשתמש באפשרות TABLE. בנוסף, תוכן היומן לא זמין ב-Logs Explorer והוא לא עובר רוטציה. במקרה הצורך, אפשר לקצר את טבלאות היומנים באמצעות ה-API. מידע נוסף זמין בדף העזרה של instances.truncateLog.

expire_logs_days, binlog_expire_logs_seconds
אם מפעילים שחזור מערכת מנקודה מסוימת בזמן (PITR), תקופת התפוגה של היומנים הבינאריים נקבעת לפי הערך הנמוך יותר מבין תקופת השמירה של יומן העסקאות והערכים של הדגלים האלה. אתם יכולים להשתמש בדגלים האלה כדי לקבוע כמה זמן היומנים הבינאריים יישמרו ברפליקות. הדגל expire_logs_days הוסר מ-MySQL 8.4 ואילך. מידע נוסף מופיע במאמר שמירת יומן העסקאות.
innodb_buffer_pool_size

הערך של הדגל הזה הוא הגודל בבייטים של מאגר המאגרים הזמניים. גודל מאגר המאגרים תמיד צריך להיות שווה לערך שמתקבל כשמכפילים את innodb_buffer_pool_chunk_size ב-innodb_buffer_pool_instances, או כפולה שלו. אם משנים את גודל מאגר הנתונים הזמני לערך שלא שווה ל-innodb_buffer_pool_chunk_size כפול innodb_buffer_pool_instances או לכפולה שלו, Cloud SQL משנה את גודל מאגר הנתונים הזמני באופן אוטומטי. אי אפשר להפעיל את הדגל הזה במכונות עם פחות מ-3,840MiB‎ של זיכרון RAM.

אי אפשר להגדיר את הדגל הזה למכונות עם ליבה משותפת (f1_micro ו-g1_small). כדי לשנות את הדגל הזה ב-MySQL 5.6, צריך להפעיל מחדש.

ב-Cloud SQL, ערכי ברירת המחדל, המינימום והמקסימום המותרים של הדגל innodb_buffer_pool_size תלויים בזיכרון של המכונה. אפשר לחשב את הערכים האלה באופן גס כאחוז מה-RAM של המכונה. כברירת מחדל, הערך של הדגל הזה בדרך כלל מוגדר קרוב לערך המקסימלי המותר. אחוז ההקצאה המקסימלי המותר גדל בהתאם לגודל המכונה. הערך המינימלי המותר הוא בדרך כלל כ-20% מה-RAM של המכונה.

ערכים משוערים של הדגל הזה:

טווח זיכרון ה-RAM של המכונה% מינימוםברירת המחדל %מקסימום %
‫0 עד 4.0GB של RAM~34%
‫4.0GB עד 7.5GB~20%~34%~34%
7.5GB - 12GB~20%~52%~52%
12GB - 24GB~20%~67%~67%
‫24GB או יותר~20%~72%~72%

הערכים המדויקים עשויים להשתנות. כשההגדרה מאגר מאגרים מנוהל מופעלת, היא מבצעת שינויים ב-innodb_buffer_pool_size שלא משתקפים במסוף Google Cloud . כדי לחשב את הערך הנוכחי של המכונה, אפשר להריץ את השאילתה:

  show global variables like 'innodb_buffer_pool_size';
  

לעיון, הערכים המינימליים המותרים, ברירת המחדל והערכים המקסימליים המותרים מסופקים לסוגי המכונות הבאים.

סוג המכונה זיכרון RAM של המכונה (GB) מינימום (GB)
(% מהסה"כ)
ברירת מחדל (GB)
(% מהסה"כ)
מקסימום (GB)
(% מהסה"כ)
db-f1-micro 0.6 - 0.053 -
db-g1-small 1.7 - 0.625 -
db-custom-1-3840 3.75 0.875
(23%)
1,375
(37%)
1,375
(37%)
db-custom-2-7680 7.5 ‫1.5
(20%)
‫4
(53%)
‫4
(53%)
db-custom-4-15360 15 ‫3
(20%)
10.5
(70%)
10.5
(70%)
db-custom-8-30720 30 ‫6
(20%)
‫22
(73%)
‫22
(73%)
db-custom-16-61440 60 ‫12
(20%)
‫44
(73%)
‫44
(73%)
db-custom-32-122880 120 ‫24
(20%)
87
(73%)
87
(73%)
db-custom-64-245760 240 ‫48
(20%)
173
(72%)
173
(72%)
db-custom-96-368640 360 ‫72
(20%)
‫260
(72%)
‫260
(72%)
db-custom-2-13312 13 ‫3
(23%)
‫9
(69%)
‫9
(69%)
db-custom-4-26624 26 ‫6
(23%)
‫19
(73%)
‫19
(73%)
db-custom-8-53248 52 ‫11
(21%)
‫38
(73%)
‫38
(73%)
db-custom-16-106496 104 ‫21
(20%)
75
(72%)
75
(72%)
db-custom-32-212992 208 ‫42
(20%)
‫150
(72%)
‫150
(72%)
db-custom-64-425984 416 84
(20%)
‫300
(72%)
‫300
(72%)
db-custom-96-638976 624 125
(20%)
‫450
(72%)
‫450
(72%)

אם השימוש בזיכרון גבוה במכונה ומתרחשים אירועים של מחסור בזיכרון (OOM), אפשר להפעיל את הדגל innodb_cloudsql_managed_buffer_pool כדי להפחית באופן זמני את הערך של innodb_buffer_pool_size. מידע נוסף מופיע במאמר הפעלה של מאגר מאגרים מנוהל.

כשמאגר מאגרים מנוהל מבצע התאמות לערך של innodb_buffer_pool_size, השינויים לא משתקפים בערך הדגל שמוצג במסוף Google Cloud . כדי לראות את הערך הנוכחי של innodb_buffer_pool_size כשמאגר ה-buffer המנוהל מופעל, אפשר לשלוח שאילתה על ערך הדגל באמצעות לקוח MySQL:
show global variables like 'innodb_buffer_pool_size';
innodb_cloudsql_optimized_write
הדגל הזה זמין רק למכונות של Cloud SQL Enterprise Plus. ערך ברירת המחדל הוא `ON`. הדגל הזה משפר את ביצועי הכתיבה על ידי אופטימיזציה של אלגוריתם ה-flush, שליטה במגבלות ה-flush והתאמת הפעילות ברקע כדי לתת עדיפות לפעולות הכתיבה של מסד הנתונים. בנוסף, הדגל הזה מפעיל אלגוריתם משופר לשחזור אחרי קריסה כדי לקצר את זמן השחזור, ומשתמש באופן דינמי ברוחב הפס של קלט/פלט בדיסק שלא נמצא בשימוש כדי להאיץ את החימום של מאגר המאגרים הזמניים. ברוב המקרים, הפעלת הדגל הזה משפרת את הביצועים, למשל שיפור קצב העברת הנתונים וצמצום זמן האחזור. עם זאת, אם פעולות הכתיבה במסד הנתונים גורמות לעומס כבד מאוד על השרת, הדגל יכול לעכב חלק מהפעילויות ברקע. העיכוב הזה יכול לגרום לעלייה קלה בשימוש בדיסק, שפוחתת באופן אוטומטי אחרי שהעומס פוחת. כברירת מחדל, הדגל innodb_cloudsql_optimized_write מופעל בכל המכונות החדשות והמשודרגות של Cloud SQL Enterprise Plus. במכונות קיימות של Cloud SQL Enterprise Plus, הדגל הזה מופעל אחרי שעדכון התחזוקה הרלוונטי מוחל. אם אתם צריכים להשבית את הדגל, הריצו את הפקודה הבאה.
gcloud sql instances patch INSTANCE_NAME \
 --database-flags="innodb_cloudsql_optimized_write=OFF"
כדי לשנות את הערך של הדגל צריך להפעיל מחדש את המכונה.
innodb_file_per_table

בכל הגרסאות של MySQL מ-5.6 ואילך, ערך ברירת המחדל הוא ON.

innodb_flush_log_at_trx_commit, sync_binlog

כדי לעמוד באופן מלא בתקן ACID ולשמור על עמידות ועקביות בהגדרת הרפליקציה, צריך להגדיר את הדגלים innodb_flush_log_at_trx_commit ו-sync_binlog לערך ברירת המחדל 1. אם משנים את ערך ברירת המחדל, העמידות עלולה לרדת, מה שעלול להוביל לחוסר עקביות בין המכונה הראשית לבין הרפליקות. לכן, המכונה לא נכללת יותר בכיסוי של הסכם רמת השירות (SLA). בנוסף, יכול להיות שיקרה אחד מהדברים הבאים:

  • אובדן נתונים במצבים מסוימים, כמו קריסה של מכונה וירטואלית או יתירות כשל במכונה אזורית עם זמינות גבוהה
  • נתונים לא מסונכרנים ביומן הבינארי ובקובצי הנתונים של InnoDB
  • אובדן נתונים או כשל ב-PITR
  • חוסר עקביות בנתונים בין מכונה ראשית לבין הרפליקות שלה
  • הפסקה ברפליקציה

אם מגדירים את הערך של הדגל innodb_flush_log_at_trx_commit או sync_binlog לערכים שאינם ברירת המחדל במכונות ראשיות, עצמאיות ו-HA, העמידות תפחת.

אם אתם צריכים ביצועים גבוהים יותר של עותקים לקריאה בלבד, מומלץ להגדיר את הערך של innodb_flush_log_at_trx_commit ל-2. אם עושים את זה, צריך להשבית את היומן הבינארי ברפליקה או להגדיר את sync_binlog לערך שהוא לא 1 כדי לשפר את הביצועים.

כדי לקבל את הביצועים הכי טובים ואת העמידות הכי נמוכה, אפשר גם להגדיר את הדגל innodb_flush_log_at_trx_commit לערך 0 ברפליקות לקריאה בלבד, אבל צריך לבצע את השינוי הזה בתצורה בזהירות. משתמשים ב-ה-CLI של gcloud או ב-Cloud SQL Admin API כדי להגדיר את הדגל innodb_flush_log_at_trx_commit לערך 0. אפשר להחיל את ההגדרה הזו רק על רפליקות לקריאה בלבד, ולא על מכונות ראשיות או עצמאיות. הערך 0 של הדגל הזה לא זמין במסוף Google Cloud . הפקודה של ה-CLI של gcloud שבה משתמשים למטרה הזו היא בפורמט הבא, שבו צריך לכלול את כל ערכי הדגלים הנוכחיים:

gcloud sql instances patch INSTANCE_NAME \
  --database-flags= FLAG1=VALUE1, FLAG2=VALUE2, innodb_flush_log_at_trx_commit=0
  

יכול להיות ש-Cloud SQL ישנה באופן זמני את ערכי הדגלים innodb_flush_log_at_trx_commit ו-sync_binlog לברירת המחדל בזמן ביצוע הגיבוי. זה עלול לגרום לירידה בביצועים בזמן הגיבוי. כדי למנוע את ההשפעה על המכונה, אפשר לשנות את חלון הגיבוי לזמן שבו השימוש במכונה נמוך. מידע נוסף זמין במאמר יצירה וניהול של גיבויים אוטומטיים ועל פי דרישה.

innodb_flush_log_at_timeout

‫innodb_flush_log_at_timeout מאפשר לשנות את תדירות הניקוי של הדפים כדי להימנע מהשפעה על הביצועים של ביצוע שינויים בקבוצת יומנים בינאריים. הגדרת ברירת המחדל היא פעם בשנייה.

ב-Cloud SQL, הדגל הזה הורחב כדי לתמוך בציון תקופה במיקרו-שניות.

דוגמאות:

  • ‫0.001 כדי לציין אלפית שנייה אחת
  • ‫0.0001 כדי לציין 100 מיקרו-שניות
  • ‫12.5 כדי לציין 12.5 שניות
  • ‫12.005 כדי לציין 12 שניות ו-5 אלפיות השנייה
  • ‫0.005100 כדי לציין 5 אלפיות השנייה ו-100 מיקרו-שניות

בעומסי עבודה מסוימים, יכול להיות ששימוש ברמת פירוט של שנייה שלמה לניקוי דפים לא יהיה מקובל מבחינת אובדן פוטנציאלי של טרנזקציות. במקום זאת, אפשר לרוקן דפים ברמת פירוט של מיקרו-שניות כדי לשמור על הביצועים בלי לפגוע באופן משמעותי בעמידות.

תקופות הזמן במיקרו-שניות של הדגל innodb_flush_log_at_timeout רלוונטיות רק כשהדגל innodb_flush_log_at_trx_commit של העמידות מוגדר לערך 2.

ניקוי הדפים יכול לקרות בתדירות גבוהה או נמוכה יותר מהערך שצוין בשביל innodb_flush_log_at_timeout, והערך הוא לא הגבול העליון.

innodb_redo_log_capacity, innodb_log_file_size

בגרסה 8.4 ומטה של Cloud SQL ל-MySQL, אם מגדירים ערך לדגל innodb_redo_log_capacity, המערכת מתעלמת מהערך שמוגדר לדגל innodb_log_file_size.

אם לא מגדירים ערכים לדגלים innodb_redo_log_capacity או innodb_log_file_size, ‏Cloud SQL משתמש בערך ברירת המחדל של הדגל innodb_redo_log_capacity, או 104857600 (100MB).

אם לא מגדירים את הדגל innodb_redo_log_capacity, אבל מגדירים את הדגל innodb_log_file_size, הערך של גודל יומן ה-redo של innodb מחושב לפי innodb_log_file_size * innodb_log_file_in_group. לדוגמה, אם מגדירים את innodb_log_file_size לערך של 10GB וערך ברירת המחדל של innodb_log_file_in_group הוא 2, הערך בפועל של גודל יומן ה-redo של innodb הוא 20GB.

בגרסה 9.7 ואילך של Cloud SQL ל-MySQL, הדגלים innodb_log_file_size ו-innodb_log_file_in_group הוסרו מ-Cloud SQL. ערכי ברירת המחדל של הדגל innodb_redo_log_capacity מבוססים על המהדורה ועל קיבולת ה-RAM של המכונה, כפי שמפורט בטבלה הבאה.

מהדורת Cloud SQLRAMערך ברירת המחדל
Cloud SQL מהדורת Enterpriseכל גודל‫1GB
מהדורת Cloud SQL Enterprise Plusפחות מ-100GB‫1GB
מהדורת Cloud SQL Enterprise Plus>100 GB1.5GB
max_heap_table_size, tmp_table_size

ניצול יתר של זיכרון המכונה הזמין יכול לקרות אם מגדירים ערכים גבוהים מדי ל-tmp_table_size ול-max_heap_table_size ביחס למספר השאילתות שהמכונה מעבדת בו-זמנית. ניצול מלא של הזיכרון גורם לקריסה ולהפעלה מחדש של המכונה.

למידע נוסף על העבודה עם הדגלים האלה, קראו את המאמרים How MySQL Uses Internal Temporary Tables ו-The MEMORY Storage Engine.

performance_schema

אי אפשר להפעיל את הדגל הזה במכונות עם ליבת מעבד משותפת (פחות מ-3GB של RAM). אם מפעילים את הדגל הזה, אי אפשר לשנות את סוג המכונה לגודל שלא תומך בדגל. קודם צריך להשבית את הדגל.

במכונות MySQL 8.0 ואילך עם זיכרון RAM בנפח 12GB עד 15GB, ערך ברירת המחדל של performance_schema הוא on, אבל כלי ברירת המחדל של סכימת הביצועים מושבתים. מידע נוסף על כלי סכימת הביצועים שמוגדרים כברירת מחדל זמין במאמרים The setup_instruments Table (MySQL 8.0) ו- The setup_instruments Table (MySQL 8.4). אם רוצים להפעיל ולהשתמש בכלים של סכימת הביצועים במכונה עם זיכרון RAM בנפח של 12GB עד 15GB, צריך להגדיר באופן מפורש את הדגל performance_schema לערך on במקום להסתמך על ערך ברירת המחדל. במכונות MySQL מגרסה 8.0 ואילך עם זיכרון RAM של ‎≥15 GB, ערך ברירת המחדל של performance_schema הוא on, וכלי סכימת הביצועים שמוגדרים כברירת מחדל מופעלים.

event_scheduler

אירועים ב-MySQL, שנקראים גם אירועים מתוזמנים, הם משימות שאפשר לתזמן. אירועים מתוזמנים הם קבוצה של הצהרת SQL אחת או יותר שמוגדרות להפעלה במרווח זמן אחד או יותר. ערך ברירת המחדל של MySQL 5.7 הוא OFF, וערך ברירת המחדל של MySQL 8.0 ואילך הוא ON. ב-Cloud SQL אי אפשר להפעיל את הדגל הזה ברפליקות לקריאה בלבד, שבהן ערך ברירת המחדל הוא OFF. מידע נוסף על הדגל event_scheduler זמין במאמר event_scheduler.

אם הדגל event_scheduler מוגדר לערך ON ברפליקה לקריאה בלבד, יכולות להתרחש שגיאות בהתאם לסוג ההצהרות שמוגדרות באירועים:

  • אם האירוע המתוזמן הוא אירוע write ברפליקה לקריאה בלבד, הוא גורם לשגיאה כי רפליקות לקריאה בלבד הן לקריאה בלבד. מידע נוסף זמין במאמר רפליקות לקריאה בלבד.
  • אם האירוע המתוזמן מכיל פעולת עצירה, כמו kill, אז event_scheduler מחיל אותה על הרפליקה. הפעולה הזו מפסיקה את הרפליקציה ומוחקת את הרפליקה.

כדי למנוע שגיאות כאלה, Cloud SQL מוודא שהדגל event_scheduler מוגדר ל-OFF ברפליקות לקריאה בלבד. אם עותק לקריאה בלבד מקודם למכונה ראשית, המגבלה הזו מוסרת.

מידע נוסף על הגדרת event_scheduler זמין במאמר הגדרת דגלים לניהול מסד נתונים.

replica_skip_errors,slave_skip_errors
הגדרת הדגל replica_skip_errors או slave_skip_errors עלולה לגרום לבעיות ברפליקציה. באופן כללי, אם מתרחשת שגיאה במהלך ביצוע הצהרה, הרפליקציה נעצרת. אם משתמשים בדגל הזה, המערכת מדלגת על השגיאה וממשיכה ברפליקציה, מה שמוביל לחוסר עקביות בין המכונה הראשית לבין הרפליקה. בנוסף, זה יכול להקשות על פתרון בעיות ברפליקציה. ב-Cloud SQL מומלץ להשתמש בדגל הזה רק אם יש צורך. אם נתקלתם בשגיאות ברפליקציה, תוכלו לקרוא מידע נוסף על פתרון הבעיה בדף פתרון בעיות ב-Cloud SQL: רפליקציה.
character_set_client
character_set_connection
character_set_results
collation_connection
innodb_buffer_pool_dump_now
innodb_buffer_pool_load_abort
innodb_buffer_pool_load_now
innodb_ft_aux_table
foreign_key_checks
sql_select_limit
unique_checks
אי אפשר לבחור את הדגלים האלה ישירות במסוף Google Cloud או באמצעות ה-CLI של gcloud. כדי להשתמש בדגלים האלה, משתמשים בפקודה הבאה:
SET GLOBAL FLAG_NAME=FLAG_VALUE
כדי להשתמש בפקודה SET GLOBAL, צריך את ההרשאה CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN שניתנת לתפקיד cloudsqlsuperuser. הערה: ההרשאה CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN זמינה רק ב-MySQL 8.0 ל-Cloud SQL. מידע נוסף על מתן גישה עם הרשאות מיוחדות למשתמש ספציפי זמין במאמר מידע על משתמשי MySQL. ההתראות האלה לא נשמרות. כשיוצרים מחדש או מפעילים מחדש את המכונה של Cloud SQL, הגדרות הדגלים מתאפסות לערכי ברירת המחדל.
caching_sha2_password_proxy_users

משתמשים בדגל caching_sha2_password_proxy_users לקישוריות של משתמש proxy ב-MySQL 9.7. שיטת האימות mysql_native_password לא זמינה יותר ב-MySQL 9.7, ולכן אי אפשר להשתמש בדגל mysql_native_password_proxy_users.

הדגל caching_sha2_password_proxy_users קובע אם הפלאגין המובנה לאימות caching_sha2_password תומך במשתמשי שרת proxy. לדגל אין השפעה אלא אם משתנה המערכת check_proxy_users מופעל.

binlog_order_commits

ערך ברירת המחדל של הדגל binlog_order_commits הוא ON. ב-Cloud SQL מומלץ לא לשנות את ערך ברירת המחדל של הדגל הזה. אם ערך ברירת המחדל משתנה ל-OFF, העסקאות באותה קבוצת יומן בינארי יאושרו בסדר שונה מזה שבו הן נכתבו ביומן הבינארי. ההגדרה הזו משפיעה על הפעולות הבאות שמבצעות טרנזקציות לפי הסדר של היומן הבינארי:

  • רפליקציה: עלולה להוביל לחוסר עקביות בנתונים בין המקור לבין הרפליקות
  • Point-in-time-recovery: עלול להוביל לחוסר עקביות בנתונים בין המצב ששוחזר באמצעות PITR לבין המצב ההיסטורי
optimizer_switch,optimizer_trace,optimizer_trace_features

הערכים של דגלי האופטימיזציה הם ערכים מופרדים בפסיקים (CSV). אפשר להגדיר את הדגלים האלה באמצעות מסוף Google Cloud או ה-CLI של gcloud. מידע נוסף על הגדרת הדגל הזה באמצעות המסוף זמין במאמר הגדרת דגלים של מסדי נתונים. אם משתמשים ב-CLI של gcloud, אפשר לציין את הערך של הדגלים האלה בשתי דרכים:

כדי להגדיר כמה דגלי משנה של אופטימיזציה בפקודה אחת, משתמשים בפסיק כמפריד בין שמות הדגלים. אם מגדירים ערך של דגל משנה אחד באמצעות הפקודה ה-CLI של gcloud, הוא מחליף את כל דגלי המשנה שהוגדרו קודם.

לדוגמה, אם מריצים את הפקודה הבאה, הערך הצפוי של דגל המשנה batched_key_access מוגדר ל-on, וכל דגלי המשנה האחרים של optimizer_flags מוגדרים לערכי ברירת המחדל שלהם.

gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=batched_key_access=on

אם מריצים את הפקודה הבאה, הערך של דגל המשנה block_nested_loop מוגדר כ-on, וכל דגלי המשנה האחרים של optimizer_switch מוחלפים ומוגדרים לערכי ברירת המחדל שלהם.

gcloud sql instances patch my-instance --database-flags=^~^optimizer_switch=block_nested_loop=on

זה כולל את batched_key_access, שהוגדר ל-on על ידי הפקודה הקודמת. כדי לשמור את כל דגלי המשנה שהוגדרו בעבר ולהוסיף דגלים חדשים, צריך להוסיף את הערכים של כל דגלי המשנה שרוצים להגדיר כשמוסיפים דגל משנה חדש.

ב-Cloud SQL ל-MySQL 9.7, אתם יכולים לציין את הדגל hypergraph_optimizer=on כדי להפעיל את כלי האופטימיזציה של ההיפרגרף. מידע נוסף על אופטימיזציות שניתנות להחלפה ועל הכלי לאופטימיזציה של היפרגרף זמין במאמרים Switchable Optimizations ו-The hypergraph optimizer is now available in MySQL 9.7 Community Edition.

שינוי דגלי מערכת ב-Cloud SQL

כל שאר הדגלים של מערכת מסד הנתונים שלא מופיעים בקטע דגלים נתמכים נקראים דגלים מנוהלים. בחלק מהדגלים המנוהלים, Cloud SQL מגדיר את הדגל לערך שונה מהגדרת ברירת המחדל כדי להבטיח שמכונות Cloud SQL יפעלו באופן מהימן. אי אפשר לשנות את הערכים של דגלי המערכת האלה. ברשימה הבאה מוצגים דגלים מנוהלים עם הגדרה שאינה ברירת מחדל:
שם משתנה ב-Cloud SQL. הערות
binlog_format שאר העולם שונה רק ב-MySQL 5.6
binlog_error_action ABORT_SERVER שונה רק ב-MySQL 5.6
innodb_doublewrite_pages 64 רלוונטי ל-MySQL בגרסה 8.0.26 ואילך
innodb_file_format Barracuda שונה רק ב-MySQL 5.6
memlock TRUE
skip_name_resolve מופעל
relay_log_info_repository טבלה הוסרה ב-MySQL 8.4
relay_log_recovery מופעל
master_info_repository טבלה הוסרה ב-MySQL 8.4
rpl_semi_sync_master_enabled 1
rpl_semi_sync_master_timeout 3000
admin_address 127.0.0.1 שונה ב-MySQL 8.0 ואילך.
create_admin_listener_thread מופעל
port-open-timeout 120 שונה ב-MySQL 8.0 ואילך.
partial_revokes מופעל ‫MySQL מגרסה 8.0 ואילך. למידע נוסף על הדגל הזה, ראו דגל המערכת לביטול חלקי ב-MySQL 8.0.

דגל המערכת partial_revokes ב-MySQL מגרסה 8.0 ואילך

הדגל partial_revokes מאפשר להגביל את הגישה של המשתמשים לסכימה של מסד נתונים. ב-Cloud SQL ל-MySQL בגרסה 8.0 ואילך, הדגל partial_revokes מוגדר לערך ON. ההגדרה הזו מגבילה את השימוש בתווים כלליים לחיפוש כשמעניקים או מבטלים הרשאות משתמש לסכימות של מסדי נתונים ב-MySQL 8.0. מעדכנים את ההצהרה GRANT כך שתשתמש בשם המלא של הסכימה של מסד הנתונים במקום בתווים כלליים לחיפוש.

לדוגמה, אם תשתמשו בפקודה הבאה עם התו הכללי לחיפוש %\ כדי להעניק הרשאות למשתמש ב-MySQL 5.7, המשתמש יקבל הרשאות לכל מסדי הנתונים שמסתיימים ב-_foobar.

GRANT ALL PRIVILEGES ON `%\_foobar`.*  TO  'testuser'@'%';

לעומת זאת, ב-MySQL 8.0, המשתמשים יקבלו גישה רק למסד הנתונים שתואם בדיוק ל-%\_foobar.

יש שתי דרכים שונות לתת גישה למספר מסדי נתונים ב-MySQL 8.0 ואילך.

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

      grant select on test1_foobar.* to 'testuser'@'%';
      grant select on test2_foobar.* to 'testuser'@'%';
      grant select on test3_foobar.* to 'testuser'@'%';
    
  2. ב-partial_revokes, אתם יכולים להשתמש בפקודות grant ו-revoke כדי לתת למשתמשים הרשאות לכל הסכימות של מסד הנתונים, תוך הגבלת הגישה לכמה סכימות של מסד הנתונים.

      grant select on *.* to 'testuser'@'%';
      revoke select on test3_foobar.* from 'testuser'@'%';
    

    כך מעניקים גישה לכל הסכימות של מסד הנתונים, אבל מגבילים את הגישה ל-test3_foobar.*.

מסנני שכפול

אפשר להגדיר מסנני רפליקציה רק ברפליקות של Cloud SQL. כל מסנן רפליקציה מוגדר כדגל יחיד לכמה מסדי נתונים, כאשר כל שם של מסד נתונים מופרד באמצעות פסיק. אפשר להגדיר מסנן רפליקציה ברפליקה של Cloud SQL באמצעות המסוף או הפקודה הבאה:

gcloud sql instances patch REPLICA_NAME --database-flags=^~^REPLICATION_FILTER_NAME=DATABASE_NAME1,DATABASE_NAME, etc

מסנני שכפול לא תומכים בשמות של מסדי נתונים שמכילים פסיקים. הערך ^~^ בפקודה הקודמת נדרש לדגלים לניהול מסד נתונים שהם ערכים מופרדים בפסיקים.

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

  • אם הרפליקה לא תקינה, יכול להיות שנתונים שסוננו על ידי מסנני רפליקציה יופיעו ברפליקה, כי Cloud SQL משתמש בנתוני המקור מהרפליקה הראשית כדי לבנות מחדש את הרפליקה של המכונה.
  • אי אפשר להגדיר מסנני רפליקציה בסכימה mysql.
  • כללי הסינון של הרפליקציה לא חלים על ייצוא בלי שרת (serverless).

דגלים של Index advisor

ברשימה הבאה מפורטים הדגלים לניהול מסד נתונים שמשמשים את Cloud SQL ל-MySQL כדי להפעיל ולנהל תכונות ספציפיות ליועץ האינדקסים.

שם ההתרעה סוג
ערכים קבילים והערות
נדרשת
הפעלה מחדש?
cloudsql_index_advisor_auto_advisor_schedule string
ברירת מחדל: 00:00
לא
cloudsql_index_advisor_run_at_timestamp Datetime
ברירת מחדל: 00:00:00
לא

דגלים עם כינויים

ברשימה הבאה מופיעים שמות הדגלים שהשתנו בגרסאות 8.0.26 ואילך של Cloud SQL ל-MySQL.

שם הדגל שהוצא משימוש שם ההתרעה החדשה
log_slow_slave_statements log_slow_replica_statements
master_verify_checksum source_verify_checksum
slave_checkpoint_group replica_checkpoint_group
slave_checkpoint_period replica_checkpoint_period
slave_compressed_protocol replica_compressed_protocol
slave_net_timeout replica_net_timeout
slave_parallel_type replica_parallel_type
slave_parallel_workers replica_parallel_workers
slave_pending_jobs_size_max replica_pending_jobs_size_max
slave_preserve_commit_order replica_preserve_commit_order
slave_skip_errors replica_skip_errors
slave_sql_verify_checksum replica_sql_verify_checksum
slave_transaction_retries replica_transaction_retries
slave_type_conversions replica_type_conversions
sync_master_info sync_source_info

אם במכונה של Cloud SQL נעשה שימוש בשם דגל שהוצא משימוש, צריך לערוך את המכונה של Cloud SQL, למחוק את שם הדגל שהוצא משימוש ולהוסיף את הדגל החדש למכונה. מידע נוסף זמין במאמר הגדרת דגל לניהול מסד נתונים.

פתרון בעיות

שגיאה פתרון בעיות
אחרי שמפעילים דגל, המכונה נכנסת ללולאה של פאניקה וקריסה. פונים ל תמיכת הלקוחות ומבקשים להסיר את הסימון, ואז מבצעים hard drain. כך המכונה תופעל מחדש במארח אחר עם הגדרה חדשה, בלי הדגל או ההגדרה הלא רצויים.
הודעת השגיאה Bad syntax for dict arg מופיעה כשמנסים להגדיר דגל. ערכי פרמטרים מורכבים, כמו רשימות מופרדות בפסיקים, דורשים טיפול מיוחד כשמשתמשים בהם עם פקודות gcloud.

המאמרים הבאים