本頁說明如何設定 Cloud SQL 的資料庫旗標,並列出可為執行個體設定的旗標。您可以使用資料庫標記執行許多作業,包括調整 MySQL 參數、調整選項,以及設定和調整執行個體。
在部分情況下,設定某一標記可能會需要您設定另一個標記,才能完整啟用想要使用的功能。例如,如要啟用慢速查詢記錄,您必須將 slow_query_log 標記設為 on,並將 log_output 標記設為 FILE,才能透過 Google Cloud 控制台的記錄檔探索工具使用記錄。
設定、移除或修改資料庫執行個體的標記時,資料庫可能會重新啟動。移除之前,系統都會保留執行個體的旗標值。如果執行個體是副本的來源,且執行個體已重新啟動,副本也會重新啟動,以配合執行個體的目前設定。
設定資料庫旗標
下列各節將說明常見的旗標管理工作。
設定資料庫旗標
控制台
- 在 Google Cloud 控制台中,選取包含要設定資料庫旗標的 Cloud SQL 執行個體的專案。
- 開啟執行個體並按一下 [編輯]。
- 前往「旗標」部分。
- 如要設定先前未在執行個體上設定的標記,請按一下「新增項目」,從下拉式選單中選擇標記,然後設定其值。
- 按一下 [儲存] 以儲存變更。
- 在「總覽」頁面的「標記」下方,確認您所做的變更。
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 資源。
套用變更
如要在 Google Cloud 專案中套用 Terraform 設定,請完成下列各節的步驟。
準備 Cloud Shell
- 啟動 Cloud Shell。
-
設定要套用 Terraform 設定的預設 Google Cloud 專案。
每項專案只需要執行一次這個指令,且可以在任何目錄中執行。
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
如果您在 Terraform 設定檔中設定明確值,環境變數就會遭到覆寫。
準備目錄
每個 Terraform 設定檔都必須有自己的目錄 (也稱為根模組)。
-
在 Cloud Shell 中建立目錄,並在該目錄中建立新檔案。檔案名稱的副檔名必須是
.tf,例如main.tf。在本教學課程中,這個檔案稱為main.tf。mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
如果您正在學習教學課程,可以複製每個章節或步驟中的範例程式碼。
將範例程式碼複製到新建立的
main.tf。視需要從 GitHub 複製程式碼。如果 Terraform 代码片段是端對端解決方案的一部分,建議使用這個方法。
- 查看並修改範例參數,套用至您的環境。
- 儲存變更。
-
初始化 Terraform。每個目錄只需執行一次這項操作。
terraform init
如要使用最新版 Google 供應商,請加入
-upgrade選項:terraform init -upgrade
套用變更
-
檢查設定,確認 Terraform 即將建立或更新的資源符合您的預期:
terraform plan
視需要修正設定。
-
執行下列指令並在提示中輸入
yes,即可套用 Terraform 設定:terraform apply
等待 Terraform 顯示「Apply complete!」訊息。
- 開啟 Google Cloud 專案即可查看結果。在 Google Cloud 控制台中,前往 UI 中的資源,確認 Terraform 已建立或更新這些資源。
刪除變更
如要刪除變更,請按照下列步驟操作:
- 如要停用防刪除功能,請在 Terraform 設定檔中將
deletion_protection引數設為false。deletion_protection = "false"
- 執行下列指令,並在提示中輸入
yes,套用更新的 Terraform 設定:terraform apply
-
執行下列指令,並在提示中輸入
yes,即可移除先前透過 Terraform 設定套用的資源:terraform destroy
REST v1
如要為現有資料庫設定旗標,請按照下列步驟操作:
使用任何要求資料之前,請先替換以下項目:
- project-id:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
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:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
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:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
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:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
JSON 要求主體:
{
"settings":
{
"databaseFlags":
[
{
"name": "general_log",
"value": "on"
}
]
}
}
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
如果資料庫目前已設有標記,請修改前一指令以併入這些標記。PATCH 指令會以要求中指定的值覆寫現有的標記。
將所有旗標清除為預設值
控制台
- 在 Google Cloud 控制台中,選取含有要清除所有標記的 Cloud SQL 執行個體的專案。
- 開啟執行個體並按一下 [編輯]。
- 開啟「資料庫標記」區段。
- 按一下畫面上所有顯示標記旁的 [X]。
- 按一下 [儲存] 以儲存變更。
gcloud
清除執行個體中所有標記並轉為預設值:
gcloud sql instances patch INSTANCE_NAME \ --clear-database-flags
系統會提示您將重新啟動執行個體。
REST v1
清除現有執行個體的所有標記:
使用任何要求資料之前,請先替換以下項目:
- project-id:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
JSON 要求主體:
{
"settings":
{
"databaseFlags": []
}
}
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
REST v1beta4
清除現有執行個體的所有標記:
使用任何要求資料之前,請先替換以下項目:
- project-id:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
JSON 要求主體:
{
"settings":
{
"databaseFlags": []
}
}
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
查看資料庫旗標的現行值
如要檢視 MySQL 系統變數的所有現行值,請使用mysql 用戶端登入執行個體,然後輸入下列陳述式:
SHOW VARIABLES;
請注意,您只能變更支援標記的值 (如下所示)。
判斷執行個體已設定哪些資料庫旗標
如要查看 Cloud SQL 執行個體已設定的旗標:
控制台
- 在 Google Cloud 控制台中,選取包含 Cloud SQL 執行個體的專案,查看已設定的資料庫標記。
- 選取執行個體,開啟「Instance Overview」(執行個體總覽) 頁面。
在「資料庫標記」區段下方會列出已設定的資料庫標記。
gcloud
取得執行個體狀態:
gcloud sql instances describe INSTANCE_NAME
在輸出中,資料庫標記會列示為 settings 底下的 databaseFlags 集合。如要進一步瞭解輸出內容中的旗標表示法,請參閱執行個體資源表示法。
REST v1
列出已針對執行個體設定的標記:
使用任何要求資料之前,請先替換以下項目:
- project-id:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
在輸出中,找出 databaseFlags 欄位。
REST v1beta4
列出已針對執行個體設定的標記:
使用任何要求資料之前,請先替換以下項目:
- project-id:專案 ID
- instance-id:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
在輸出中,找出 databaseFlags 欄位。
由 Cloud SQL 管理的旗標
Cloud SQL 會根據執行個體機型調整特定系統旗標。
- innodb_buffer_pool_instances
-
- db-f1-micro 和 db-g1-small 為 1。
- 如果 RAM < 7.5 GB,則為 1。
- 2 (如果 7.5 GB <= RAM < 13 GB)。
- 4 (如果 RAM 容量介於 13 GB 和 26 GB 之間)。
- 如果 RAM >= 26 GB,則為 8。
支援的標記
Cloud SQL 中支援的標記是最常要求的 MySQL 標記。系統不支援下列未提及的標記。
對於特定標記,Cloud SQL 支援的值或範圍可能會與對應的 MySQL 參數或選項不同。
除非另外註明,否則標記適用於 Cloud SQL 支援的所有 MySQL 版本。
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
default: off
|
否 |
| autocommit |
boolean on | off
預設: on
|
否 |
| auto_increment_increment | integer 1 ... 65535 |
否 |
| auto_increment_offset | integer1 ... 65535 |
否 |
| automatic_sp_privileges |
boolean on | off
預設: on
|
否 |
| back_log | integer1 ... 65535
default: max_connections
|
是 |
| binlog_cache_size | integer4096 ... 9223372036854775807 |
否 |
| binlog_expire_logs_seconds | integer0 或 86400 (1 day) ... 4294967295 (max value)預設值為 86400,相當於 1 天。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| 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 | enumerationfull (預設)、minimal 或 noblob |
否 |
| binlog_row_metadata | enumerationfull 或 minimal (預設) |
否 |
| binlog_row_value_options | stringPARTIAL_JSON |
否 |
| binlog_rows_query_log_events |
boolean on | off
預設: off
|
否 |
| binlog_stmt_cache_size | 4096 ... 9223372036854775807 |
否 |
| binlog_transaction_dependency_history_size | integer
如要瞭解如何使用這個旗標和可接受的值,請參閱「設定平行複製功能」。 |
否 |
| binlog_transaction_dependency_tracking | enumeration
如要瞭解如何使用這個旗標和可接受的值,請參閱「設定平行複製功能」。MySQL 8.4 不支援這個標記。 |
否 |
| block_encryption_mode | stringaes-keylen-mode
預設值: aes-128-ECB
|
否 |
| bulk_insert_buffer_size | integer0 ... 4294967295
default: 8388608 |
否 |
| 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 | stringutf8 或 utf8mb4 預設值: MySQL 5.7: utf8
MySQL 8.0 以上版本: utf8mb4
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| character_set_server | stringutf8 或 utf8mb4 (建議) |
是 |
| check_proxy_users |
boolean on | off
預設: off
|
否 |
| cloudsql_allow_analyze_table | boolean on | off
default: off
|
否 |
| cloudsql_iam_authentication | boolean on | off
預設: off
適用於 MySQL 5.7 以上版本的 Cloud SQL。 |
否 |
| cloudsql_ignore_innodb_encryption | boolean on | off
default: off
|
否 |
| 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、、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
revoke_all |
否 |
| 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
default: -1
|
否 |
| cloudsql_vector |
boolean on | off
預設值: off
|
是 |
| cloudsql_vector_max_mem_size |
integer 1073741824...innodb_buffer_pool_size/2
預設值:以位元組為單位 1073741824 |
是 |
| completion_type | enumerationNO_CHAIN (預設)、
CHAIN 或 RELEASE |
否 |
| concurrent_insert | enumerationNEVER、AUTO (預設) 或 ALWAYS |
否 |
| connect_timeout | integer2 ... 31536000
default: 10 |
否 |
| cte_max_recursion_depth | integer0 ... 4294967295
default: 1000 |
否 |
| default_authentication_plugin | string mysql_native_password|caching_sha2_password
|
是 |
| default_password_lifetime | integer 0...65535
default: 0
|
否 |
| default_time_zone | string指定時區的方式有兩種:時區偏移量和時區名稱。舉例來說, +00:00 是倫敦 (位於世界標準時間時區) 的時區偏移,Europe/London 則是時區名稱。
您可以使用值指定時區偏移量,範圍從 使用時區名稱時,系統支援自動調整日光節約時間。系統不支援時區偏移。如需 MySQL 適用的 Cloud SQL 支援的時區名稱清單,請參閱這篇文章。您必須在主要執行個體和所有唯讀備用資源上,手動更新這個標記,才能將其納入考量。 如要設定時區,但不想重新啟動 Cloud SQL 執行個體,請使用 |
是 |
| default_week_format | integer0 ... 7
default: 0 |
否 |
| delay_key_write | enumerationOFF、ON (預設) 或 ALL |
否 |
| disconnect_on_expired_password | boolean on | off
default: on
|
是 |
| div_precision_increment | integer0 ... 30
default: 4 |
否 |
| end_markers_in_json |
boolean on | off
預設: off
|
否 |
| eq_range_index_dive_limit | integer0 ... 2147483647 |
否 |
| event_scheduler | booleanon | off
如果您正使用 Event Scheduler,請使用「ALWAYS」的 啟用政策設定執行個體,以確保排定的事件可以執行。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| expire_logs_days | integer0 ... 99 預設值為 0,表示不會自動移除。 注意:MySQL 8.4 不支援這個標記。
請改用 |
否 |
| explicit_defaults_for_timestamp | booleanon | off |
否 |
| flush_time | integer0 ... 31536000
default: 0 |
否 |
| foreign_key_checks |
boolean on | off
預設: on
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| ft_max_word_len | integer10 ... 252 |
是 |
| ft_min_word_len | integer1 ... 16 |
是 |
| ft_query_expansion_limit | integer0 ... 1000 |
是 |
| ft_stopword_file | string |
是 |
| general_log | booleanon | off
如要進一步瞭解一般記錄,請參閱提示一節。 |
否 |
| generated_random_password_length | integer 5-255
default: 20
|
否 |
| group_concat_max_len | integer4 ... 17179869184 |
否 |
| gtid_executed_compression_period | integer0 ... 4294967295
預設 (最高 8.0.22 版): 1000
預設 (8.0.23 以上版本): 0
|
否 |
| histogram_generation_max_mem_size | integer1000000 ... 4294967295
default: 20000000
|
否 |
| init_connect | string |
否 |
| innodb_adaptive_hash_index | booleanon | off |
否 |
| innodb_adaptive_hash_index_parts | integer1 ... 512 |
是 |
| innodb_adaptive_max_sleep_delay | integer0 ... 1000000 |
否 |
| innodb_autoextend_increment | integer1 ... 1000 |
否 |
| innodb_autoinc_lock_mode | integer0 ... 2 |
是 |
| innodb_buffer_pool_chunk_size | integer1048576 ... (innodb_buffer_pool_size/innodb_buffer_pool_instances)這個旗標值取決於 |
是 |
| innodb_buffer_pool_dump_pct | integer1 ... 100
預設值: 25 |
否 |
| innodb_buffer_pool_dump_at_shutdown | booleanon | off |
否 |
| innodb_buffer_pool_dump_now | booleanon | off
如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
| innodb_buffer_pool_instances | integer1 ... 64 |
是 |
| innodb_buffer_pool_load_abort | booleanon | off
如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
| innodb_buffer_pool_load_at_startup | booleanon | off |
是 |
| innodb_buffer_pool_load_now | booleanon | off
如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
| innodb_buffer_pool_size | integer
為 MySQL 5.6 設定此旗標時,需要重新啟動執行個體。如要進一步瞭解此標記,請參閱提示一節。 | 否 |
| innodb_change_buffer_max_size | integer0 ... 50 |
否 |
| innodb_change_buffering | string選項: |
否 |
| innodb_checksum_algorithm | string選項: |
否 |
| innodb_cloudsql_optimized_write | boolean
這個旗標僅適用於 Cloud SQL Enterprise Plus 版本的執行個體。 如要進一步瞭解此標記,請參閱提示一節。 |
是 |
| innodb_cmp_per_index_enabled | booleanon | off |
否 |
| innodb_commit_concurrency | integer0 ... 1000 |
是 |
| innodb_compression_failure_threshold_pct | integer0 ... 100 |
否 |
| innodb_compression_level | integer0 ... 9 |
否 |
| innodb_compression_pad_pct_max | integer0 ... 75 |
否 |
| innodb_concurrency_tickets | integer1 ... 4294967295 |
否 |
| innodb_deadlock_detect | booleanon | off
支援 MySQL 5.7 以上版本。 預設: |
否 |
| innodb_disable_sort_file_cache | booleanon | off |
否 |
| innodb_doublewrite_batch_size | integer0 ... 256預設值: 0 |
是 |
| innodb_doublewrite_files | integer2 ... 128 |
是 |
| innodb_doublewrite_pages | integer4 ... 512預設值: 64 |
是 |
| innodb_file_per_table | booleanon | off
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| innodb_fill_factor | integer10 ... 100 |
否 |
| innodb_flush_log_at_timeout | double0.0001... 2700預設值: 1
支援 MySQL 5.7 以上版本。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| innodb_flush_log_at_trx_commit | integer1, 2預設值: 1
如果升級副本時啟用這個旗標,系統會自動移除該旗標,使升級後的副本預設具備完整耐久性。如要搭配升級的副本使用這個標記,可以在升級後將標記更新至副本。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| innodb_flush_neighbors | enumeration0 ... 2預設值: 0 2 |
否 |
| innodb_flush_sync | booleanon | off |
否 |
| innodb_ft_aux_table | string如要進一步瞭解此標記,請參閱提示一節。 |
是 |
| innodb_ft_cache_size | integer1600000 ... 80000000 |
是 |
| innodb_ft_enable_diag_print | booleanon | off |
否 |
| innodb_ft_enable_stopword | booleanon | off |
否 |
| innodb_ft_max_token_size | integer10 ... 252 |
是 |
| innodb_ft_min_token_size | integer0 ... 16 |
是 |
| innodb_ft_num_word_optimize | integer1000 ... 10000 |
否 |
| innodb_ft_result_cache_limit | integer1000000 ... 4294967295 |
否 |
| innodb_ft_server_stopword_table | string |
否 |
| innodb_ft_sort_pll_degree | integer1 ... 32 |
是 |
| innodb_ft_total_cache_size | integer32000000 ... 1600000000 |
是 |
| innodb_ft_user_stopword_table | string |
否 |
| innodb_io_capacity | integer100 ... 100000
預設值: 5000
如要進一步瞭解如何設定磁碟效能,請參閱「設定磁碟以符合效能需求」中的「E2 VM」表格。 |
否 |
| innodb_io_capacity_max | integer100 ... 100000
預設值: 10000
如要進一步瞭解如何設定磁碟效能,請參閱「設定磁碟以符合效能需求」中的「E2 VM」表格。 |
否 |
| innodb_large_prefix | booleanon | off
僅在 MySQL 5.6 中受到支援。 |
否 |
| innodb_lock_wait_timeout | integer1 ... 1073741824 |
否 |
| innodb_log_buffer_size | integer262144 ... 4294967295 |
是 |
| innodb_log_checksums | booleanon | off
預設值: on |
否 |
| innodb_log_file_size | integerMySQL 5.6: 1048576 ... 274877906944MySQL 5.7 以上版本: 4194304 ... 274877906944
|
是 |
| 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 | integer100 ... 9223372036854775807 |
否 |
| innodb_max_dirty_pages_pct | float0 ... 99.99
default: 90 |
否 |
| innodb_max_dirty_pages_pct_lwm | float0 ... 99.99
default: 10 |
否 |
| innodb_max_purge_lag | integer 0 ... 4294967295
default: 0 |
否 |
| innodb_max_undo_log_size | integer 10485760 ... 9223372036854775807
預設值: 1073741824 |
否 |
| innodb_max_purge_lag_delay | integer 0 ... 10000000
default: 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_old_blocks_pct | integer5 ... 95 |
否 |
| innodb_old_blocks_time | integer0 ... 4294967295 |
否 |
| innodb_online_alter_log_max_size | integer65536 ... 9223372036854775807 |
否 |
| innodb_open_files | integer100 ... 2147483647
預設: MySQL 5.7: 2000
MySQL 8.0 以上版本: 4000 |
≥ 8.0.28:否 ≤ 8.0.27:是 |
| innodb_optimize_fulltext_only | booleanon | off |
否 |
| innodb_page_cleaners | integer1 ... 64MySQL 5.7 以上版本支援這項功能。 如果是 MySQL 5.7 和 8.0,預設值為 4。
如果是 MySQL 8.4,預設值會等於為 innodb_buffer_pool_instances 旗標設定的值。 |
是 |
| innodb_parallel_read_threads | integer1 ... 256
default: 4 |
否 |
| innodb_print_all_deadlocks | booleanon | off
預設值: off |
否 |
| innodb_print_ddl_logs | booleanon | off |
否 |
| innodb_purge_batch_size | integer1 ... 5000
default: 300 |
否 |
| innodb_purge_rseg_truncate_frequency | integer1 ... 128
default: 128 |
否 |
| innodb_purge_threads | integer1 ... 32
預設值: 1 4 |
是 |
| innodb_random_read_ahead | booleanon | off |
否 |
| innodb_read_ahead_threshold | integer0 ... 64 |
否 |
| innodb_read_io_threads | integer1 ... 64
|
是 |
| innodb_redo_log_capacity | integerMySQL 8.0.33 和更早版本: 8388608 (8 MB) ... 137438953472 (128 GB)
MySQL 8.0.34 和更新版本:8388608 (8 MB) ... 549755813888 (512 GB)
如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
| innodb_replication_delay | integer0 ... 4294967295 |
否 |
| innodb_rollback_on_timeout | booleanon | off |
是 |
| innodb_rollback_segments | integer1 ... 128 |
否 |
| innodb_segment_reserve_factor | float.03 ... 40
default: 12.5 |
否 |
| innodb_sort_buffer_size | integer65536 ... 67108864 |
是 |
| innodb_spin_wait_delay | integerMySQL 5.7: 0 ... 1000000MySQL 8.0.13 以上版本: 0 ... 1000
預設: 6 |
否 |
| innodb_stats_auto_recalc | booleanon | off |
否 |
| innodb_stats_include_delete_marked | booleanon | off
預設值: off |
否 |
| innodb_stats_method | enumerationnulls_equal | nulls_unequal | nulls_ignored |
否 |
| innodb_stats_on_metadata | booleanon | off |
否 |
| innodb_stats_persistent | booleanon | off |
否 |
| innodb_stats_persistent_sample_pages | integer1 ... 9223372036854775807 |
否 |
| innodb_stats_sample_pages | integer1 ... 9223372036854775807 |
否 |
| innodb_stats_transient_sample_pages | integer1 ... 9223372036854775807 |
否 |
| innodb_status_output | booleanon | off |
否 |
| innodb_status_output_locks | booleanon | off |
否 |
| innodb_strict_mode | booleanon | off |
否 |
| innodb_sync_array_size | 1 ... 1024
預設值為 1。 |
是 |
| innodb_sync_spin_loops | integer0 ... 4294967295
預設值:30 |
否 |
| innodb_table_locks | booleanon | off
預設值: on |
否 |
| innodb_thread_concurrency | integer0 ... 1000 |
否 |
| innodb_thread_sleep_delay | integer0 ... 1000000 |
否 |
| innodb_undo_log_truncate | booleanon | off
預設值: on |
否 |
| innodb_use_native_aio | booleanon | off
預設值: on |
是 |
| innodb_write_io_threads | integer1 ... 64 |
是 |
| interactive_timeout | integer1 ... 31536000 |
否 |
| internal_tmp_disk_storage_engine | enumerationINNODB | MYISAM預設值: INNODB |
否 |
| internal_tmp_mem_storage_engine | enumerationMEMORY、TempTable |
否 |
| join_buffer_size | integer128 ... 9223372036854775807 |
否 |
| keep_files_on_create |
boolean on | off
預設: off
|
否 |
| key_buffer_size | integer4096 ... 4294967295
default: 8388608 |
否 |
| key_cache_age_threshold | integer100 ... 9223372036854775807
default: 300 |
否 |
| key_cache_block_size | integer512 ... 16384
default: 1024 |
否 |
| key_cache_division_limit | integer1 ... 100
default: 100 |
否 |
| lc_times_names | stringen_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 | booleanon | off |
否 |
| lock_wait_timeout | integer1 ... 31536000 |
否 |
| log_bin_trust_function_creators | booleanon | off |
否 |
| log_output | setFILE | TABLE | NONE |
否 |
| log_error_verbosity | integer1 ... 3
預設: MySQL 5.7: 3MySQL 8.0 以上版本: 2 |
否 |
| log_queries_not_using_indexes | booleanon | off |
否 |
| log_slow_admin_statements | booleanon | off
預設值: off |
否 |
| log_slow_extra | booleanon | off
預設值: off |
否 |
| log_slow_replica_statements | boolean
on | off
預設:off
|
否 |
| log_slow_slave_statements | boolean
on | off
預設值:off
|
否 |
| log_throttle_queries_not_using_indexes | integer0 ... 9223372036854775807 |
否 |
| log_timestamps | string"UTC | SYSTEM"
預設值: UTC |
否 |
| long_query_time | float0 ... 30000000
如有需要,Cloud SQL 可讓使用者將此標記設定為小於 1。 如果也啟用 |
否 |
| lower_case_table_names 5.7 | 8.0 | integer0 或 1
預設值: 0
如果這個旗標使用預設值 如果是 MySQL 5.7 執行個體,您可以隨時變更這個旗標的值。如果需要變更此標記的值,請確定瞭解變更將對現有表格與資料庫造成哪些影響。 如果是 MySQL 8.0 以上版本的執行個體,您只能在建立執行個體時,將這個旗標的值設為所需值。設定後即無法變更。此外,您無法變更現有執行個體的這個旗標值。 為 MySQL 5.7、MySQL 8.0 或 MySQL 8.4 執行個體建立唯讀副本時,副本會從主要執行個體繼承這個旗標值。 | 是 |
| mandatory_roles | string role name
default: empty string
|
否 |
| master_verify_checksum | boolean
on | off
預設值:off
|
否 |
| max_allowed_packet | integer16384 ... 1073741824
如果 sql_mode=TRADITIONAL 或 sql_mode=STRICT_ALL_TABLES,這個值必須是 1024 的倍數。 |
否 |
| max_binlog_cache_size | integer4096 ... 4294967296
default: 4294967296 |
否 |
| max_binlog_size | integer4096 ... 1073741824 |
否 |
| max_binlog_stmt_cache_size | integer4096 ... 4294967296
default: 4294967296 |
否 |
| max_connect_errors | integer1 ... 9223372036854775807
default: 100 |
否 |
| max_connections | integer1 ... 100000
|
否 |
| max_digest_length | integer0 ... 1048576 |
是 |
| max_error_count | integer0 ... 65535
default: MySQL 5.7 or lower: 64MySQL 8.0 and later: 1024 |
否 |
| max_execution_time | integer0 ... 9223372036854775807 |
否 |
| max_heap_table_size | integer16384 ... 67108864
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| max_join_size | integer16 ... 9223372036854775807 |
否 |
| max_length_for_sort_data | integer4 ... 8388608 |
否 |
| max_points_in_geometry | integer3 ... 1048576 |
否 |
| max_prepared_stmt_count | integer0 ... 1048576 |
否 |
| max_seeks_for_key | integer1 ... 9223372036854775807 |
否 |
| max_sort_length | integer4 ... 8388608 |
否 |
| max_sp_recursion_depth | integer0 ... 255 |
否 |
| max_user_connections | integer0 ... 4294967295 |
否 |
| max_write_lock_count | integer1 ... 9223372036854775807 |
否 |
| min_examined_row_limit | integer0 ... 4294967295
default: 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 | integer1024 ... 1048576
default: 16384
|
否 |
| net_read_timeout | integer30 ... 4294967295 |
否 |
| net_retry_count | integer10 ... 4294967295 |
否 |
| net_write_timeout | integer60 ... 4294967295 |
否 |
| ngram_token_size | integer1 ... 10
default: 2
|
是 |
| optimizer_prune_level | integer0 ... 1 |
否 |
| optimizer_search_depth | integer0 ... 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 | integer0 ... 9223372036854775807 |
否 |
| optimizer_trace_offset | integer-9223372036854775808 ... 9223372036854775807 |
否 |
| parser_max_mem_size | integer10000000 ... 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 | booleanon | off
預設值: 預設值: 如要進一步瞭解 performance_schema 標記,請參閱「提示」一節。 |
是 |
| performance_schema_accounts_size | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱「提示」一節。 |
是 |
| performance_schema_digests_size | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱「提示」一節。 |
是 |
| performance_schema_error_size | integer0 ... 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 | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_cond_instances | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_digest_length | integer0 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_digest_sample_age | integer0 ... 1048576default: 60
|
否 |
| performance_schema_max_file_classes | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_file_handles | integer0 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_file_instances | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_index_stat | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_memory_classes | integer0 ... 1024
如要進一步瞭解 performance_schema 標記,請參閱「提示」一節。 |
是 |
| performance_schema_max_metadata_locks | integer-1 ... 104857600
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_mutex_classes | integer0 ... 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 | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_rwlock_instances | integer-1 ... 104857600
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_socket_classes | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_socket_instances | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_sql_text_length | integer0 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_stage_classes | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_statement_classes | integer0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| performance_schema_max_statement_stack | integer1 ... 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 | integer0 ... 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_users_size | integer-1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
| preload_buffer_size | integer1024 ... 1073741824
default: 32768
|
否 |
| query_alloc_block_size | integer1024 ... 4294967295 |
否 |
| query_cache_limit | integer0 ... 223338299392MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此這個標記不適用於 MySQL 8.0 以上版本。 |
否 |
| query_cache_min_res_unit | integer0 ... 9223372036854775807MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此這個標記不適用於 MySQL 8.0 以上版本。 |
否 |
| query_cache_size | integer0 ... 223338299392MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此這個標記不適用於 MySQL 8.0 以上版本。 |
否 |
| query_cache_type | enumeration0 ... 2MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此這個標記不適用於 MySQL 8.0 以上版本。 |
是 |
| query_cache_wlock_invalidate | booleanon | offMySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此這個標記不適用於 MySQL 8.0 以上版本。 |
否 |
| query_prealloc_size | integer8192 ... 9223372036854775807 |
否 |
| range_alloc_block_size | integer4096 ... 4294967295 |
否 |
| range_optimizer_max_mem_size | integer0 ... 9223372036854775807 |
否 |
| read_buffer_size | integer8192 ... 2147483647 |
否 |
| read_only | booleanon | off
對備用資源沒有影響。 |
否 |
| read_rnd_buffer_size | integer1 ... 2147483647 |
否 |
| regexp_stack_limit | integer0 ... 2147483647 |
否 |
| regexp_time_limit | integer0 ... 2147483647
default: 32
|
否 |
| replica_checkpoint_group | integer32 ... 524280預設值為 512。 如果副本未啟用多執行緒,這個旗標就不會影響副本。 |
否 |
| replica_checkpoint_period | integer1 ... 4294967295預設值為 300。 單位為毫秒。 |
否 |
| replica_compressed_protocol | booleanon | off
|
否 |
| replica_net_timeout | integer1 ... 31536000
單位為秒。 |
否 |
| replica_parallel_type | enumerationDATABASE、LOGICAL_CLOCK預設值: MySQL 8.0.26 或更早版本: DATABASEMySQL 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 | Stringvalues: 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 | integer8192 ... 4294959104
default: 8192
|
否 |
| schema_definition_cache | integer256 ... 524288
default: 256
|
否 |
| session_track_gtids | string
OFF | OWN_GTID | ALL_GTIDS
預設值: OFF
|
否 |
| session_track_schema | booleanon | off
預設值: on
|
否 |
| session_track_state_change | booleanon | off
預設值: off
|
否 |
| session_track_transaction_info | string
OFF | STATE | CHARACTERISTICS
預設值: OFF
|
否 |
| sha256_password_proxy_users |
boolean on | off
預設: off
|
否 |
| show_create_table_verbosity | booleanon | off
預設值: off
|
否 |
| show_compatibility_56 | booleanon | off
僅支援 MySQL 5.7。 |
否 |
| skip_character_set_client_handshake |
boolean on | off
預設: off
|
是 |
| skip_show_database | flagon | off |
是 |
| slave_checkpoint_group | integer32 ... 524280預設值為 512。 如果副本未啟用多執行緒,這個旗標就不會影響副本。 |
否 |
| slave_checkpoint_period | integer1 ... 4294967295預設值為 300。 單位為毫秒。 |
否 |
| slave_compressed_protocol | 否 | |
| slave_net_timeout | integer1 ... 31536000
單位為秒。 |
否 |
| slave_parallel_type | enumerationDATABASE、LOGICAL_CLOCK預設值: MySQL 8.0.26 或更早版本: DATABASEMySQL 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 | stringvalues: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED |
否 |
| slow_launch_time | Integer0 ... 31536000預設值: 2 |
否 |
| slow_query_log | booleanon | off如要進一步瞭解慢速查詢記錄,請參閱提示一節。 |
否 |
| sort_buffer_size | integer32768 ... 9223372036854775807 |
否 |
| source_verify_checksum | boolean
on | off預設值: off
|
否 |
| sql_mode | string
如需瞭解允許的值,包括合併模式 (例如 MySQL 適用的 Cloud SQL 不支援 |
否 |
| sql_require_primary_key | booleanon | off預設值: off |
否 |
| sql_select_limit | integer 0...18446744073709551615
預設值: 18446744073709551615
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| stored_program_cache | integer16 ... 524288 |
否 |
| stored_program_definition_cache | integer256 ... 524288預設值: 256 |
否 |
| sync_binlog | integer0 ... 4294967295
預設值為 1,可讓系統在提交交易前,將二進位記錄同步至磁碟。 如果升級副本時啟用這個旗標,系統會自動移除該旗標,使升級後的副本預設具備完整耐久性。如要搭配升級的副本使用這個標記,可以在升級後將標記更新至副本。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| sync_master_info | integer0 ... 4294967295預設值: 10000
|
否 |
| sync_relay_log | integer0 ... 4294967295預設值: 10000 |
否 |
| sync_relay_log_info | integer0 ... 4294967295預設值: 10000 |
否 |
| sync_source_info | integer0 ... 4294967295預設值: 10000
|
否 |
| sysdate_is_now |
boolean on | off
預設: off
|
是 |
| table_definition_cache | integer400 ... 524288 |
否 |
| tablespace_definition_cache | integer256 ... 524288預設值: 256 |
否 |
| table_open_cache | integer1 ... 524288 |
否 |
| table_open_cache_instances | integer1 ... 64 |
是 |
| temptable_max_mmap | integer0 ... 68719476736預設值: 1073741824 |
否 |
| temptable_max_ram | integer2097152 ... 68719476736預設值: 1073741824 |
否 |
| thread_cache_size | integer0 ... 16384 |
否 |
| thread_stack | integer131072 ... 9223372036854775807 |
是 |
| tls_version | String5.7 版至 8.0.27 版: TLSv1, TLSv1.18.0.28 以上版本: TLSv1.2 |
5.7 版:是 8.0 以上版本:否 |
| tmp_table_size | integer1024 ... 67108864
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| transaction_alloc_block_size | integer1024 ... 131072 |
否 |
| transaction_isolation | enumerationREAD-UNCOMMITTED | READ-COMMITTED | REPEATABLE-READ | SERIALIZABLE |
是 |
| transaction_prealloc_size | integer1024 ... 131072 |
否 |
| transaction_write_set_extraction | enumeration
如要瞭解如何使用這個旗標和可接受的值,請參閱「設定平行複製功能」。MySQL 8.4 不支援這個標記。 |
否 |
| unique_checks |
boolean on | off
預設: on
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
| updatable_views_with_limit | integer0 ... 1 |
否 |
| wait_timeout | integer1 ... 31536000 |
否 |
| windowing_use_high_precision | booleanon | off預設值: on
|
否 |
時區名稱
在本節中,您將瞭解 MySQL 適用的 Cloud SQL 支援的時區名稱。
本節中的表格會顯示下列資訊:
- 時區名稱:MySQL 適用的 Cloud SQL 支援的名稱。
- STD:標準時間 (STD) 的時區偏移量。
- DST:日光節約時間 (DST) 的時區偏移。
- 同義字名稱:您可能想使用的時區名稱,但 MySQL 適用的 Cloud SQL 不支援這些名稱。如果發生這種情況,請使用對應的時區名稱。
| 時區名稱 | STD | 數位服務稅 | 同義詞名稱 |
|---|---|---|---|
| Africa/Cairo | +02:00 | +02:00 | 埃及 |
| Africa/Casablanca | +01:00 | +00:00 | |
| Africa/Harare | +02:00 | +02:00 | Africa/Maputo |
| Africa/Monrovia | +00:00 | +00:00 | |
| Africa/Nairobi | +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 |
| Africa/Tripoli | +02:00 | +02:00 | 利比亞 |
| Africa/Windhoek | +02:00 | +02:00 | |
| America/Araguaina | −03:00 | −03:00 | |
| America/Asuncion | −04:00 | −03:00 | |
| America/Bogota | −05:00 | −05:00 | |
| America/Buenos_Aires | −03:00 | −03:00 | America/Argentina/Buenos_Aires |
| America/Caracas | −04:00 | −04:00 | |
| America/Chicago | −06:00 | −05:00 | |
| America/Chihuahua | −07:00 | −06:00 | America/Ojinaga |
| America/Cuiaba | −04:00 | −04:00 | |
| America/Denver | −07:00 | −06:00 | America/Shiprock
Navajo MST7MDT US/Mountain |
| America/Detroit | −05:00 | −04:00 | |
| America/Fortaleza | −03:00 | −03:00 | |
| America/Guatemala | −06:00 | −06:00 | |
| America/Halifax | −04:00 | −03:00 | Canada/Atlantic |
| America/Los_Angeles | −08:00 | −07:00 | |
| America/Manaus | −04:00 | −04:00 | Brazil/West |
| America/Matamoros | −06:00 | −05:00 | |
| America/Mexico_City | −06:00 | −05:00 | |
| America/Monterrey | −06:00 | −05:00 | |
| America/Montevideo | −03:00 | −03:00 | |
| America/New_York | −05:00 | −04:00 | |
| America/Phoenix | −07:00 | −07:00 | US/Arizona
MST America/Creston |
| America/Santiago | −04:00 | −03:00 | Chile/Continental |
| 美洲/聖保羅 | −03:00 | −03:00 | |
| America/Tijuana | −08:00 | −07:00 | Mexico/BajaNorte
America/Ensenada America/Santa_Isabel |
| Asia/Amman | +02:00 | +03:00 | |
| Asia/Ashgabat | +05:00 | +05:00 | Asia/Ashkhabad |
| Asia/Baghdad | +03:00 | +03:00 | |
| Asia/Baku | +04:00 | +04:00 | |
| Asia/Bangkok | +07:00 | +07:00 | Asia/Phnom_Penh
Asia/Vientiane |
| Asia/Beirut | +02:00 | +03:00 | |
| Asia/Calcutta | +05:30 | +05:30 | Asia/Kolkata |
| Asia/Damascus | +02:00 | +03:00 | |
| Asia/Dhaka | +06:00 | +06:00 | Asia/Dacca |
| Asia/Irkutsk | +08:00 | +08:00 | |
| Asia/Jerusalem | +02:00 | +03:00 | Asia/Tel_Aviv
以色列 |
| Asia/Kabul | +04:30 | +04:30 | |
| Asia/Karachi | +05:00 | +05:00 | |
| Asia/Kathmandu | +05:45 | +05:45 | Asia/Katmandu |
| Asia/Kolkata | +05:30 | +05:30 | |
| Asia/Krasnoyarsk | +07:00 | +07:00 | |
| Asia/Magadan | +11:00 | +11:00 | |
| Asia/Muscat | +04:00 | +04:00 | Asia/Dubai |
| Asia/Novosibirsk | +07:00 | +07:00 | |
| Asia/Riyadh | +03:00 | +03:00 | Asia/Kuwait
Antarctica/Syowa Asia/Aden |
| Asia/Seoul | +09:00 | +09:00 | ROK |
| Asia/Shanghai | +08:00 | +08:00 | Asia/Chongqing
Asia/Chungking Asia/Harbin PRC |
| Asia/Singapore | +08:00 | +08:00 | 新加坡 |
| Asia/Taipei | +08:00 | +08:00 | ROC |
| Asia/Tehran | +03:30 | +04:30 | 伊朗 |
| Asia/Tokyo | +09:00 | +09:00 | 日本 |
| Asia/Ulaanbaatar | +08:00 | +08:00 | Asia/Ulan_Bator |
| Asia/Vladivostok | +10:00 | +10:00 | |
| Asia/Yakutsk | +09:00 | +09:00 | |
| Asia/Yerevan | +04:00 | +04:00 | |
| Atlantic/Azores | −01:00 | +00:00 | |
| Australia/Adelaide | +09:30 | +10:30 | Australia/South |
| Australia/Brisbane | +10:00 | +10:00 | Australia/Queensland |
| Australia/Darwin | +09:30 | +09:30 | Australia/North |
| Australia/Hobart | +10:00 | +11:00 | Australia/Currie
Australia/Tasmania |
| Australia/Perth | +08:00 | +08:00 | Australia/West |
| Australia/Sydney | +10:00 | +11:00 | Australia/NSW
Australia/ACT Australia/Canberra |
| Brazil/East | −03:00 | −03:00 | America/Sao_Paulo |
| Canada/Newfoundland | −03:30 | −02:30 | America/St_Johns |
| Canada/Saskatchewan | −06:00 | −06:00 | America/Regina |
| Canada/Yukon | −07:00 | −07:00 | America/Whitehorse |
| Europe/Amsterdam | +01:00 | +02:00 | |
| Europe/Athens | +02:00 | +03:00 | |
| Europe/Dublin | +01:00 | +00:00 | Eire |
| Europe/Helsinki | +02:00 | +03:00 | Europe/Mariehamn |
| Europe/Istanbul | +03:00 | +03:00 | 土耳其
Asia/Istanbul |
| Europe/Kaliningrad | +02:00 | +02:00 | |
| Europe/Madrid | +01:00 | +02:00 | |
| Europe/Moscow | +03:00 | +03:00 | W-SU |
| Europe/Paris | +01:00 | +02:00 | MET
CET |
| Europe/Prague | +01:00 | +02:00 | Europe/Bratislava |
| Europe/Sarajevo | +01:00 | +02:00 | Europe/Belgrade
Europe/Ljubljana Europe/Podgorica Europe/Skopje Europe/Zagreb |
| Pacific/Auckland | +12:00 | +13:00 | NZ
Antarctica/McMurdo Antarctica/South_Pole |
| Pacific/Fiji | +12:00 | +13:00 | |
| Pacific/Guam | +10:00 | +10:00 | Pacific/Saipan |
| Pacific/Honolulu | −10:00 | −10:00 | US/Hawaii
Pacific/Johnston HST |
| Pacific/Samoa | −11:00 | −11:00 | 太平洋/帕果帕果
美國/薩摩亞 |
| US/Alaska | −09:00 | −08:00 | America/Anchorage
America/Juneau America/Metlakatla America/Nome America/Sitka America/Yakutat |
| US/Central | −06:00 | −05:00 | America/Chicago |
| US/Eastern | −05:00 | −04:00 | America/New_York |
| US/East-Indiana | −05:00 | −04:00 | America/Indiana/Indianapolis
America/Indianapolis America/Fort_Wayne |
| US/Mountain | −07:00 | −06:00 | America/Denver |
| US/Pacific | −08:00 | −07:00 | America/Los_Angeles |
| 世界標準時間 | +00:00 | +00:00 | Etc/UTC
Etc/UCT Etc/Universal Etc/Zulu |
Cloud SQL 中的時區表可能需要使用最新資料重新整理。舉例來說,某個國家/地區可能會從日光節約時間時區偏移量改為標準時間偏移量,或是導入新的時區。
每當 Cloud SQL 發布重大服務代理程式 (CSA) 版本時,時區表就會更新為最新資料。發生這種情況時,系統會在非維護期間重新整理副本執行個體。主要執行個體會在維護期間重新整理。
您可以等待 CSA 版本定期維護時段,也可以執行自助式維護,以最新資料重新整理時區表。如要進一步瞭解如何查看可用的維護版本,請參閱「判斷目標維護版本」。
使用標記的提示
- general_log、slow_query_log
-
如要能夠使用
general或slow query記錄,請啟用對應標記並將log_output標記設定為FILE。這會讓使用者能夠透過 Google Cloud 控制台中的記錄檢視器使用記錄輸出。請注意,這會產生 Google Cloud Observability 記錄費用。 為盡量減少執行個體儲存空間費用,當記錄檔超過 24 小時 (且這段時間內未進行任何變更) 或大小超過 100 MB 時,系統會輪替執行個體磁碟上的general和slow query記錄。舊記錄檔會在輪替後自動刪除。如果
log_output設為NONE,您就無法存取記錄檔。如果將log_output設為TABLE,記錄輸出內容會放在 mysql 系統資料庫的資料表中。這可能會耗用大量磁碟空間。如果資料表變得很大,可能會影響執行個體重新啟動的時間,或導致執行個體喪失其服務水準協議的保障。因此不建議使用TABLE選項。此外,記錄內容不會顯示在記錄檔探索工具中,也不會輪替。如有需要,您可以使用 API 截斷記錄檔資料表。詳情請參閱instances.truncateLog 參考資料頁面。
- expire_logs_days、binlog_expire_logs_seconds
- 如果啟用時間點還原功能,二進位記錄的到期時間會取決於交易記錄保留時間和這些旗標的值,以較短者為準。您可以使用這些標記,管理副本上二進位記錄的儲存時間。MySQL 8.4 以上版本已移除
expire_logs_days標記。詳情請參閱 交易記錄保留頁面。
- innodb_buffer_pool_size
這個旗標的值是緩衝區集區的大小 (以位元組為單位)。緩衝區集區大小一律必須等於或大於
innodb_buffer_pool_chunk_size乘以innodb_buffer_pool_instances的值。如果將緩衝區集區大小變更為不等於或不為innodb_buffer_pool_chunk_size乘以innodb_buffer_pool_instances的值,Cloud SQL 會自動調整緩衝區集區大小。如果執行個體的 RAM 不足 3,840 MiB,就無法啟用這個標記。您無法為共用核心機器類型 (f1_micro 和 g1_small) 設定這個標記。在 MySQL 5.6 中變更這個旗標時,需要重新啟動執行個體。
在 Cloud SQL 中,innodb_buffer_pool_size 旗標的預設值、允許的下限值與允許的上限值皆取決於執行個體的記憶體。這些值大約可計算為執行個體 RAM 的百分比。 根據預設,這個標記的值通常會設為接近允許的最大值。可分配的最大百分比會隨著執行個體大小增加。允許的最小值通常約為執行個體 RAM 的 20%。
這個旗標的近似值:
執行個體 RAM 範圍 最低百分比 預設百分比 百分比上限 0 至 4.0 GB RAM 約 34% 4.0GB - 7.5GB ~20% 約 34% 約 34% 7.5GB - 12GB ~20% 約 52% 約 52% 12GB - 24GB ~20% 約 67% 約 67% 24 GB 以上 ~20% ~72% ~72% 確切值可能有所不同。如要計算執行個體的目前值,可以執行下列查詢:
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%)
ON。
這個旗標會調整背景活動,優先處理資料庫寫入作業,並控制清除限制,藉此最佳化清除演算法,進而提升寫入效能。
在大多數情況下,啟用這個旗標後,您會發現效能有所提升,例如輸送量增加和延遲時間縮短。不過,如果資料庫寫入作業導致伺服器負載過重,這個旗標可能會延遲部分背景活動。這項延遲可能會導致磁碟用量略為增加,但負載減少後,磁碟用量就會自動降低。
根據預設,所有新建立和升級的 Cloud SQL Enterprise Plus 版本執行個體都會啟用 innodb_cloudsql_optimized_write 標記。如果是現有的 Cloud SQL Enterprise Plus 版本執行個體,系統會在套用相關維護更新後啟用這個旗標。
如要停用標記,請執行下列指令。
gcloud sql instances patch INSTANCE_NAME \ --database-flags="innodb_cloudsql_optimized_write=OFF"
變更旗標值需要重新啟動執行個體。
對於所有 MySQL 5.6 以上版本,預設值為 ON。
innodb_flush_log_at_trx_commit 和 sync_binlog
標記必須設為預設值 1。如果變更預設值,持久性可能會降低,導致主要執行個體與副本之間不一致。因此,執行個體會喪失服務水準協議資格。此外,還可能發生下列情況:
- 在特定情況下發生資料遺失,例如 VM 當機或區域高可用性執行個體容錯移轉
- 二進位記錄檔和 InnoDB 資料檔案中的資料不同步
- PITR 資料遺失或失敗
- 主要執行個體及其副本之間的資料不一致
- 複製中斷
如果將主要、獨立和高可用性執行個體的 innodb_flush_log_at_trx_commit 或 sync_binlog 旗標值設為非預設值,就會降低耐久性。
如果需要更高的唯讀備用資源效能,建議將 innodb_flush_log_at_trx_commit 值設為 2。Cloud SQL 不支援將這個旗標的值設為 0。如果將旗標值設為 2,您必須停用副本上的二進位記錄,或將 sync_binlog 設為 1 以外的值,才能提升效能。
Cloud SQL 建立備份時,可能會暫時將 innodb_flush_log_at_trx_commit 和 sync_binlog 旗標值變更為預設值。這可能會導致備份時效能下降。為避免這種情況影響執行個體,您可以在執行個體用量較低時變更備份時間範圍。詳情請參閱「建立及管理隨選和自動備份」一文。
innodb_flush_log_at_timeout 可讓您修改網頁排清的頻率,避免影響二進位記錄檔群組的提交效能。預設設定為每秒一次。
Cloud SQL 已擴充這個標記,支援以微秒為單位指定時間週期。
範例:
0.001指定 1 毫秒0.0001,指定 100 個美國12.5指定 12.5 秒12.005指定 12 秒和 5 毫秒0.005100,指定 5 毫秒和 100 微秒
對於某些工作負載,以整秒為單位排清網頁可能無法接受,因為可能會造成交易損失。您可以改用微秒精細度排清頁面,在維持效能的同時,不會大幅降低耐久性。
只有在 innodb_flush_log_at_trx_commit 持久性旗標設為 2 時,innodb_flush_log_at_timeout 旗標的微秒時間週期才適用。
網頁排清的頻率可能高於或低於為 innodb_flush_log_at_timeout 指定的值,且該值並非上限。
如果您為 innodb_redo_log_capacity 標記設定值,Cloud SQL 會忽略您為 innodb_log_file_size 標記定義的任何值。
如果沒有為 innodb_redo_log_capacity 或 innodb_log_file_size 標記設定任何值,Cloud SQL 會使用 innodb_redo_log_capacity 標記的預設值,也就是 104857600 (100 MB)。
如果您未設定 innodb_redo_log_capacity 旗標,但設定了 innodb_log_file_size 旗標,系統會以 innodb_log_file_size * innodb_log_file_in_group 計算 innodb 重做記錄大小的值。舉例來說,如果您將 innodb_log_file_size 設為 10 GB,且 innodb_log_file_in_group 的預設值為 2,則 innodb 重做記錄大小的有效值為 20 GB。
如果為執行個體處理的並行查詢數量設定過高的 tmp_table_size 和 max_heap_table_size,可能會耗盡可用的執行個體記憶體。耗盡記憶體將會導致執行個體當機並重新啟動。
如要進一步瞭解如何使用這些標記,請參閱「MySQL 如何使用內部暫時性資料表」與「MEMORY 儲存引擎」。
您無法在共用核心 (RAM 小於 3 GB) 的執行個體上啟用此標記。如果啟用此標記,您就無法將機器類型變更為不支援此標記的大小;您必須先停用此標記。
OFF,MySQL 8.0 的預設值為 ON。如要進一步瞭解 event_scheduler 標記,請參閱
event_scheduler。如果讀取副本的 event_scheduler 旗標設為 ON,可能會根據事件中定義的陳述式類型導致錯誤:- 如果排定的事件是唯讀備用資源上的
write事件,就會發生錯誤,因為唯讀備用資源只能讀取。詳情請參閱「讀取副本」。 - 如果排定的事件包含停止作業 (例如
kill),event_scheduler會將該作業套用至副本。這項操作會停止複製作業並刪除副本。
event_scheduler 標記設為 OFF。
如要進一步瞭解如何啟用或停用 event_scheduler,請參閱設定資料庫標記。
replica_skip_errors 或 slave_skip_errors
標記可能會導致複製問題。一般來說,如果執行陳述式時發生錯誤,系統會停止複製作業。使用這個旗標會導致系統略過錯誤並繼續複製,進而造成主要執行個體和副本之間不一致。這也可能導致難以排解複寫問題。
Cloud SQL 建議僅在必要時使用此標記。如果發生複寫錯誤,請參閱「 排解 Cloud SQL 問題:複寫」一文,進一步瞭解如何解決這個問題。
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
SET GLOBAL FLAG_NAME=FLAG_VALUE
使用 SET GLOBAL 指令需要 CLOUDSQL_SPECIAL_SYSEM_VARIABLES_ADMIN 權限,這項權限會授予 cloudsqlsuperuser 角色。
如要進一步瞭解如何授予特定使用者特殊權限,請參閱「關於 MySQL 使用者」。這些標記不會保留。重新建立或重新啟動 Cloud SQL 執行個體時,系統會將標記設定重設為預設值。
- binlog_order_commits
-
binlog_order_commits旗標的預設值為ON。Cloud SQL 建議不要變更這個旗標的預設值。如果將預設值變更為OFF,相同二進位記錄檔群組中的交易提交順序,就會與寫入二進位記錄檔時不同。這會影響下列作業,這些作業會依二進位記錄順序執行交易:- 複製:可能導致來源與副本之間的資料不一致
- Point-in-time-recovery:可能導致時間點復原狀態與歷史狀態之間的資料不一致
- optimizer_switch,optimizer_trace,optimizer_trace_features
-
最佳化工具旗標的值以半形逗號分隔。您可以使用主控台或 gcloud 設定這些標記。如要進一步瞭解如何使用控制台設定這個旗標,請參閱「設定資料庫旗標」。如果使用 gcloud,可以透過兩種不同方式指定這些標記的值:
如要在一個指令中設定多個最佳化工具子旗標,請使用半形逗號分隔每個旗標名稱。如果您使用 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
on的batched_key_access。如要保留先前設定的所有子旗標並新增子旗標,您必須在新增子旗標時,加入要設定的所有子旗標值。
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 中有所不同 |
| innodb_flush_method | O_DIRECT | |
| memlock | 是 | |
| 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 以上版本。如要進一步瞭解此標記,請參閱「Partial revokes system flag in MySQL 8.0」。 |
MySQL 8.0 以上版本的 partial_revokes 系統旗標
partial_revokes 旗標可讓您限制資料庫結構定義的使用者存取權。在 MySQL 8.0 以上版本的 Cloud SQL 中,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 以上版本中,有兩種不同的方式可授予多個資料庫的存取權。
您可以使用完整資料庫名稱,將權限授予特定資料庫,如下列指令所示:
grant select on test1_foobar.* to 'testuser'@'%'; grant select on test2_foobar.* to 'testuser'@'%'; grant select on test3_foobar.* to 'testuser'@'%';使用
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架構上設定複製篩選器。 - 複製篩選規則不適用於無伺服器匯出。
索引建議工具旗標
以下列出 MySQL 適用的 Cloud SQL 用於啟用及管理索引建議專屬功能的資料庫旗標。
| 旗標名稱 | 類型 可接受的值和附註 |
需要重新啟動 嗎? |
|---|---|---|
| cloudsql_index_advisor_auto_advisor_schedule |
string
預設值: 00:00
|
否 |
| cloudsql_index_advisor_run_at_timestamp |
Datetime
預設值: 00:00:00
|
否 |
別名旗標
下表列出 Cloud SQL for MySQL 8.0.26 以上版本變更的旗標名稱。
| 已淘汰的旗標名稱 | 新旗標名稱 |
|---|---|
| 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 指令搭配使用時,需要特別處理。 |
後續步驟
- 進一步瞭解 MySQL 系統變數。
- 進一步瞭解操作指南。