本頁面說明如何設定 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
集合。如要進一步瞭解輸出內容中的標記表示法,請參閱「Instances Resource Representation」。
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
-
- 1 個 db-f1-micro 和 db-g1-small。
- 如果 RAM 小於 7.5 GB,則為 1。
- 2:如果 RAM 介於 7.5 GB 和 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
預設值: 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
預設值: 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
預設值: 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
預設值: -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
預設值: 10 |
否 |
cte_max_recursion_depth | integer 0 ... 4294967295
預設值: 1000 |
否 |
default_authentication_plugin | string mysql_native_password|caching_sha2_password
|
是 |
default_password_lifetime | integer 0...65535
預設值: 0
|
否 |
default_time_zone | string 您可以透過兩種方式指定時區:時區偏移量和時區名稱。舉例來說, +00:00 是倫敦 (屬於世界標準時間時區) 的時區偏移,而 Europe/London 則是時區名稱。
您可以使用值指定時區偏移量,從 使用時區名稱時,系統會自動調整為日光節約時間。使用時區偏差時,系統不支援此功能。請參閱 Cloud SQL for MySQL 支援的時區名稱清單。您必須在主要執行個體和所有唯讀備用資源上手動更新這個標記,才能將其納入考量。 如要設定時區,但不導致 Cloud SQL 執行個體重新啟動,請使用 |
是 |
default_week_format | integer 0 ... 7
預設值: 0 |
否 |
delay_key_write | enumeration OFF 、ON (預設) 或 ALL |
否 |
disconnect_on_expired_password | boolean on | off
預設值: on
|
是 |
div_precision_increment | integer 0 ... 30
預設值: 4 |
否 |
end_markers_in_json |
boolean on | off
預設值: off
|
否 |
eq_range_index_dive_limit | integer 0 ... 2147483647 |
否 |
event_scheduler | boolean on | off
如果您正使用 Event Scheduler,請使用「ALWAYS」的 啟用政策設定執行個體,確保排定的事件可以執行。 如要進一步瞭解此標記,請參閱「提示」一節。 |
否 |
expire_logs_days | integer 0 ... 99 預設值為 0,表示不會自動移除。 注意:MySQL 8.4 不支援這個標記。
請改用 |
否 |
explicit_defaults_for_timestamp | boolean on | off |
否 |
flush_time | integer 0 ... 31536000
預設值: 0 |
否 |
foreign_key_checks |
boolean on | off
預設值: on
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
ft_max_word_len | integer 10 ... 252 |
是 |
ft_min_word_len | integer 1 ... 16 |
是 |
ft_query_expansion_limit | integer 0 ... 1000 |
是 |
ft_stopword_file | string |
是 |
general_log | boolean on | off
如要進一步瞭解一般記錄,請參閱提示一節。 |
否 |
generated_random_password_length | integer 5-255
預設值: 20
|
否 |
group_concat_max_len | integer 4 ... 17179869184 |
否 |
gtid_executed_compression_period | integer 0 ... 4294967295
預設值 (最高為 8.0.22 版): 1000
預設值 (8.0.23 以上版本): 0
|
否 |
histogram_generation_max_mem_size | integer 1000000 ... 4294967295
預設值: 20000000
|
否 |
init_connect | string |
否 |
innodb_adaptive_hash_index | boolean on | off |
否 |
innodb_adaptive_hash_index_parts | integer 1 ... 512 |
是 |
innodb_adaptive_max_sleep_delay | integer 0 ... 1000000 |
否 |
innodb_autoextend_increment | integer 1 ... 1000 |
否 |
innodb_autoinc_lock_mode | integer 0 ... 2 |
是 |
innodb_buffer_pool_chunk_size | integer 1048576 ... (innodb_buffer_pool_size/innodb_buffer_pool_instances) 這個標記值取決於 |
是 |
innodb_buffer_pool_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
預設值: 80 |
否 |
innodb_log_spin_cpu_pct_hwm | integer 0 ... 100
預設值: 50 |
否 |
innodb_log_wait_for_flush_spin_hwm | integer 0 ... 4294967295
預設值: 400 |
否 |
innodb_log_write_ahead_size | integer 512 ... 65536
預設值: 8192 |
否 |
innodb_lru_scan_depth | integer 100 ... 9223372036854775807 |
否 |
innodb_max_dirty_pages_pct | float 0 ... 99.99
預設值: 90 |
否 |
innodb_max_dirty_pages_pct_lwm | float 0 ... 99.99
預設值: 10 |
否 |
innodb_max_purge_lag | integer 0 ... 4294967295
預設值: 0 |
否 |
innodb_max_undo_log_size | integer 10485760 ... 9223372036854775807
預設值: 1073741824 |
否 |
innodb_max_purge_lag_delay | integer 0 ... 10000000
預設值: 0 |
否 |
innodb_monitor_disable |
string |
否 |
innodb_monitor_enable |
string |
否 |
innodb_monitor_reset |
string counter , module , pattern , all |
否 |
innodb_monitor_reset_all |
enumeration 有效值: counter 、module 、pattern 、all |
否 |
innodb_old_blocks_pct | integer 5 ... 95 |
否 |
innodb_old_blocks_time | integer 0 ... 4294967295 |
否 |
innodb_online_alter_log_max_size | integer 65536 ... 9223372036854775807 |
否 |
innodb_open_files | integer 100 ... 2147483647
預設: MySQL 5.7: 2000
MySQL 8.0 以上版本: 4000 |
≥ 8.0.28 :否 ≤ 8.0.27 :是 |
innodb_optimize_fulltext_only | boolean on | off |
否 |
innodb_page_cleaners | integer 1 ... 64 MySQL 5.7 以上版本支援。 對於 MySQL 5.7 和 8.0,預設值為 4 。在 MySQL 8.4 中,預設值等於為 innodb_buffer_pool_instances 旗標設定的值。 |
是 |
innodb_parallel_read_threads | integer 1 ... 256
預設值: 4 |
否 |
innodb_print_all_deadlocks | boolean on | off
預設值: off |
否 |
innodb_print_ddl_logs | boolean on | off |
否 |
innodb_purge_batch_size | integer 1 ... 5000
預設值: 300 |
否 |
innodb_purge_rseg_truncate_frequency | integer 1 ... 128
預設值: 128 |
否 |
innodb_purge_threads | integer 1 ... 32
預設值: 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
預設值: 12.5 |
否 |
innodb_sort_buffer_size | integer 65536 ... 67108864 |
是 |
innodb_spin_wait_delay | integer MySQL 5.7: 0 ... 1000000 MySQL 8.0.13 以上版本: 0 ... 1000
預設: 6 |
否 |
innodb_stats_auto_recalc | boolean on | off |
否 |
innodb_stats_include_delete_marked | boolean on | off
預設值: off |
否 |
innodb_stats_method | enumeration nulls_equal | nulls_unequal | nulls_ignored |
否 |
innodb_stats_on_metadata | boolean on | off |
否 |
innodb_stats_persistent | boolean on | off |
否 |
innodb_stats_persistent_sample_pages | integer 1 ... 9223372036854775807 |
否 |
innodb_stats_sample_pages | integer 1 ... 9223372036854775807 |
否 |
innodb_stats_transient_sample_pages | integer 1 ... 9223372036854775807 |
否 |
innodb_status_output | boolean on | off |
否 |
innodb_status_output_locks | boolean on | off |
否 |
innodb_strict_mode | boolean on | off |
否 |
innodb_sync_array_size | 1 ... 1024
預設值為 1。 |
是 |
innodb_sync_spin_loops | integer 0 ... 4294967295
預設值:30 |
否 |
innodb_table_locks | boolean on | off
預設值: on |
否 |
innodb_thread_concurrency | integer 0 ... 1000 |
否 |
innodb_thread_sleep_delay | integer 0 ... 1000000 |
否 |
innodb_undo_log_truncate | boolean on | off
預設值: on |
否 |
innodb_use_native_aio | boolean on | off
預設值: on |
是 |
innodb_write_io_threads | integer 1 ... 64 |
是 |
interactive_timeout | integer 1 ... 31536000 |
否 |
internal_tmp_disk_storage_engine | enumeration INNODB | MYISAM 預設值: INNODB |
否 |
internal_tmp_mem_storage_engine | enumeration MEMORY , TempTable |
否 |
join_buffer_size | integer 128 ... 9223372036854775807 |
否 |
keep_files_on_create |
boolean on | off
預設值: off
|
否 |
key_buffer_size | integer 4096 ... 4294967295
預設值: 8388608 |
否 |
key_cache_age_threshold | integer 100 ... 9223372036854775807
預設值: 300 |
否 |
key_cache_block_size | integer 512 ... 16384
預設值: 1024 |
否 |
key_cache_division_limit | integer 1 ... 100
預設值: 100 |
否 |
lc_times_names | string en_US | cs_CZ | da_DK | nl_NL | et_EE | fr_FR | de_DE | el_GR | hu_HU | it_IT | ja_JP | ko_KR | no_NO | nb_NO | pl_PL | pt_PT | ro_RO | ru_RU | sr_RS | sk_SK | es_ES | sv_SE | uk_UA
預設值: en_US |
否 |
local_infile | boolean on | off |
否 |
lock_wait_timeout | integer 1 ... 31536000 |
否 |
log_bin_trust_function_creators | boolean on | off |
否 |
log_output | set FILE | TABLE | NONE |
否 |
log_error_verbosity | integer 1 ... 3
預設值: 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
預設值: 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
預設值: 4294967296 |
否 |
max_binlog_size | integer 4096 ... 1073741824 |
否 |
max_binlog_stmt_cache_size | integer 4096 ... 4294967296
預設值: 4294967296 |
否 |
max_connect_errors | integer 1 ... 9223372036854775807
預設值: 100 |
否 |
max_connections | integer 1 ... 100000
|
否 |
max_digest_length | integer 0 ... 1048576 |
是 |
max_error_count | integer 0 ... 65535
預設值: MySQL 5.7 以下版本: 64 MySQL 8.0 以上版本: 1024 |
否 |
max_execution_time | integer 0 ... 9223372036854775807 |
否 |
max_heap_table_size | integer 16384 ... 67108864
如要進一步瞭解此標記,請參閱提示一節。 |
否 |
max_join_size | integer 16 ... 9223372036854775807 |
否 |
max_length_for_sort_data | integer 4 ... 8388608 |
否 |
max_points_in_geometry | integer 3 ... 1048576 |
否 |
max_prepared_stmt_count | integer 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
預設值: 0 |
否 |
myisam_data_pointer_size |
integer 2...7
預設值: 6
|
否 |
myisam_max_sort_file_size |
integer 0...9223372036853727232
預設值: 9223372036853727232
|
否 |
myisam_mmap_size |
integer 7...9223372036854775807
預設值: 9223372036854775807
|
是 |
myisam_sort_buffer_size |
integer 4096...4294967295
預設值: 8388608
|
否 |
myisam_stats_method | string "nulls_unequal, nulls_equal, nulls_ignored"
預設值: nulls_unequal |
否 |
myisam_use_mmap |
boolean on | off
預設值: off
|
否 |
mysql_native_password_proxy_users |
boolean on | off
預設值: off
|
否 |
net_buffer_length | integer 1024 ... 1048576
預設值: 16384
|
否 |
net_read_timeout | integer 30 ... 4294967295 |
否 |
net_retry_count | integer 10 ... 4294967295 |
否 |
net_write_timeout | integer 60 ... 4294967295 |
否 |
ngram_token_size | integer 1 ... 10
預設值: 2
|
是 |
optimizer_prune_level | integer 0 ... 1 |
否 |
optimizer_search_depth | integer 0 ... 62 |
否 |
optimizer_switch |
multi-value repeated string 如要進一步瞭解多值標記,請參閱「提示」一節。 |
否 |
optimizer_trace |
multi-value repeated string enabled=on 、enabled=off 、one_line=on 、one_line=off 如要進一步瞭解多值標記,請參閱「提示」一節。 |
否 |
optimizer_trace_features |
multi-value repeated string 如要進一步瞭解多值標記,請參閱「提示」一節。 |
否 |
optimizer_trace_max_mem_size | integer 0 ... 9223372036854775807 |
否 |
optimizer_trace_offset | integer -9223372036854775808 ... 9223372036854775807 |
否 |
parser_max_mem_size | integer 10000000 ... 9223372036854775807 |
否 |
password_history | integer 0-4294967295
預設值: 0
|
否 |
password_require_current | boolean on | off
預設值: off
|
否 |
password_reuse_interval | integer 0-4294967295
預設值: 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
預設值: 32768
|
否 |
query_alloc_block_size | integer 1024 ... 4294967295 |
否 |
query_cache_limit | integer 0 ... 223338299392 這個標記不適用於 MySQL 8.0 以上版本,因為查詢快取已在 MySQL 5.7.20 淘汰,並在 MySQL 8.0 中移除。 |
否 |
query_cache_min_res_unit | integer 0 ... 9223372036854775807 這個標記不適用於 MySQL 8.0 以上版本,因為查詢快取已在 MySQL 5.7.20 淘汰,並在 MySQL 8.0 中移除。 |
否 |
query_cache_size | integer 0 ... 223338299392 這個標記不適用於 MySQL 8.0 以上版本,因為查詢快取已在 MySQL 5.7.20 淘汰,並在 MySQL 8.0 中移除。 |
否 |
query_cache_type | enumeration 0 ... 2 這個標記不適用於 MySQL 8.0 以上版本,因為查詢快取已在 MySQL 5.7.20 淘汰,並在 MySQL 8.0 中移除。 |
是 |
query_cache_wlock_invalidate | boolean on | off 這個標記不適用於 MySQL 8.0 以上版本,因為查詢快取已在 MySQL 5.7.20 淘汰,並在 MySQL 8.0 中移除。 |
否 |
query_prealloc_size | integer 8192 ... 9223372036854775807 |
否 |
range_alloc_block_size | integer 4096 ... 4294967295 |
否 |
range_optimizer_max_mem_size | integer 0 ... 9223372036854775807 |
否 |
read_buffer_size | integer 8192 ... 2147483647 |
否 |
read_only | boolean on | off
對備用資源沒有影響。 |
否 |
read_rnd_buffer_size | integer 1 ... 2147483647 |
否 |
regexp_stack_limit | integer 0 ... 2147483647 |
否 |
regexp_time_limit | integer 0 ... 2147483647
預設值: 32
|
否 |
replica_checkpoint_group | integer 32 ... 524280 預設值為 512。 這個旗標不會影響未啟用多執行緒的複本。 |
否 |
replica_checkpoint_period | integer 1 ... 4294967295 預設值為 300。 單位為毫秒。 |
否 |
replica_compressed_protocol | boolean on | off
|
否 |
replica_net_timeout | integer 1 ... 31536000
單位為秒。 |
否 |
replica_parallel_type | enumeration DATABASE , LOGICAL_CLOCK 預設: MySQL 8.0.26 以下版本: DATABASE MySQL 8.0.27 以上版本: LOGICAL_CLOCK
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
replica_parallel_workers | integer
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
replica_pending_jobs_size_max | integer
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
replica_preserve_commit_order | boolean
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
replica_skip_errors | string
預設值: OFF
如要進一步瞭解此標記,請參閱「提示」一節。 |
是 |
replica_sql_verify_checksum | boolean
on | off |
否 |
replica_transaction_retries | integer
0 ... 9223372036854775807 |
否 |
replica_type_conversions | String 值: ALL_LOSSY 、ALL_NON_LOSSY 、ALL_SIGNED 、ALL_UNSIGNED |
否 |
replicate_do_db | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
replicate_do_table | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
replicate_ignore_db | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
replicate_ignore_table | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
replicate_wild_do_table | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
replicate_wild_ignore_table | string
如要進一步瞭解如何使用這個標記,請參閱「複製篩選器」一節。 |
否 |
rpl_read_size | integer 8192 ... 4294959104
預設值: 8192
|
否 |
schema_definition_cache | integer 256 ... 524288
預設值: 256
|
否 |
session_track_gtids | string
OFF | OWN_GTID | ALL_GTIDS
預設: OFF
|
否 |
session_track_schema | boolean on | off
預設: on
|
否 |
session_track_state_change | boolean on | off
預設: off
|
否 |
session_track_transaction_info | string
OFF | STATE | CHARACTERISTICS
預設: OFF
|
否 |
sha256_password_proxy_users |
boolean on | off
預設值: off
|
否 |
show_create_table_verbosity | boolean on | off
預設: off
|
否 |
show_compatibility_56 | boolean on | off
僅在 MySQL 5.7 中支援。 |
否 |
skip_character_set_client_handshake |
boolean on | off
預設值: off
|
是 |
skip_show_database | flag on | off |
是 |
slave_checkpoint_group | integer 32 ... 524280 預設值為 512。 這個旗標不會影響未啟用多執行緒的複本。 |
否 |
slave_checkpoint_period | integer 1 ... 4294967295 預設值為 300。 單位為毫秒。 |
否 |
slave_compressed_protocol | boolean on | off
|
否 |
slave_net_timeout | integer 1 ... 31536000
單位為秒。 |
否 |
slave_parallel_type | enumeration DATABASE , LOGICAL_CLOCK 預設: MySQL 8.0.26 以下版本: DATABASE MySQL 8.0.27 以上版本: LOGICAL_CLOCK
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
slave_parallel_workers | integer
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
slave_preserve_commit_order | boolean
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
slave_pending_jobs_size_max | integer
如要進一步瞭解如何使用這個旗標及其可接受的值,請參閱「設定平行複製功能」。 |
否 |
slave_skip_errors | string
預設值: OFF
如要進一步瞭解此標記,請參閱「提示」一節。 |
是 |
slave_sql_verify_checksum | boolean
on | off
|
否 |
slave_transaction_retries | integer
0 ... 9223372036854775807 |
否 |
slave_type_conversions | string 值: ALL_LOSSY 、ALL_NON_LOSSY 、ALL_SIGNED 、ALL_UNSIGNED |
否 |
slow_launch_time | Integer 0 ... 31536000 預設: 2 |
否 |
slow_query_log | boolean on | off 如要進一步瞭解慢速查詢記錄,請參閱提示一節。 |
否 |
sort_buffer_size | integer 32768 ... 9223372036854775807 |
否 |
source_verify_checksum | boolean
on | off 預設值: off
|
否 |
sql_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
|
否 |
時區名稱
在本節中,您將瞭解 Cloud SQL for MySQL 支援的時區名稱。
本節的資料表會顯示以下內容:
- 時區名稱:Cloud SQL for MySQL 支援的名稱。
- STD:標準時間 (STD) 中的時區偏移。
- DST:日光節約時間 (DST) 中的時區偏移。
- 同義字名稱:您可能想使用的時區名稱,但 Cloud SQL for MySQL 不支援這些時區。如果發生這種情況,請使用對應的時區名稱。
時區名稱 | 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 | 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
南極洲/麥克馬多 南極洲/南極 |
Pacific/Fiji | +12:00 | +13:00 | |
Pacific/Guam | +10:00 | +10:00 | Pacific/Saipan |
Pacific/Honolulu | −10:00 | −10:00 | US/Hawaii
太平洋/詹斯頓 HST |
Pacific/Samoa | −11:00 | −11:00 | Pacific/Pago_Pago
US/Samoa |
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
- 如果您啟用即時復原功能,二進位記錄的到期期限會根據交易記錄保留期限和這些標記的值,取較短者。您可以使用這些標記來管理二進位記錄在副本上儲存的時間長度。
expire_logs_days
標記已從 MySQL 8.4 以上版本中移除。詳情請參閱「 交易記錄保留」頁面。
- innodb_buffer_pool_size
這個標記的值是緩衝區的大小 (以位元組為單位)。緩衝區大小必須一律等於或為
innodb_buffer_pool_chunk_size
乘以innodb_buffer_pool_instances
後所得值的倍數。如果您將緩衝區集區大小變更為不等於innodb_buffer_pool_chunk_size
乘以innodb_buffer_pool_instances
的值或倍數,Cloud SQL 會自動調整緩衝區集區大小。在 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 當機或區域 HA 執行個體發生故障轉移
- 二進位記錄和 InnoDB 資料檔案中的資料不同步
- PITR 資料遺失或失敗
- 主要執行個體與備用資源之間的資料不一致
- 複製作業中斷
如果將 innodb_flush_log_at_trx_commit
或 sync_binlog
旗標的值設為非預設值,主、獨立和 HA 執行個體的耐用性就會降低。
如果您需要提高唯讀備用資源的效能,建議將 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_timeout
旗標的微秒時間長度僅適用於 innodb_flush_log_at_trx_commit
耐用性旗標設為 2
的情況。
清除頁面的頻率可能會高於或低於為 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 重做記錄大小的值會根據 innodb_log_file_size
* innodb_log_file_in_group
計算。舉例來說,如果您將 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:可能導致 PITR 還原狀態與歷史狀態之間的資料不一致
- 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 | ROW | 僅在 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 以上版本。如要進一步瞭解此標記,請參閱「MySQL 8.0 中的部分撤銷系統標記」。 |
MySQL 8.0 以上版本中的 partial_revokes 系統標記
partial_revokes
旗標可讓您限制資料庫結構定義的使用者存取權。在 MySQL 適用的 Cloud SQL 8.0 以上版本中,partial_revokes
標記會設為 ON
。這樣一來,在 MySQL 8.0 中授予或撤銷資料庫結構定義的使用者權限時,就無法使用萬用字元。請更新 GRANT
陳述式,使用資料庫結構定義的完整名稱,而非萬用字元。
舉例來說,如果您使用下列指令搭配 %\
萬用字元,在 MySQL 5.7 中授予使用者權限,則會為使用者授予所有結尾為 _foobar
的資料庫權限。
GRANT ALL PRIVILEGES ON `%\_foobar`.* TO 'testuser'@'%';
不過,在 MySQL 8.0 中,使用者只能存取與 %\_foobar
完全相符的資料庫。
在 MySQL 8.0 以上版本中,您可以透過兩種方式授予多個資料庫的存取權。
您可以使用完整資料庫名稱授予特定資料庫權限,如以下指令所示:
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 系統變數。
- 進一步瞭解操作指南。