本頁說明如何設定 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 (如果 13 GB <= RAM < 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 | integer 1 ... 65535 |
否 |
automatic_sp_privileges |
boolean on | off
預設: on
|
否 |
back_log | integer 1 ... 65535
default: max_connections
|
是 |
binlog_cache_size | integer 4096 ... 9223372036854775807 |
否 |
binlog_expire_logs_seconds | integer 0 或 86400 (1 day) ... 4294967295 (max value) 預設值為 2592000,相當於 30 天。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
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_dependency_history_size | integer
如要瞭解如何使用這個旗標和可接受的值,請參閱「設定平行複製功能」。 |
否 |
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
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 | 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
預設值: off
|
否 |
cloudsql_iam_authentication | boolean on | off
預設: off
適用於 MySQL 5.7 以上版本的 Cloud SQL。 |
否 |
cloudsql_ignore_innodb_encryption | boolean on | off
預設值: 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 、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
default: -1
|
否 |
cloudsql_vector |
boolean on | off
預設值: off
|
是 |
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
default: 10 |
否 |
cte_max_recursion_depth | integer 0 ... 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 | integer 0 ... 7
default: 0 |
否 |
delay_key_write | enumeration OFF 、ON (預設) 或 ALL |
否 |
disconnect_on_expired_password | boolean on | off
default: on
|
是 |
div_precision_increment | integer 0 ... 30
default: 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 不支援這個標記。
請改用 |
否 |
explicit_defaults_for_timestamp | boolean on | off |
否 |
flush_time | integer 0 ... 31536000
default: 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
default: 20
|
否 |
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
default: 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_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 |
否 |
innodb_change_buffering | string 選項: |
否 |
innodb_checksum_algorithm | string 選項: |
否 |
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_deadlock_detect | boolean on | off
支援 MySQL 5.7 以上版本。 預設: |
否 |
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 1, 2 預設值: 1
如果升級副本時啟用這個旗標,系統會自動移除該旗標,使升級後的副本預設具備完整耐久性。如要搭配升級的副本使用這個標記,可以在升級後更新副本的標記。 如要進一步瞭解此標記,請參閱提示一節。 |
否 |
innodb_flush_neighbors | enumeration 0 ... 2 預設值: 0 2 |
否 |
innodb_flush_sync | boolean on | off |
否 |
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_io_capacity | integer 100 ... 100000
預設值: 5000
如要進一步瞭解如何設定磁碟效能,請參閱「設定磁碟以符合效能需求」中的「E2 VM」表格。 |
否 |
innodb_io_capacity_max | integer 100 ... 100000
預設值: 10000
如要進一步瞭解如何設定磁碟效能,請參閱「設定磁碟以符合效能需求」中的「E2 VM」表格。 |
否 |
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 以上版本: 4194304 ... 274877906944
|
是 |
innodb_log_spin_cpu_abs_lwm | integer 0 ... 4294967295
default: 80 |
否 |
innodb_log_spin_cpu_pct_hwm | integer 0 ... 100
default: 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
default: 90 |
否 |
innodb_max_dirty_pages_pct_lwm | float 0 ... 99.99
default: 10 |
否 |
innodb_max_purge_lag | integer 0 ... 4294967295
default: 0 |
否 |
innodb_max_undo_log_size | integer 10485760 ... 9223372036854775807
default: 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 | 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
default: 4 |
否 |
innodb_print_all_deadlocks | boolean on | off
預設值: off |
否 |
innodb_print_ddl_logs | boolean on | off |
否 |
innodb_purge_batch_size | integer 1 ... 5000
default: 300 |
否 |
innodb_purge_rseg_truncate_frequency | integer 1 ... 128
default: 128 |
否 |
innodb_purge_threads | integer 1 ... 32
預設值: 1 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 (8 MB) ... 137438953472 (128 GB)
MySQL 8.0.34 和更新版本:8388608 (8 MB) ... 549755813888 (512 GB)
如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
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
default: 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
default: 8388608 |
否 |
key_cache_age_threshold | integer 100 ... 9223372036854775807
default: 300 |
否 |
key_cache_block_size | integer 512 ... 16384
default: 1024 |
否 |
key_cache_division_limit | integer 1 ... 100
default: 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
預設: MySQL 5.7: 3 MySQL 8.0 以上版本: 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。 如果也啟用 |
否 |
lower_case_table_names 5.7 | 8.0 | integer 0 或 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 | integer 16384 ... 1073741824
如果 sql_mode=TRADITIONAL 或 sql_mode=STRICT_ALL_TABLES,這個值必須是 1024 的倍數。 |
否 |
max_binlog_cache_size | integer 4096 ... 4294967296
default: 4294967296 |
否 |
max_binlog_size | integer 4096 ... 1073741824 |
否 |
max_binlog_stmt_cache_size | integer 4096 ... 4294967296
default: 4294967296 |
否 |
max_connect_errors | integer 1 ... 9223372036854775807
default: 100 |
否 |
max_connections | integer 1 ... 100000
|
否 |
max_digest_length | integer 0 ... 1048576 |
是 |
max_error_count | integer 0 ... 65535
default: MySQL 5.7 or lower: 64 MySQL 8.0 and later: 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 0 ... 1048576 |
否 |
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
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 | integer 1024 ... 1048576
default: 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
default: 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
default: off
|
否 |
password_reuse_interval | integer 0-4294967295
default: 0
|
否 |
performance_schema | boolean on | 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 | 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 default: 60
|
否 |
performance_schema_max_file_classes | integer 0 ... 256
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
performance_schema_max_file_handles | integer 0 ... 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 | 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_users_size | integer -1 ... 1048576
如要進一步瞭解 performance_schema 標記,請參閱提示一節。 |
是 |
preload_buffer_size | integer 1024 ... 1073741824
default: 32768
|
否 |
query_alloc_block_size | integer 1024 ... 4294967295 |
否 |
query_cache_limit | integer 0 ... 223338299392 MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此 MySQL 8.0 以上版本不支援這個標記。 |
否 |
query_cache_min_res_unit | integer 0 ... 9223372036854775807 MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此 MySQL 8.0 以上版本不支援這個標記。 |
否 |
query_cache_size | integer 0 ... 223338299392 MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此 MySQL 8.0 以上版本不支援這個標記。 |
否 |
query_cache_type | enumeration 0 ... 2 MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此 MySQL 8.0 以上版本不支援這個標記。 |
是 |
query_cache_wlock_invalidate | boolean on | off MySQL 5.7.20 已淘汰查詢快取,MySQL 8.0 則已移除這項功能,因此 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
default: 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 values: 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
default: 8192
|
否 |
schema_definition_cache | integer 256 ... 524288
default: 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 | 否 | |
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 values: 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_mode | string
如需瞭解允許的值,包括合併模式 (例如 MySQL 適用的 Cloud SQL 不支援 |
否 |
sql_require_primary_key | boolean on | off 預設值: off |
否 |
sql_select_limit | integer 0...18446744073709551615
預設值: 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 |
是 |
temptable_max_mmap | integer 0 ... 68719476736 預設值: 1073741824 |
否 |
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
|
否 |
時區名稱
在本節中,您將瞭解 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
納瓦伙文 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 | 美國/亞利桑那州
MST America/Creston |
America/Santiago | −04:00 | −03:00 | Chile/Continental |
美洲/聖保羅 | −03:00 | −03:00 | |
America/Tijuana | −08:00 | −07:00 | 墨西哥/下加利福尼亞州
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 | 紐西蘭
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 | 美洲/安克拉治
美洲/朱諾 美洲/梅特拉卡特拉 美洲/諾姆 美洲/錫特卡 美洲/亞庫塔特 |
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 資料遺失或失敗
- 主要執行個體及其備用資源之間的資料不一致
- 複製作業中斷
如果將主要、獨立和 HA 執行個體的 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
batched_key_access
,先前已透過指令設為on
。如要保留先前設定的所有子旗標並新增子旗標,您必須在新增子旗標時,加入要設定的所有子旗標值。
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 系統變數。
- 進一步瞭解操作指南。