github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/test/testdata/resources/mysql-consensus-config-constraint.yaml (about)

     1  apiVersion: apps.kubeblocks.io/v1alpha1
     2  kind: ConfigConstraint
     3  metadata:
     4    name: mysql8.0-config-constraints
     5    labels:
     6      helm.sh/chart: apecloud-mysql-0.1.8
     7      app.kubernetes.io/name: apecloud-mysql
     8      app.kubernetes.io/instance: release-name
     9      app.kubernetes.io/version: "8.0.30"
    10      app.kubernetes.io/managed-by: Helm
    11  spec:
    12    # configmap reference
    13    # tplRef: mysql-3node-tpl-8.0
    14    reloadOptions:
    15      tplScriptTrigger:
    16        scriptConfigMapRef: mysql-reload-script
    17  
    18  
    19  
    20  
    21    # top level mysql configuration type
    22    cfgSchemaTopLevelName: MysqlParameter
    23  
    24    # ConfigurationSchema that impose restrictions on engine parameter's rule
    25    configurationSchema:
    26      # schema: auto generate from mmmcue scripts
    27      # example: ../../pkg/configuration/testdata/mysql_openapi.json
    28      cue: |-
    29        //Copyright (C) 2022-2023 ApeCloud Co., Ltd
    30        //
    31        //This file is part of KubeBlocks project
    32        //
    33        //This program is free software: you can redistribute it and/or modify
    34        //it under the terms of the GNU Affero General Public License as published by
    35        //the Free Software Foundation, either version 3 of the License, or
    36        //(at your option) any later version. 
    37        //
    38        //This program is distributed in the hope that it will be useful
    39        //but WITHOUT ANY WARRANTY; without even the implied warranty of
    40        //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    41        //GNU Affero General Public License for more details.
    42        //
    43        //You should have received a copy of the GNU Affero General Public License
    44        //along with this program.  If not, see <http://www.gnu.org/licenses/>.
    45        
    46        #MysqlParameter: {
    47        
    48        	// reference aws rds params: https://console.amazonaws.cn/rds/home?region=cn-north-1#parameter-groups-detail:ids=default.mysql8.0;type=DbParameterGroup;editing=false
    49        	// auto generate by cue_generate.go
    50        
    51        	// Automatically set all granted roles as active after the user has authenticated successfully.
    52        	activate_all_roles_on_login: string & "0" | "1" | "OFF" | "ON" | *"0"
    53        
    54        	// Controls whether user-defined functions that have only an xxx symbol for the main function can be loaded
    55        	"allow-suspicious-udfs"?: string & "0" | "1" | "OFF" | "ON"
    56        
    57        	// Sets the autocommit mode
    58        	autocommit?: string & "0" | "1" | "OFF" | "ON"
    59        
    60        	// Controls whether the server autogenerates SSL key and certificate files in the data directory, if they do not already exist.
    61        	auto_generate_certs?: string & "0" | "1" | "OFF" | "ON"
    62        
    63        	// Intended for use with master-to-master replication, and can be used to control the operation of AUTO_INCREMENT columns
    64        	auto_increment_increment?: int & >=1 & <=65535
    65        
    66        	// Determines the starting point for the AUTO_INCREMENT column value
    67        	auto_increment_offset?: int & >=1 & <=65535
    68        
    69        	// When this variable has a value of 1 (the default), the server automatically grants the EXECUTE and ALTER ROUTINE privileges to the creator of a stored routine, if the user cannot already execute and alter or drop the routine.
    70        	automatic_sp_privileges?: string & "0" | "1" | "OFF" | "ON"
    71        
    72        	// This variable controls whether ALTER TABLE implicitly upgrades temporal columns found to be in pre-5.6.4 format.
    73        	avoid_temporal_upgrade?: string & "0" | "1" | "OFF" | "ON"
    74        
    75        	// The number of outstanding connection requests MySQL can have
    76        	back_log?: int & >=1 & <=65535
    77        
    78        	// The MySQL installation base directory.
    79        	basedir?: string
    80        
    81        	big_tables: string & "0" | "1" | "OFF" | "ON" | *"0"
    82        
    83        	bind_address?: string
    84        
    85        	// The size of the cache to hold the SQL statements for the binary log during a transaction.
    86        	binlog_cache_size: int & >=4096 & <=18446744073709547520 | *32768
    87        
    88        	// When enabled, this variable causes the master to write a checksum for each event in the binary log.
    89        	binlog_checksum?: string & "NONE" | "CRC32"
    90        
    91        	binlog_direct_non_transactional_updates: string & "0" | "1" | "OFF" | "ON" | *"0"
    92        
    93        	// Controls what happens when the server cannot write to the binary log.
    94        	binlog_error_action?: string & "IGNORE_ERROR" | "ABORT_SERVER"
    95        
    96        	// If non-zero, binary logs will be purged after expire_logs_days days; If this option alone is set on the command line or in a configuration file, it overrides the default value for binlog-expire-logs-seconds. If both options are set to nonzero values, binlog-expire-logs-seconds takes priority. Possible purges happen at startup and at binary log rotation.
    97        	binlog_expire_logs_seconds: int & >=0 & <=4294967295 | *2592000
    98        
    99        	// Row-based, Statement-based or Mixed replication
   100        	binlog_format?: string & "ROW" | "STATEMENT" | "MIXED"
   101        
   102        	// Controls how many microseconds the binary log commit waits before synchronizing the binary log file to disk.
   103        	binlog_group_commit_sync_delay?: int & >=0 & <=1000000
   104        
   105        	// The maximum number of transactions to wait for before aborting the current delay as specified by binlog-group-commit-sync-delay.
   106        	binlog_group_commit_sync_no_delay_count?: int & >=0 & <=1000000
   107        
   108        	// Controls how binary logs are iterated during GTID recovery
   109        	binlog_gtid_simple_recovery?: string & "0" | "1" | "OFF" | "ON"
   110        
   111        	// How long in microseconds to keep reading transactions from the flush queue before proceeding with the group commit (and syncing the log to disk, if sync_binlog is greater than 0). If the value is 0 (the default), there is no timeout and the server keeps reading new transactions until the queue is empty.
   112        	binlog_max_flush_queue_time?: int & >=0 & <=100000
   113        
   114        	// If this variable is enabled (the default), transactions are committed in the same order they are written to the binary log. If disabled, transactions may be committed in parallel.
   115        	binlog_order_commits?: string & "0" | "1" | "OFF" | "ON"
   116        
   117        	// Whether the server logs full or minimal rows with row-based replication.
   118        	binlog_row_image?: string & "FULL" | "MINIMAL" | "NOBLOB"
   119        
   120        	// Controls whether metadata is logged using FULL or MINIMAL format. FULL causes all metadata to be logged; MINIMAL means that only metadata actually required by slave is logged. Default: MINIMAL.
   121        	binlog_row_metadata?: string & "FULL" | "MINIMAL"
   122        
   123        	// When enabled, it causes a MySQL 5.6.2 or later server to write informational log events such as row query log events into its binary log.
   124        	binlog_rows_query_log_events?: string & "0" | "1" | "OFF" | "ON"
   125        
   126        	// When set to PARTIAL_JSON, this option enables a space-efficient row-based binary log format for UPDATE statements that modify a JSON value using only the functions JSON_SET, JSON_REPLACE, and JSON_REMOVE. For such updates, only the modified parts of the JSON document are included in the binary log, so small changes of big documents may need significantly less space.
   127        	binlog_row_value_options?: string & "PARTIAL_JSON"
   128        
   129        	// This variable determines the size of the cache for the binary log to hold nontransactional statements issued during a transaction.
   130        	binlog_stmt_cache_size?: int & >=4096 & <=18446744073709547520
   131        
   132        	// Maximum number of rows to keep in the writeset history.
   133        	binlog_transaction_dependency_history_size?: int & >=1 & <=1000000
   134        
   135        	// Selects the source of dependency information from which to assess which transactions can be executed in parallel by the slave's multi-threaded applier. Possible values are COMMIT_ORDER, WRITESET and WRITESET_SESSION.
   136        	binlog_transaction_dependency_tracking?: string & "COMMIT_ORDER" | "WRITESET" | "WRITESET_SESSION"
   137        
   138        	// This variable controls the block encryption mode for block-based algorithms such as AES. It affects encryption for AES_ENCRYPT() and AES_DECRYPT().
   139        	block_encryption_mode?: string & "aes-128-ecb" | "aes-192-ecb" | "aes-256-ecb" | "aes-128-cbc" | "aes-192-cbc" | "aes-256-cbc"
   140        
   141        	// Limits the size of the MyISAM cache tree in bytes per thread.
   142        	bulk_insert_buffer_size?: int & >=0 & <=18446744073709547520
   143        
   144        	// Auto generate RSA keys at server startup if corresponding system variables are not specified and key files are not present at the default location.
   145        	caching_sha2_password_auto_generate_rsa_keys: string & "0" | "1" | "OFF" | "ON" | *"1"
   146        
   147        	// A fully qualified path to the private RSA key used for authentication.
   148        	caching_sha2_password_private_key_path?: string
   149        
   150        	// A fully qualified path to the public RSA key used for authentication.
   151        	caching_sha2_password_public_key_path?: string
   152        
   153        	// The character set for statements that arrive from the client.
   154        	character_set_client?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "cp1256" | "cp1257" | "binary" | "geostd8" | "cp932" | "eucjpms"
   155        
   156        	// Don't ignore character set information sent by the client.
   157        	"character-set-client-handshake"?: string & "0" | "1" | "OFF" | "ON"
   158        
   159        	// The character set used for literals that do not have a character set introducer and for number-to-string conversion.
   160        	character_set_connection?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "ucs2" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "utf16" | "cp1256" | "cp1257" | "utf32" | "binary" | "geostd8" | "cp932" | "eucjpms"
   161        
   162        	// The character set used by the default database.
   163        	character_set_database?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "ucs2" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "utf16" | "cp1256" | "cp1257" | "utf32" | "binary" | "geostd8" | "cp932" | "eucjpms"
   164        
   165        	// The file system character set.
   166        	character_set_filesystem?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "ucs2" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "utf16" | "cp1256" | "cp1257" | "utf32" | "binary" | "geostd8" | "cp932" | "eucjpms"
   167        
   168        	// The character set used for returning query results to the client.
   169        	character_set_results?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "ucs2" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "utf16" | "cp1256" | "cp1257" | "utf32" | "binary" | "geostd8" | "cp932" | "eucjpms"
   170        
   171        	character_sets_dir?: string
   172        
   173        	// The server's default character set.
   174        	character_set_server?: string & "big5" | "dec8" | "cp850" | "hp8" | "koi8r" | "latin1" | "latin2" | "swe7" | "ascii" | "ujis" | "sjis" | "hebrew" | "tis620" | "euckr" | "koi8u" | "gb2312" | "greek" | "cp1250" | "gbk" | "latin5" | "armscii8" | "utf8" | "ucs2" | "cp866" | "keybcs2" | "macce" | "macroman" | "cp852" | "latin7" | "utf8mb4" | "cp1251" | "utf16" | "cp1256" | "cp1257" | "utf32" | "binary" | "geostd8" | "cp932" | "eucjpms"
   175        
   176        	// Controls whether the mysql_native_password and sha256_password built-in authentication plugins support proxy users.
   177        	check_proxy_users?: string & "0" | "1" | "OFF" | "ON"
   178        
   179        	// The collation of the connection character set.
   180        	collation_connection?: string & "big5_chinese_ci" | "big5_bin" | "dec8_swedish_ci" | "dec8_bin" | "cp850_general_ci" | "cp850_bin" | "hp8_english_ci" | "hp8_bin" | "koi8r_general_ci" | "koi8r_bin" | "latin1_german1_ci" | "latin1_swedish_ci" | "latin1_danish_ci" | "latin1_german2_ci" | "latin1_bin" | "latin1_general_ci" | "latin1_general_cs" | "latin1_spanish_ci" | "latin2_czech_cs" | "latin2_general_ci" | "latin2_hungarian_ci" | "latin2_croatian_ci" | "latin2_bin" | "swe7_swedish_ci" | "swe7_bin" | "ascii_general_ci" | "ascii_bin" | "ujis_japanese_ci" | "ujis_bin" | "sjis_japanese_ci" | "sjis_bin" | "hebrew_general_ci" | "hebrew_bin" | "tis620_thai_ci" | "tis620_bin" | "euckr_korean_ci" | "euckr_bin" | "koi8u_general_ci" | "koi8u_bin" | "gb2312_chinese_ci" | "gb2312_bin" | "greek_general_ci" | "greek_bin" | "cp1250_general_ci" | "cp1250_czech_cs" | "cp1250_croatian_ci" | "cp1250_bin" | "cp1250_polish_ci" | "gbk_chinese_ci" | "gbk_bin" | "latin5_turkish_ci" | "latin5_bin" | "armscii8_general_ci" | "armscii8_bin" | "utf8_general_ci" | "utf8_bin" | "utf8_unicode_ci" | "utf8_icelandic_ci" | "utf8_latvian_ci" | "utf8_romanian_ci" | "utf8_slovenian_ci" | "utf8_polish_ci" | "utf8_estonian_ci" | "utf8_spanish_ci" | "utf8_swedish_ci" | "utf8_turkish_ci" | "utf8_czech_ci" | "utf8_danish_ci" | "utf8_lithuanian_ci" | "utf8_slovak_ci" | "utf8_spanish2_ci" | "utf8_roman_ci" | "utf8_persian_ci" | "utf8_esperanto_ci" | "utf8_hungarian_ci" | "utf8_sinhala_ci" | "ucs2_general_ci" | "ucs2_bin" | "ucs2_unicode_ci" | "ucs2_icelandic_ci" | "ucs2_latvian_ci" | "ucs2_romanian_ci" | "ucs2_slovenian_ci" | "ucs2_polish_ci" | "ucs2_estonian_ci" | "ucs2_spanish_ci" | "ucs2_swedish_ci" | "ucs2_turkish_ci" | "ucs2_czech_ci" | "ucs2_danish_ci" | "ucs2_lithuanian_ci" | "ucs2_slovak_ci" | "ucs2_spanish2_ci" | "ucs2_roman_ci" | "ucs2_persian_ci" | "ucs2_esperanto_ci" | "ucs2_hungarian_ci" | "ucs2_sinhala_ci" | "cp866_general_ci" | "cp866_bin" | "keybcs2_general_ci" | "keybcs2_bin" | "macce_general_ci" | "macce_bin" | "macroman_general_ci" | "macroman_bin" | "cp852_general_ci" | "cp852_bin" | "latin7_estonian_cs" | "latin7_general_ci" | "latin7_general_cs" | "latin7_bin" | "utf8mb4_general_ci" | "utf8mb4_bin" | "utf8mb4_unicode_ci" | "utf8mb4_icelandic_ci" | "utf8mb4_latvian_ci" | "utf8mb4_romanian_ci" | "utf8mb4_slovenian_ci" | "utf8mb4_polish_ci" | "utf8mb4_estonian_ci" | "utf8mb4_spanish_ci" | "utf8mb4_swedish_ci" | "utf8mb4_turkish_ci" | "utf8mb4_czech_ci" | "utf8mb4_danish_ci" | "utf8mb4_lithuanian_ci" | "utf8mb4_slovak_ci" | "utf8mb4_spanish2_ci" | "utf8mb4_roman_ci" | "utf8mb4_persian_ci" | "utf8mb4_esperanto_ci" | "utf8mb4_hungarian_ci" | "utf8mb4_sinhala_ci" | "cp1251_bulgarian_ci" | "cp1251_ukrainian_ci" | "cp1251_bin" | "cp1251_general_ci" | "cp1251_general_cs" | "utf16_general_ci" | "utf16_bin" | "utf16_unicode_ci" | "utf16_icelandic_ci" | "utf16_latvian_ci" | "utf16_romanian_ci" | "utf16_slovenian_ci" | "utf16_polish_ci" | "utf16_estonian_ci" | "utf16_spanish_ci" | "utf16_swedish_ci" | "utf16_turkish_ci" | "utf16_czech_ci" | "utf16_danish_ci" | "utf16_lithuanian_ci" | "utf16_slovak_ci" | "utf16_spanish2_ci" | "utf16_roman_ci" | "utf16_persian_ci" | "utf16_esperanto_ci" | "utf16_hungarian_ci" | "utf16_sinhala_ci" | "cp1256_general_ci" | "cp1256_bin" | "cp1257_lithuanian_ci" | "cp1257_bin" | "cp1257_general_ci" | "utf32_general_ci" | "utf32_bin" | "utf32_unicode_ci" | "utf32_icelandic_ci" | "utf32_latvian_ci" | "utf32_romanian_ci" | "utf32_slovenian_ci" | "utf32_polish_ci" | "utf32_estonian_ci" | "utf32_spanish_ci" | "utf32_swedish_ci" | "utf32_turkish_ci" | "utf32_czech_ci" | "utf32_danish_ci" | "utf32_lithuanian_ci" | "utf32_slovak_ci" | "utf32_spanish2_ci" | "utf32_roman_ci" | "utf32_persian_ci" | "utf32_esperanto_ci" | "utf32_hungarian_ci" | "utf32_sinhala_ci" | "binary" | "geostd8_general_ci" | "geostd8_bin" | "cp932_japanese_ci" | "cp932_bin" | "eucjpms_japanese_ci" | "eucjpms_bin"
   181        
   182        	collation_database?: string
   183        
   184        	// The server's default collation.
   185        	collation_server?: string & "big5_chinese_ci" | "big5_bin" | "dec8_swedish_ci" | "dec8_bin" | "cp850_general_ci" | "cp850_bin" | "hp8_english_ci" | "hp8_bin" | "koi8r_general_ci" | "koi8r_bin" | "latin1_german1_ci" | "latin1_swedish_ci" | "latin1_danish_ci" | "latin1_german2_ci" | "latin1_bin" | "latin1_general_ci" | "latin1_general_cs" | "latin1_spanish_ci" | "latin2_czech_cs" | "latin2_general_ci" | "latin2_hungarian_ci" | "latin2_croatian_ci" | "latin2_bin" | "swe7_swedish_ci" | "swe7_bin" | "ascii_general_ci" | "ascii_bin" | "ujis_japanese_ci" | "ujis_bin" | "sjis_japanese_ci" | "sjis_bin" | "hebrew_general_ci" | "hebrew_bin" | "tis620_thai_ci" | "tis620_bin" | "euckr_korean_ci" | "euckr_bin" | "koi8u_general_ci" | "koi8u_bin" | "gb2312_chinese_ci" | "gb2312_bin" | "greek_general_ci" | "greek_bin" | "cp1250_general_ci" | "cp1250_czech_cs" | "cp1250_croatian_ci" | "cp1250_bin" | "cp1250_polish_ci" | "gbk_chinese_ci" | "gbk_bin" | "latin5_turkish_ci" | "latin5_bin" | "armscii8_general_ci" | "armscii8_bin" | "utf8_general_ci" | "utf8_bin" | "utf8_unicode_ci" | "utf8_icelandic_ci" | "utf8_latvian_ci" | "utf8_romanian_ci" | "utf8_slovenian_ci" | "utf8_polish_ci" | "utf8_estonian_ci" | "utf8_spanish_ci" | "utf8_swedish_ci" | "utf8_turkish_ci" | "utf8_czech_ci" | "utf8_danish_ci" | "utf8_lithuanian_ci" | "utf8_slovak_ci" | "utf8_spanish2_ci" | "utf8_roman_ci" | "utf8_persian_ci" | "utf8_esperanto_ci" | "utf8_hungarian_ci" | "utf8_sinhala_ci" | "ucs2_general_ci" | "ucs2_bin" | "ucs2_unicode_ci" | "ucs2_icelandic_ci" | "ucs2_latvian_ci" | "ucs2_romanian_ci" | "ucs2_slovenian_ci" | "ucs2_polish_ci" | "ucs2_estonian_ci" | "ucs2_spanish_ci" | "ucs2_swedish_ci" | "ucs2_turkish_ci" | "ucs2_czech_ci" | "ucs2_danish_ci" | "ucs2_lithuanian_ci" | "ucs2_slovak_ci" | "ucs2_spanish2_ci" | "ucs2_roman_ci" | "ucs2_persian_ci" | "ucs2_esperanto_ci" | "ucs2_hungarian_ci" | "ucs2_sinhala_ci" | "cp866_general_ci" | "cp866_bin" | "keybcs2_general_ci" | "keybcs2_bin" | "macce_general_ci" | "macce_bin" | "macroman_general_ci" | "macroman_bin" | "cp852_general_ci" | "cp852_bin" | "latin7_estonian_cs" | "latin7_general_ci" | "latin7_general_cs" | "latin7_bin" | "utf8mb4_0900_ai_ci" | "utf8mb4_general_ci" | "utf8mb4_bin" | "utf8mb4_unicode_ci" | "utf8mb4_icelandic_ci" | "utf8mb4_latvian_ci" | "utf8mb4_romanian_ci" | "utf8mb4_slovenian_ci" | "utf8mb4_polish_ci" | "utf8mb4_estonian_ci" | "utf8mb4_spanish_ci" | "utf8mb4_swedish_ci" | "utf8mb4_turkish_ci" | "utf8mb4_czech_ci" | "utf8mb4_danish_ci" | "utf8mb4_lithuanian_ci" | "utf8mb4_slovak_ci" | "utf8mb4_spanish2_ci" | "utf8mb4_roman_ci" | "utf8mb4_persian_ci" | "utf8mb4_esperanto_ci" | "utf8mb4_hungarian_ci" | "utf8mb4_sinhala_ci" | "cp1251_bulgarian_ci" | "cp1251_ukrainian_ci" | "cp1251_bin" | "cp1251_general_ci" | "cp1251_general_cs" | "utf16_general_ci" | "utf16_bin" | "utf16_unicode_ci" | "utf16_icelandic_ci" | "utf16_latvian_ci" | "utf16_romanian_ci" | "utf16_slovenian_ci" | "utf16_polish_ci" | "utf16_estonian_ci" | "utf16_spanish_ci" | "utf16_swedish_ci" | "utf16_turkish_ci" | "utf16_czech_ci" | "utf16_danish_ci" | "utf16_lithuanian_ci" | "utf16_slovak_ci" | "utf16_spanish2_ci" | "utf16_roman_ci" | "utf16_persian_ci" | "utf16_esperanto_ci" | "utf16_hungarian_ci" | "utf16_sinhala_ci" | "cp1256_general_ci" | "cp1256_bin" | "cp1257_lithuanian_ci" | "cp1257_bin" | "cp1257_general_ci" | "utf32_general_ci" | "utf32_bin" | "utf32_unicode_ci" | "utf32_icelandic_ci" | "utf32_latvian_ci" | "utf32_romanian_ci" | "utf32_slovenian_ci" | "utf32_polish_ci" | "utf32_estonian_ci" | "utf32_spanish_ci" | "utf32_swedish_ci" | "utf32_turkish_ci" | "utf32_czech_ci" | "utf32_danish_ci" | "utf32_lithuanian_ci" | "utf32_slovak_ci" | "utf32_spanish2_ci" | "utf32_roman_ci" | "utf32_persian_ci" | "utf32_esperanto_ci" | "utf32_hungarian_ci" | "utf32_sinhala_ci" | "binary" | "geostd8_general_ci" | "geostd8_bin" | "cp932_japanese_ci" | "cp932_bin" | "eucjpms_japanese_ci" | "eucjpms_bin"
   186        
   187        	// The transaction completion type (0 - default, 1 - chain, 2 - release)
   188        	completion_type?: int & >=0 & <=2
   189        
   190        	// Allows INSERT and SELECT statements to run concurrently for MyISAM tables that have no free blocks in the middle of the data file.
   191        	concurrent_insert?: int & >=0 & <=2
   192        
   193        	// The number of seconds that the MySQLd server waits for a connect packet before responding with Bad handshake.
   194        	connect_timeout?: int & >=2 & <=31536000
   195        
   196        	// Write a core file if mysqld dies.
   197        	"core-file"?: string & "0" | "1" | "OFF" | "ON"
   198        
   199        	// Abort a recursive common table expression if it does more than this number of iterations.
   200        	cte_max_recursion_depth: int & >=0 & <=4294967295 | *1000
   201        
   202        	// MySQL data directory
   203        	datadir?: string
   204        
   205        	// The default authentication plugin
   206        	default_authentication_plugin?: string & "mysql_native_password" | "sha256_password" | "caching_sha2_password"
   207        
   208        	// Controls default collation for utf8mb4 while replicating implicit utf8mb4 collations.
   209        	default_collation_for_utf8mb4?: string & "utf8mb4_0900_ai_ci" | "utf8mb4_general_ci"
   210        
   211        	// Defines the global automatic password expiration policy.
   212        	default_password_lifetime: int & >=0 & <=65535 | *0
   213        
   214        	// The default storage engine (table type).
   215        	default_storage_engine?: string & "InnoDB" | "MRG_MYISAM" | "BLACKHOLE" | "CSV" | "MEMORY" | "FEDERATED" | "ARCHIVE" | "MyISAM"
   216        
   217        	// Server current time zone
   218        	default_time_zone?: string
   219        
   220        	// The default storage engine for TEMPORARY tables.
   221        	default_tmp_storage_engine?: string
   222        
   223        	// The default mode value to use for the WEEK() function.
   224        	default_week_format?: int & >=0 & <=7
   225        
   226        	// After inserting delayed_insert_limit delayed rows, the INSERT DELAYED handler thread checks whether there are any SELECT statements pending. If so, it allows them to execute before continuing to insert delayed rows.
   227        	delayed_insert_limit?: int & >=1 & <=9223372036854775807
   228        
   229        	// How many seconds an INSERT DELAYED handler thread should wait for INSERT statements before terminating.
   230        	delayed_insert_timeout?: int & >=1 & <=31536000
   231        
   232        	// If the queue becomes full, any client that issues an INSERT DELAYED statement waits until there is room in the queue again.
   233        	delayed_queue_size?: int & >=1 & <=9223372036854775807
   234        
   235        	// Determines when keys are flushed for MyISAM tables
   236        	delay_key_write?: string & "OFF" | "ON" | "ALL"
   237        
   238        	// This variable indicates which storage engines cannot be used to create tables or tablespaces.
   239        	disabled_storage_engines?: string
   240        
   241        	// Controls how the server handles clients with expired passwords:
   242        	disconnect_on_expired_password?: string & "0" | "1" | "OFF" | "ON"
   243        
   244        	// Number of digits by which to increase the scale of the result of division operations.
   245        	div_precision_increment?: int & >=0 & <=30
   246        
   247        	// Whether optimizer JSON output should add end markers.
   248        	end_markers_in_json?: string & "0" | "1" | "OFF" | "ON"
   249        
   250        	// Prevents execution of statements that cannot be logged in a transactionally safe manner
   251        	enforce_gtid_consistency?: string & "OFF" | "WARN" | "ON"
   252        
   253        	// Number of equality ranges when the optimizer should switch from using index dives to index statistics.
   254        	eq_range_index_dive_limit?: int & >=0 & <=4294967295
   255        
   256        	// Indicates the status of the Event Scheduler
   257        	event_scheduler?: string & "ON" | "OFF"
   258        
   259        	expire_logs_days: int & >=0 & <=4294967295 | *2592000
   260        
   261        	// Needed for 5.6.7
   262        	explicit_defaults_for_timestamp: string & "0" | "1" | "OFF" | "ON" | *"1"
   263        
   264        	// If ON, the server flushes all changes to disk after each SQL statement.
   265        	flush?: string & "0" | "1" | "OFF" | "ON"
   266        
   267        	// Frees up resources and synchronize unflushed data to disk. Recommended only on systems with minimal resources.
   268        	flush_time?: int & >=0 & <=31536000
   269        
   270        	foreign_key_checks: string & "0" | "1" | "OFF" | "ON" | *"1"
   271        
   272        	// The list of operators supported by boolean full-text searches
   273        	ft_boolean_syntax?: string
   274        
   275        	// Maximum length of the word to be included in a FULLTEXT index.
   276        	ft_max_word_len?: int & >=10 & <=84
   277        
   278        	// Minimum length of the word to be included in a FULLTEXT index.
   279        	ft_min_word_len?: int & >=1 & <=84
   280        
   281        	// Number of top matches to use for full-text searches performed using WITH QUERY EXPANSION.
   282        	ft_query_expansion_limit?: int & >=0 & <=1000
   283        
   284        	// File for Full Search Stop Words. NULL uses Default, /dev/null to disable Stop Words
   285        	ft_stopword_file?: string & "/dev/null"
   286        
   287        	// Whether the general query log is enabled
   288        	general_log?: string & "0" | "1" | "OFF" | "ON"
   289        
   290        	// Location of mysql general log.
   291        	general_log_file?: string
   292        
   293        	// Maximum allowed result length in bytes for the GROUP_CONCAT().
   294        	group_concat_max_len?: int & >=4 & <=18446744073709547520
   295        
   296        	// Compress the mysql.gtid_executed table each time this many transactions have taken place.
   297        	gtid_executed_compression_period?: int & >=0 & <=4294967295
   298        
   299        	gtid_mode?: string & "0" | "OFF" | "ON" | "1"
   300        
   301        	// Controls whether GTID based logging is enabled and what type of transactions the logs can contain
   302        	"gtid-mode"?: string & "OFF" | "OFF_PERMISSIVE" | "ON_PERMISSIVE" | "ON"
   303        
   304        	gtid_owned?: string
   305        
   306        	// The set of all GTIDs that have been purged from the binary log
   307        	gtid_purged?: string
   308        
   309        	// Controls default collation for utf8mb4 while replicating implicit utf8mb4 collations.
   310        	histogram_generation_max_mem_size: int & >=1000000 & <=18446744073709551615 | *20000000
   311        
   312        	// The size of the internal host cache.
   313        	host_cache_size?: int & >=0 & <=65536
   314        
   315        	// The number of seconds after which mysqld server will fetch data from storage engine and replace the data in cache.
   316        	information_schema_stats_expiry: int & >=0 & <=31536000 | *86400
   317        
   318        	// String to be executed by the server for each client that connects.
   319        	init_connect?: string
   320        
   321        	init_file?: string
   322        
   323        	init_slave?: string
   324        
   325        	// Enables InnoDB Adaptive Flushing (default=on for RDS)
   326        	innodb_adaptive_flushing?: string & "0" | "1" | "OFF" | "ON"
   327        
   328        	// Low water mark representing percentage of redo log capacity at which adaptive flushing is enabled.
   329        	innodb_adaptive_flushing_lwm?: int & >=0 & <=70
   330        
   331        	// Whether innodb adaptive hash indexes are enabled or disabled
   332        	innodb_adaptive_hash_index?: string & "0" | "1" | "OFF" | "ON"
   333        
   334        	// Partitions the adaptive hash index search system.
   335        	innodb_adaptive_hash_index_parts?: int & >=1 & <=512
   336        
   337        	// Allows InnoDB to automatically adjust the value of innodb_thread_sleep_delay up or down according to the current workload.
   338        	innodb_adaptive_max_sleep_delay?: int & >=0 & <=1000000
   339        
   340        	// The increment size (in MB) for extending the size of an auto-extending tablespace file when it becomes full
   341        	innodb_autoextend_increment?: int & >=1 & <=1000
   342        
   343        	// The locking mode to use for generating auto-increment values
   344        	innodb_autoinc_lock_mode?: int & >=0 & <=2
   345        
   346        	// Defines the chunk size for online InnoDB buffer pool resizing operations.
   347        	innodb_buffer_pool_chunk_size?: int & >=1048576 & <=4294967295
   348        
   349        	// Specifies whether to record the pages cached in the InnoDB buffer pool when the MySQL server is shut down.
   350        	innodb_buffer_pool_dump_at_shutdown?: string & "0" | "1" | "OFF" | "ON"
   351        
   352        	// Immediately records the pages cached in the InnoDB buffer pool.
   353        	innodb_buffer_pool_dump_now?: string & "0" | "1" | "OFF" | "ON"
   354        
   355        	// Specifies the percentage of the most recently used pages for each buffer pool to read out and dump.
   356        	innodb_buffer_pool_dump_pct?: int & >=1 & <=100
   357        
   358        	// Specifies the file that holds the list of page numbers produced by innodb_buffer_pool_dump_at_shutdown or innodb_buffer_pool_dump_now.
   359        	innodb_buffer_pool_filename?: string
   360        
   361        	// The number of regions that the InnoDB buffer pool is divided into
   362        	innodb_buffer_pool_instances?: int & >=1 & <=64
   363        
   364        	// Interrupts the process of restoring InnoDB buffer pool contents triggered by innodb_buffer_pool_load_at_startup or innodb_buffer_pool_load_now.
   365        	innodb_buffer_pool_load_abort?: string & "0" | "1" | "OFF" | "ON"
   366        
   367        	// Specifies that, on MySQL server startup, the InnoDB buffer pool is automatically warmed up by loading the same pages it held at an earlier time.
   368        	innodb_buffer_pool_load_at_startup?: string & "0" | "1" | "OFF" | "ON"
   369        
   370        	// Immediately warms up the InnoDB buffer pool by loading a set of data pages, without waiting for a server restart.
   371        	innodb_buffer_pool_load_now?: string & "0" | "1" | "OFF" | "ON"
   372        
   373        	// The size in bytes of the memory buffer innodb uses to cache data and indexes of its tables
   374        	innodb_buffer_pool_size?: int & >=5242880 & <=18446744073709551615 @k8sResource(quantity)
   375        
   376        	// Controls InnoDB change buffering
   377        	innodb_change_buffering?: string & "inserts" | "deletes" | "purges" | "changes" | "all" | "none"
   378        
   379        	// Maximum size for the InnoDB change buffer, as a percentage of the total size of the buffer pool.
   380        	innodb_change_buffer_max_size?: int & >=0 & <=50
   381        
   382        	// This is a debug option that is only intended for expert debugging use. It disables checkpoints so that a deliberate server exit always initiates InnoDB recovery.
   383        	innodb_checkpoint_disabled?: string & "0" | "1" | "OFF" | "ON"
   384        
   385        	// Specifies how to generate and verify the checksum stored in each disk block of each InnoDB tablespace.
   386        	innodb_checksum_algorithm?: string & "crc32" | "innodb" | "none" | "strict_crc32" | "strict_innodb" | "strict_none"
   387        
   388        	// Enables per-index compression-related statistics in the INFORMATION_SCHEMA.INNODB_CMP_PER_INDEX table.
   389        	innodb_cmp_per_index_enabled?: string & "0" | "1" | "OFF" | "ON"
   390        
   391        	// The number of threads that can commit at the same time.
   392        	innodb_commit_concurrency?: int & >=0 & <=1000
   393        
   394        	// Sets the cutoff point at which MySQL begins adding padding within compressed pages to avoid expensive compression failures.
   395        	innodb_compression_failure_threshold_pct?: int & >=0 & <=100
   396        
   397        	// Sets the cutoff point at which MySQL begins adding padding within compressed pages to avoid expensive compression failures.
   398        	innodb_compression_level?: int & >=0 & <=9
   399        
   400        	// Specifies the maximum percentage that can be reserved as free space within each compressed page, allowing room to reorganize the data and modification log within the page when a compressed table or index is updated and the data might be recompressed.
   401        	innodb_compression_pad_pct_max?: int & >=0 & <=75
   402        
   403        	// Number of times a thread can enter and leave Innodb before it is subject to innodb-thread-concurrency
   404        	innodb_concurrency_tickets?: int & >=1 & <=4294967295
   405        
   406        	innodb_data_file_path?: string
   407        
   408        	// Directory where innodb files are stored
   409        	innodb_data_home_dir?: string
   410        
   411        	// Enable this debug option to reset DDL log crash injection counters to 1.
   412        	innodb_ddl_log_crash_reset_debug?: string & "0" | "1" | "OFF" | "ON"
   413        
   414        	// This option is used to disable deadlock detection.
   415        	innodb_deadlock_detect?: string & "0" | "1" | "OFF" | "ON"
   416        
   417        	// Automatically scale innodb_buffer_pool_size and innodb_log_file_size based on system memory. Also set innodb_flush_method=O_DIRECT_NO_FSYNC, if supported.
   418        	innodb_dedicated_server?: string & "0" | "1" | "OFF" | "ON"
   419        
   420        	// Defines the default row format for InnoDB tables (including user-created InnoDB temporary tables).
   421        	innodb_default_row_format?: string & "DYNAMIC" | "COMPACT" | "REDUNDANT"
   422        
   423        	// Defines directories to scan at startup for tablespace files.
   424        	innodb_directories?: string
   425        
   426        	// If enabled, this variable disables the operating system file system cache for merge-sort temporary files.
   427        	innodb_disable_sort_file_cache?: string & "0" | "1" | "OFF" | "ON"
   428        
   429        	innodb_doublewrite: string & "0" | "1" | "OFF" | "ON" | *"1"
   430        
   431        	// Defines the number of doublewrite pages to write in a batch.
   432        	innodb_doublewrite_batch_size: int & >=0 & <=256 | *16
   433        
   434        	// Defines the number of doublewrite files.
   435        	innodb_doublewrite_files?: int & >=2 & <=256
   436        
   437        	// Defines the maximum number of doublewrite pages per thread for a batch write. If no value is specified, innodb_doublewrite_pages is set to the innodb_write_io_threads value.
   438        	innodb_doublewrite_pages: int & >=1 & <=512 | *32
   439        
   440        	// The InnoDB shutdown mode
   441        	innodb_fast_shutdown?: int & 0 | 1 | 2
   442        
   443        	// Use tablespaces or files for Innodb.
   444        	innodb_file_per_table: string & "0" | "1" | "OFF" | "ON" | *"1"
   445        
   446        	// Defines the percentage of space on each B-tree page that is filled during a sorted index build, with the remaining space reserved for future index growth.
   447        	innodb_fill_factor?: int & >=10 & <=100
   448        
   449        	// Number of iterations for which InnoDB keeps the previously calculated snapshot of the flushing state, controlling how quickly adaptive flushing responds to changing workloads.
   450        	innodb_flushing_avg_loops?: int & >=1 & <=1000
   451        
   452        	// Write and flush the logs every N seconds. This setting has an effect only when innodb_flush_log_at_trx_commit has a value of 2.
   453        	innodb_flush_log_at_timeout?: int & >=0 & <=2700
   454        
   455        	// Determines Innodb transaction durability
   456        	innodb_flush_log_at_trx_commit?: int & >=0 & <=2
   457        
   458        	// Determines Innodb flush method
   459        	innodb_flush_method?: string & "O_DIRECT"
   460        
   461        	// Specifies whether flushing a page from the InnoDB buffer pool also flushes other dirty pages in the same extent.
   462        	innodb_flush_neighbors?: int & >=0 & <=2
   463        
   464        	// Ignore the innodb_io_capacity setting to be ignored for bursts of I/O activity that occur at checkpoints.
   465        	innodb_flush_sync?: string & "0" | "1" | "OFF" | "ON"
   466        
   467        	// Lets InnoDB load tables at startup that are marked as corrupted
   468        	innodb_force_load_corrupted?: string & "0" | "1" | "OFF" | "ON"
   469        
   470        	innodb_force_recovery: int & >=0 & <=6 | *0
   471        
   472        	// Specifies the qualified name of an InnoDB table containing a FULLTEXT index.
   473        	innodb_ft_aux_table?: string
   474        
   475        	// Size of the cache that holds a parsed document in memory while creating an InnoDB FULLTEXT index.
   476        	innodb_ft_cache_size?: int & >=0 & <=4294967295
   477        
   478        	// Whether to enable additional full-text search (FTS) diagnostic output.
   479        	innodb_ft_enable_diag_print?: string & "0" | "1" | "OFF" | "ON"
   480        
   481        	// Specifies that a set of stopwords is associated with an InnoDB FULLTEXT index at the time the index is created.
   482        	innodb_ft_enable_stopword?: string & "0" | "1" | "OFF" | "ON"
   483        
   484        	// Maximum length of words that are stored in an InnoDB FULLTEXT index.
   485        	innodb_ft_max_token_size?: int & >=10 & <=252
   486        
   487        	// Minimum length of words that are stored in an InnoDB FULLTEXT index.
   488        	innodb_ft_min_token_size?: int & >=0 & <=16
   489        
   490        	// Number of words to process during each OPTIMIZE TABLE operation on an InnoDB FULLTEXT index.
   491        	innodb_ft_num_word_optimize?: int & >=1 & <=4294967295
   492        
   493        	// The InnoDB FULLTEXT search (FTS) query result cache limit (defined in bytes) per FTS query or per thread.
   494        	innodb_ft_result_cache_limit?: int & >=1000000 & <=4294967295
   495        
   496        	// Name of the table containing a list of words to ignore when creating an InnoDB FULLTEXT index, in the format db_name/table_name.
   497        	innodb_ft_server_stopword_table?: string
   498        
   499        	// Number of threads used in parallel to index and tokenize text in an InnoDB FULLTEXT index, when building a search index for a large table.
   500        	innodb_ft_sort_pll_degree?: int & >=1 & <=32
   501        
   502        	// The total memory allocated, in bytes, for the InnoDB FULLTEXT search index cache for all tables.
   503        	innodb_ft_total_cache_size?: int & >=32000000 & <=1600000000
   504        
   505        	// Name of the table containing a list of words to ignore when creating an InnoDB FULLTEXT index, in the format db_name/table_name.
   506        	innodb_ft_user_stopword_table?: string
   507        
   508        	// The maximum number of I/O operations per second that InnoDB will perform.
   509        	innodb_io_capacity?: int & >=100 & <=18446744073709551615
   510        
   511        	// The limit up to which InnoDB is allowed to extend the innodb_io_capacity setting in case of emergency.
   512        	innodb_io_capacity_max?: int & >=2000 & <=18446744073709547520
   513        
   514        	// Timeout in seconds an innodb transaction may wait for a row lock before giving up
   515        	innodb_lock_wait_timeout?: int & >=1 & <=1073741824
   516        
   517        	// The size in bytes of the buffer that innodb uses to write to the log files on disk
   518        	innodb_log_buffer_size: int & >=262144 & <=4294967295 | *8388608
   519        
   520        	// Enables or disables checksums for redo log pages.
   521        	innodb_log_checksums?: string & "0" | "1" | "OFF" | "ON"
   522        
   523        	// Specifies whether images of re-compressed pages are stored in InnoDB redo logs.
   524        	innodb_log_compressed_pages?: string & "0" | "1" | "OFF" | "ON"
   525        
   526        	innodb_log_files_in_group: int & >=2 & <=100 | *2
   527        
   528        	// The size in bytes of each log file in a log group
   529        	innodb_log_file_size: int & >=4194304 & <=273804165120 | *134217728
   530        
   531        	// The directory path to the innodb log files
   532        	innodb_log_group_home_dir?: string
   533        
   534        	// Defines the minimum amount of CPU usage below which user threads no longer spin while waiting for flushed redo.
   535        	innodb_log_spin_cpu_abs_lwm: int & >=0 & <=4294967295 | *80
   536        
   537        	// Defines the maximum amount of CPU usage above which user threads no longer spin while waiting for flushed redo.
   538        	innodb_log_spin_cpu_pct_hwm: int & >=0 & <=100 | *50
   539        
   540        	// Defines the maximum average log flush time beyond which user threads no longer spin while waiting for flushed redo.
   541        	innodb_log_wait_for_flush_spin_hwm: int & >=0 & <=18446744073709551615 | *400
   542        
   543        	// The write-ahead block size for the redo log, in bytes.
   544        	innodb_log_write_ahead_size?: int & >=512 & <=16384
   545        
   546        	// A parameter that influences the algorithms and heuristics for the flush operation for the InnoDB buffer pool.
   547        	innodb_lru_scan_depth?: int & >=100 & <=18446744073709551615
   548        
   549        	// Maximum percentage of dirty pages in the buffer pool
   550        	innodb_max_dirty_pages_pct?: int & >=0 & <=99
   551        
   552        	// Low water mark representing percentage of dirty pages where preflushing is enabled to control the dirty page ratio.
   553        	innodb_max_dirty_pages_pct_lwm?: float & >=0 & <=99.99
   554        
   555        	// Controls how to delay INSERT, UPDATE, and DELETE operations when purge operations are lagging
   556        	innodb_max_purge_lag?: int & >=0 & <=4294967295
   557        
   558        	// Specifies the maximum delay in milliseconds for the delay imposed by the innodb_max_purge_lag configuration option
   559        	innodb_max_purge_lag_delay?: int & >=0 & <=18446744073709551615
   560        
   561        	// Defines a threshold size for undo tablespaces.
   562        	innodb_max_undo_log_size?: int & >=10485760 & <=18446744073709551615
   563        
   564        	// Turns off one or more counters in the information_schema.innodb_metrics table.
   565        	innodb_monitor_disable?: string
   566        
   567        	// Turns on one or more counters in the information_schema.innodb_metrics table.
   568        	innodb_monitor_enable?: string
   569        
   570        	// Resets to zero the count value for one or more counters in the information_schema.innodb_metrics table.
   571        	innodb_monitor_reset?: string
   572        
   573        	// Resets all values (minimum, maximum, and so on) for one or more counters in the information_schema.innodb_metrics table.
   574        	innodb_monitor_reset_all?: string
   575        
   576        	// Specifies the approximate percentage of the InnoDB buffer pool used for the old block sublist.
   577        	innodb_old_blocks_pct?: int & >=5 & <=95
   578        
   579        	// Specifies how long in milliseconds (ms) a block inserted into the old sublist must stay there after its first access before it can be moved to the new sublist.
   580        	innodb_old_blocks_time?: int & >=0 & <=4294967295
   581        
   582        	// Specifies an upper limit on the size of the temporary log files used during online DDL operations for InnoDB tables.
   583        	innodb_online_alter_log_max_size?: int & >=65536 & <=18446744073709551615
   584        
   585        	// Relevant only if you use multiple tablespaces in innodb. It specifies the maximum number of .ibd files that innodb can keep open at one time
   586        	innodb_open_files?: int & >=10 & <=4294967295
   587        
   588        	// Changes the way the OPTIMIZE TABLE statement operates on InnoDB tables.
   589        	innodb_optimize_fulltext_only?: string & "0" | "1" | "OFF" | "ON"
   590        
   591        	// The number of page cleaner threads that flush dirty pages from buffer pool instances.
   592        	innodb_page_cleaners?: int & >=1 & <=64
   593        
   594        	// Specifies the page size for all InnoDB tablespaces in a MySQL instance.
   595        	innodb_page_size?: string
   596        
   597        	// Defines the number of threads that can be used for parallel clustered index reads.
   598        	innodb_parallel_read_threads?: int & >=1 & <=256
   599        
   600        	// When this option is enabled, information about all deadlocks in InnoDB user transactions is recorded in the mysqld error log.
   601        	innodb_print_all_deadlocks?: string & "0" | "1" | "OFF" | "ON"
   602        
   603        	// Enabling this option causes MySQL to write DDL logs to stderr.
   604        	innodb_print_ddl_logs: string & "0" | "1" | "OFF" | "ON" | *"0"
   605        
   606        	// The granularity of changes, expressed in units of redo log records, that trigger a purge operation, flushing the changed buffer pool blocks to disk
   607        	innodb_purge_batch_size?: int & >=1 & <=5000
   608        
   609        	// Defines the frequency with which the purge system frees rollback segments.
   610        	innodb_purge_rseg_truncate_frequency?: int & >=1 & <=128
   611        
   612        	// The number of background threads devoted to the InnoDB purge operation
   613        	innodb_purge_threads: int & >=1 & <=32 | *1
   614        
   615        	// Enables or disables Innodb Random Read Ahead
   616        	innodb_random_read_ahead?: string & "0" | "1" | "OFF" | "ON"
   617        
   618        	// Controls the sensitivity of linear read-ahead that InnoDB uses to prefetch pages into the buffer cache.
   619        	innodb_read_ahead_threshold?: int & >=0 & <=64
   620        
   621        	// The number of I/O threads for read operations in InnoDB.
   622        	innodb_read_io_threads?: int & >=1 & <=64
   623        
   624        	// Starts the server in read-only mode.
   625        	innodb_read_only?: string & "0" | "1" | "OFF" | "ON"
   626        
   627        	// Controls encryption of redo log data for tables encrypted using the InnoDB tablespace encryption feature.
   628        	innodb_redo_log_encrypt: string & "0" | "1" | "OFF" | "ON" | *"0"
   629        
   630        	// The replication thread delay (in ms) on a slave server if innodb_thread_concurrency is reached.
   631        	innodb_replication_delay?: int & >=0 & <=4294967295
   632        
   633        	// Controls whether timeouts rollback the last statement or the entire transaction
   634        	innodb_rollback_on_timeout?: string & "0" | "1" | "OFF" | "ON"
   635        
   636        	// Defines how many of the rollback segments in the system tablespace that InnoDB uses within a transaction.
   637        	innodb_rollback_segments?: int & >=1 & <=128
   638        
   639        	// If tablespace map files are lost or corrupted, the innodb_scan_directories startup option can be used to specify tablespace file directories. This option causes InnoDB to read the first page of each tablespace file in the specified directories and recreate tablespace map files so that the recovery process can apply redo logs to affected tablespaces.
   640        	innodb_scan_directories?: string
   641        
   642        	// Defines the percentage of tablespace file segment pages reserved as empty pages
   643        	innodb_segment_reserve_factor: float & >=0.03 & <=40 | *12.5
   644        
   645        	// Specifies the sizes of several buffers used for sorting data during creation of an InnoDB index.
   646        	innodb_sort_buffer_size?: int & >=65536 & <=67108864
   647        
   648        	// The maximum delay between polls for a spin lock.
   649        	innodb_spin_wait_delay?: int & >=0 & <=4294967295
   650        
   651        	// Causes InnoDB to automatically recalculate persistent statistics after the data in a table is changed substantially.
   652        	innodb_stats_auto_recalc?: string & "0" | "1" | "OFF" | "ON"
   653        
   654        	// When innodb_stats_include_delete_marked is enabled, ANALYZE TABLE considers delete-marked records when recalculating statistics.
   655        	innodb_stats_include_delete_marked: string & "0" | "1" | "OFF" | "ON" | *"0"
   656        
   657        	// How the server treats NULL values when collecting statistics about the distribution of index values for InnoDB tables.
   658        	innodb_stats_method?: string & "nulls_equal" | "nulls_unequal" | "nulls_ignored"
   659        
   660        	// Controls whether table and index stats are updated when getting status information via SHOW STATUS or the INFORMATION_SCHEMA
   661        	innodb_stats_on_metadata?: string & "0" | "1" | "OFF" | "ON"
   662        
   663        	// Specifies whether the InnoDB index statistics produced by the ANALYZE TABLE command are stored on disk.
   664        	innodb_stats_persistent?: string & "OFF" | "ON" | "0" | "1"
   665        
   666        	// The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.
   667        	innodb_stats_persistent_sample_pages?: int & >=0 & <=18446744073709551615
   668        
   669        	// The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.
   670        	innodb_stats_transient_sample_pages?: int & >=0 & <=18446744073709551615
   671        
   672        	// Enables or disables periodic output for the standard InnoDB Monitor.
   673        	innodb_status_output?: string & "0" | "1" | "OFF" | "ON"
   674        
   675        	// Enables or disables the InnoDB Lock Monitor.
   676        	innodb_status_output_locks?: string & "0" | "1" | "OFF" | "ON"
   677        
   678        	// Whether InnoDB returns errors rather than warnings for exceptional conditions.
   679        	innodb_strict_mode?: string & "0" | "1" | "OFF" | "ON"
   680        
   681        	// Splits an internal data structure used to coordinate threads, for higher concurrency in workloads with large numbers of waiting threads.
   682        	innodb_sync_array_size?: int & >=1 & <=1024
   683        
   684        	// The number of times a thread waits for an innodb mutex to be freed before the thread is suspended
   685        	innodb_sync_spin_loops?: int & >=0 & <=9223372036854775807
   686        
   687        	// If autocommit = 0, innodb honors LOCK TABLES
   688        	innodb_table_locks?: string & "0" | "1" | "OFF" | "ON"
   689        
   690        	// Specifies the path, file name, and file size for InnoDB temporary table tablespace data files.
   691        	innodb_temp_data_file_path?: string
   692        
   693        	// The number of threads that can enter innodb concurrently
   694        	innodb_thread_concurrency?: int & >=0 & <=1000
   695        
   696        	// How long innodb threads sleep before joining the innodb queue, in microseconds.
   697        	innodb_thread_sleep_delay?: int & >=0 & <=9223372036854775807
   698        
   699        	innodb_tmpdir?: string
   700        
   701        	// The relative or absolute directory path where InnoDB creates separate tablespaces for the undo logs
   702        	innodb_undo_directory?: string
   703        
   704        	// Controls encryption of undo log data for tables encrypted using the InnoDB tablespace encryption feature.
   705        	innodb_undo_log_encrypt: string & "0" | "1" | "OFF" | "ON" | *"0"
   706        
   707        	// Undo tablespaces that exceed the threshold value defined by innodb_max_undo_log_size are marked for truncation.
   708        	innodb_undo_log_truncate?: string & "0" | "1" | "OFF" | "ON"
   709        
   710        	// The number of tablespace files that the undo logs are divided between, when you use a non-zero innodb_undo_logs setting.
   711        	innodb_undo_tablespaces?: int & >=0 & <=126
   712        
   713        	// Controls whether or not MySQL uses Linux native asynchronous IO.
   714        	innodb_use_native_aio?: string & "0" | "1" | "OFF" | "ON"
   715        
   716        	// The number of I/O threads for write operations in InnoDB.
   717        	innodb_write_io_threads?: int & >=1 & <=64
   718        
   719        	// Number of seconds the server waits for activity on an interactive connection before closing it.
   720        	interactive_timeout?: int & >=1 & <=31536000
   721        
   722        	// The default storage engine for in-memory internal temporary tables.
   723        	internal_tmp_mem_storage_engine?: string & "TempTable" | "MEMORY"
   724        
   725        	// Increase the value of join_buffer_size to get a faster full join when adding indexes is not possible.
   726        	join_buffer_size?: int & >=128 & <=18446744073709547520
   727        
   728        	// Suppress behavior to overwrite MyISAM file created in DATA DIRECTORY or INDEX DIRECTORY.
   729        	keep_files_on_create?: string & "0" | "1" | "OFF" | "ON"
   730        
   731        	// Increase the buffer size to get better index handling used for index blocks (for all reads and multiple writes).
   732        	key_buffer_size: int & >=8 & <=9223372036854771712 | *16777216
   733        
   734        	// Controls the demotion of buffers from the hot sub-chain of a key cache to the warm sub-chain. Lower values cause demotion to happen more quickly.
   735        	key_cache_age_threshold?: int & >=100 & <=18446744073709547520
   736        
   737        	// Size in bytes of blocks in the key cache.
   738        	key_cache_block_size?: int & >=512 & <=16384
   739        
   740        	// The division point between the hot and warm sub-chains of the key cache buffer chain. The value is the percentage of the buffer chain to use for the warm sub-chain.
   741        	key_cache_division_limit?: int & >=1 & <=100
   742        
   743        	keyring_operations: string & "0" | "1" | "OFF" | "ON" | *"1"
   744        
   745        	large_pages: string & "0" | "1" | "OFF" | "ON" | *"0"
   746        
   747        	lc_messages?: string
   748        
   749        	lc_messages_dir?: string
   750        
   751        	// This variable specifies the locale that controls the language used to display day and month names and abbreviations.
   752        	lc_time_names?: string & "ar_AE" | "ar_BH" | "ar_DZ" | "ar_EG" | "ar_IN" | "ar_IQ" | "ar_JO" | "ar_KW" | "ar_LB" | "ar_LY" | "ar_MA" | "ar_OM" | "ar_QA" | "ar_SA" | "ar_SD" | "ar_SY" | "ar_TN" | "ar_YE" | "be_BY" | "bg_BG" | "ca_ES" | "cs_CZ" | "da_DK" | "de_AT" | "de_BE" | "de_CH" | "de_DE" | "de_LU" | "el_GR" | "en_AU" | "en_CA" | "en_GB" | "en_IN" | "en_NZ" | "en_PH" | "en_US" | "en_ZA" | "en_ZW" | "es_AR" | "es_BO" | "es_CL" | "es_CO" | "es_CR" | "es_DO" | "es_EC" | "es_ES" | "es_GT" | "es_HN" | "es_MX" | "es_NI" | "es_PA" | "es_PE" | "es_PR" | "es_PY" | "es_SV" | "es_US" | "es_UY" | "es_VE" | "et_EE" | "eu_ES" | "fi_FI" | "fo_FO" | "fr_BE" | "fr_CA" | "fr_CH" | "fr_FR" | "fr_LU" | "gl_ES" | "gu_IN" | "he_IL" | "hi_IN" | "hr_HR" | "hu_HU" | "id_ID" | "is_IS" | "it_CH" | "it_IT" | "ja_JP" | "ko_KR" | "lt_LT" | "lv_LV" | "mk_MK" | "mn_MN" | "ms_MY" | "nb_NO" | "nl_BE" | "nl_NL" | "no_NO" | "pl_PL" | "pt_BR" | "pt_PT" | "ro_RO" | "ru_RU" | "ru_UA" | "sk_SK" | "sl_SI" | "sq_AL" | "sr_RS" | "sv_FI" | "sv_SE" | "ta_IN" | "te_IN" | "th_TH" | "tr_TR" | "uk_UA" | "ur_PK" | "vi_VN" | "zh_CN" | "zh_HK" | "zh_TW"
   753        
   754        	// Controls whetther LOCAL is supported for LOAD DATA INFILE
   755        	local_infile: string & "0" | "1" | "OFF" | "ON" | *"1"
   756        
   757        	// Specifies the timeout in seconds for attempts to acquire metadata locks
   758        	lock_wait_timeout?: int & >=1 & <=31536000
   759        
   760        	log_bin?: string
   761        
   762        	// Controls binary logging.
   763        	"log-bin"?: string
   764        
   765        	log_bin_basename?: string
   766        
   767        	log_bin_index?: string
   768        
   769        	// Enforces restrictions on stored functions / triggers - logging for replication.
   770        	log_bin_trust_function_creators?: string & "0" | "1" | "OFF" | "ON"
   771        
   772        	// Whether MySQL writes binary log events using a Version 1 or Version 2 logging events
   773        	log_bin_use_v1_row_events?: string & "0" | "1" | "OFF" | "ON"
   774        
   775        	// Location of error log.
   776        	log_error?: string
   777        
   778        	log_error_services?: string
   779        
   780        	// Controls verbosity of the server in writing error, warning, and note messages to the error log.
   781        	log_error_verbosity?: int & >=1 & <=3
   782        
   783        	// Controls where to store query logs
   784        	log_output?: string & "TABLE" | "FILE" | "NONE"
   785        
   786        	// Logs queries that are expected to retrieve all rows to slow query log
   787        	log_queries_not_using_indexes?: string & "0" | "1" | "OFF" | "ON"
   788        
   789        	// Allow for chain replication - ingression
   790        	log_slave_updates: string & "0" | "1" | "OFF" | "ON" | *"1"
   791        
   792        	// Include slow administrative statements in the statements written to the slow query log.
   793        	log_slow_admin_statements?: string & "0" | "1" | "OFF" | "ON"
   794        
   795        	// When the slow query log is enabled and the output destination as FILE, additional information related to the slow query is written to the slow query log file. TABLE output is unaffected.
   796        	log_slow_extra?: string & "ON" | "OFF"
   797        
   798        	// When the slow query log is enabled, this variable enables logging for queries that have taken more than long_query_time seconds to execute on the slave.
   799        	log_slow_slave_statements?: string & "0" | "1" | "OFF" | "ON"
   800        
   801        	// If error 1592 is encountered, controls whether the generated warnings are added to the error log or not.
   802        	log_statements_unsafe_for_binlog: string & "0" | "1" | "OFF" | "ON" | *"0"
   803        
   804        	// Whether to write error log output to syslog.
   805        	log_syslog?: string & "0" | "1" | "OFF" | "ON"
   806        
   807        	// Limits the number of such queries per minute that can be written to the slow query log.
   808        	log_throttle_queries_not_using_indexes?: int & >=0 & <=4294967295
   809        
   810        	// This variable controls the timestamp time zone of error log messages, and of general query log and slow query log messages written to files.
   811        	log_timestamps?: string & "UTC" | "SYSTEM"
   812        
   813        	// Defines what MySQL considers long queries
   814        	long_query_time?: float & >=0 & <=3.1536e+07
   815        
   816        	lower_case_file_system?: string & "0" | "1" | "OFF" | "ON"
   817        
   818        	// Affects how the server handles identifier case sensitivity
   819        	lower_case_table_names?: int & >=0 & <=1
   820        
   821        	// INSERT, UPDATE, DELETE, and LOCK TABLE WRITE wait until no pending SELECT. Affects only storage engines that use only table-level locking (MyISAM, MEMORY, MERGE).
   822        	low_priority_updates?: string & "0" | "1" | "OFF" | "ON"
   823        
   824        	// All the specified roles are always considered granted to every user and they can't be revoked. Mandatory roles still require activation unless they are made into default roles. The granted roles will not be visible in the mysql.role_edges table.
   825        	mandatory_roles?: string
   826        
   827        	master_info_repository?: string
   828        
   829        	// This option causes the server to write its master info log to a file or a table.
   830        	"master-info-repository"?: string & "FILE" | "TABLE"
   831        
   832        	// Enabling this variable causes the master to examine checksums when reading from the binary log.
   833        	master_verify_checksum?: string & "0" | "1" | "OFF" | "ON"
   834        
   835        	// This value by default is small, to catch large (possibly incorrect) packets. Must be increased if using large BLOB columns or long strings. As big as largest BLOB.
   836        	max_allowed_packet?: int & >=16777216 & <=1073741824
   837        
   838        	// Maximum binlog cache size a transaction may use
   839        	max_binlog_cache_size?: int & >=4096 & <=18446744073709547520
   840        
   841        	// Server rotates the binlog once it reaches this size
   842        	max_binlog_size: int & >=4096 & <=1073741824 | *134217728
   843        
   844        	// If nontransactional statements within a transaction require more than this many bytes of memory, the server generates an error.
   845        	max_binlog_stmt_cache_size?: int & >=4096 & <=18446744073709547520
   846        
   847        	// A host is blocked from further connections if there are more than this number of interrupted connections
   848        	max_connect_errors?: int & >=1 & <=9223372036854775807
   849        
   850        	// The number of simultaneous client connections allowed.
   851        	max_connections?: int & >=1 & <=100000
   852        
   853        	// Do not start more than this number of threads to handle INSERT DELAYED statements.
   854        	max_delayed_threads?: int & >=0 & <=16384
   855        
   856        	// The maximum number of bytes available for computing statement digests.
   857        	max_digest_length: int & >=0 & <=1048576 | *1024
   858        
   859        	// The maximum number of error, warning, and note messages to be stored for display.
   860        	max_error_count?: int & >=0 & <=65535
   861        
   862        	// The execution timeout for SELECT statements, in milliseconds.
   863        	max_execution_time?: int & >=0 & <=18446744073709551615
   864        
   865        	// Maximum size to which MEMORY tables are allowed to grow.
   866        	max_heap_table_size?: int & >=16384 & <=1844674407370954752
   867        
   868        	// Synonym for max_delayed_threads
   869        	max_insert_delayed_threads?: int & >=0 & <=16384
   870        
   871        	// Catch SELECT statements where keys are not used properly and would probably take a long time.
   872        	max_join_size?: int & >=1 & <=18446744073709551615
   873        
   874        	// ORDER BY Optimization. The cutoff on the size of index values that determines which filesort algorithm to use.
   875        	max_length_for_sort_data?: int & >=4 & <=8388608
   876        
   877        	// The maximum value of the points_per_circle argument to the ST_Buffer_Strategy() function.
   878        	max_points_in_geometry?: int & >=3 & <=3145728
   879        
   880        	// Used if the potential for denial-of-service attacks based on running the server out of memory by preparing huge numbers of statements.
   881        	max_prepared_stmt_count?: int & >=0 & <=1048576
   882        
   883        	max_relay_log_size: int & >=0 & <=1073741824 | *0
   884        
   885        	// A low value can force MySQL to prefer indexes instead of table scans.
   886        	max_seeks_for_key?: int & >=1 & <=18446744073709547520
   887        
   888        	// The number of bytes to use when sorting BLOB or TEXT values.
   889        	max_sort_length?: int & >=4 & <=8388608
   890        
   891        	// Limits the number of times a stored procedure can be called recursively minimizing the demand on thread stack space.
   892        	max_sp_recursion_depth?: int & >=0 & <=255
   893        
   894        	// Maximum number of simultaneous connections allowed to any given MySQL account.
   895        	max_user_connections?: int & >=0 & <=4294967295
   896        
   897        	// After this many write locks, allow some pending read lock requests to be processed in between.
   898        	max_write_lock_count?: int & >=1 & <=18446744073709547520
   899        
   900        	// Defines the path to the mecabrc configuration file.
   901        	mecab_rc_file?: string & "0" | "1"
   902        
   903        	// Can be used to cause queries which examine fewer than the stated number of rows not to be logged.
   904        	min_examined_row_limit?: int & >=0 & <=18446744073709547520
   905        
   906        	// The default pointer size in bytes, to be used by CREATE TABLE for MyISAM tables when no MAX_ROWS option is specified.
   907        	myisam_data_pointer_size?: int & >=2 & <=7
   908        
   909        	// The maximum size of the temporary file that MySQL is allowed to use while re-creating a MyISAM index
   910        	myisam_max_sort_file_size?: int & >=0 & <=9223372036853727232
   911        
   912        	// Maximum amount of memory to use for memory mapping compressed MyISAM files
   913        	myisam_mmap_size?: int & >=7 & <=922337203685477807
   914        
   915        	myisam_repair_threads?: int & >=1 & <=18446744073709551615
   916        
   917        	// Size of the buffer that is allocated when sorting MyISAM indexes during a REPAIR TABLE or when creating indexes with CREATE INDEX or ALTER TABLE.
   918        	myisam_sort_buffer_size?: int & >=4 & <=9223372036854775807
   919        
   920        	// How the server treats NULL values when collecting statistics about the distribution of index values for MyISAM tables
   921        	myisam_stats_method?: string & "nulls_equal" | "nulls_unequal" | "nulls_ignored"
   922        
   923        	// Memory mapping for reading and writing MyISAM tables.
   924        	myisam_use_mmap?: string & "0" | "1" | "OFF" | "ON"
   925        
   926        	// This variable controls whether the mysql_native_password built-in authentication plugin supports proxy users.
   927        	mysql_native_password_proxy_users?: string & "0" | "1" | "OFF" | "ON"
   928        
   929        	mysqlx_bind_address?: string
   930        
   931        	mysqlx_connect_timeout: int & >=1 & <=1000000000 | *30
   932        
   933        	mysqlx_document_id_unique_prefix: int & >=0 & <=65535 | *0
   934        
   935        	mysqlx_idle_worker_thread_timeout: int & >=0 & <=3600 | *60
   936        
   937        	mysqlx_interactive_timeout: int & >=1 & <=2147483 | *28800
   938        
   939        	mysqlx_max_allowed_packet: int & >=512 & <=1073741824 | *1048576
   940        
   941        	mysqlx_max_connections: int & >=1 & <=65535 | *100
   942        
   943        	mysqlx_min_worker_threads: int & >=1 & <=100 | *2
   944        
   945        	mysqlx_port: int & >=1 & <=65535 | *33060
   946        
   947        	mysqlx_port_open_timeout: int & >=1 & <=120 | *0
   948        
   949        	mysqlx_read_timeout: int & >=30 & <=2147483 | *28800
   950        
   951        	mysqlx_socket?: string
   952        
   953        	mysqlx_ssl_ca?: string
   954        
   955        	mysqlx_ssl_capath?: string
   956        
   957        	mysqlx_ssl_cert?: string
   958        
   959        	mysqlx_ssl_crl?: string
   960        
   961        	mysqlx_ssl_crlpath?: string
   962        
   963        	mysqlx_ssl_key?: string
   964        
   965        	mysqlx_wait_timeout: int & >=1 & <=2147483 | *28800
   966        
   967        	mysqlx_write_timeout: int & >=1 & <=2147483 | *60
   968        
   969        	// This variable should not normally be changed. For use when very little memory is available. Set it to the expected length of statements sent by clients.
   970        	net_buffer_length?: int & >=1024 & <=1048576
   971        
   972        	// The number of seconds to wait for more data from a TCP/IP connection before aborting the read.
   973        	net_read_timeout?: int & >=1 & <=31536000
   974        
   975        	// If a read on a communication port is interrupted, retry this many times before giving up. This value should be set quite high on freebsd because internal interrupts are sent to all threads.
   976        	net_retry_count?: int & >=1 & <=9223372036854775807
   977        
   978        	// The number of seconds to wait on TCP/IP connections for a block to be written before aborting the write.
   979        	net_write_timeout?: int & >=1 & <=31536000
   980        
   981        	new?: string & "NEVER" | "AUTO" | "ALWAYS" | "0" | "1" | "2"
   982        
   983        	// Defines the n-gram token size for the n-gram full-text parser.
   984        	ngram_token_size?: int & >=1 & <=10
   985        
   986        	// Whether the server is in offline mode.
   987        	offline_mode?: string & "0" | "1" | "OFF" | "ON"
   988        
   989        	old_alter_table: string & "0" | "1" | "OFF" | "ON" | *"0"
   990        
   991        	// Enable old-style user limits.
   992        	"old-style-user-limits"?: string & "0" | "1" | "OFF" | "ON"
   993        
   994        	open_files_limit: int | *5000
   995        
   996        	// Controls the heuristics applied during query optimization to prune less-promising partial plans from the optimizer search space.
   997        	optimizer_prune_level?: string & "0" | "1" | "OFF" | "ON"
   998        
   999        	// The maximum depth of search performed by the query optimizer.
  1000        	optimizer_search_depth?: int & >=0 & <=62
  1001        
  1002        	// Controls optimizer behavior.
  1003        	optimizer_switch?: string & "default" | "batched_key_access=on" | "batched_key_access=off" | "block_nested_loop=on" | "block_nested_loop=off" | "condition_fanout_filter=on" | "condition_fanout_filter=off" | "derived_merge=on" | "derived_merge=off" | "duplicateweedout=on" | "duplicateweedout=off" | "engine_condition_pushdown=on" | "engine_condition_pushdown=off" | "firstmatch=on" | "firstmatch=off" | "index_condition_pushdown=on" | "index_condition_pushdown=off" | "index_merge=on" | "index_merge=off" | "index_merge_intersection=on" | "index_merge_intersection=off" | "index_merge_sort_union=on" | "index_merge_sort_union=off" | "index_merge_union=on" | "index_merge_union=off" | "loosescan=on" | "loosescan=off" | "materialization=on" | "materialization=off" | "mrr=on" | "mrr=off" | "mrr_cost_based=on" | "mrr_cost_based=off" | "semijoin=on" | "semijoin=off" | "subquery_materialization_cost_based=on" | "subquery_materialization_cost_based=off" | "use_index_extensions=on" | "use_index_extensions=off"
  1004        
  1005        	// Controls how statements are traced.
  1006        	optimizer_trace?: string & "default" | "enabled=on" | "enabled=off" | "one_line=on" | "one_line=off"
  1007        
  1008        	// Controls optimizations during statement tracing.
  1009        	optimizer_trace_features?: string & "default" | "greedy_search=on" | "greedy_search=off" | "range_optimizer=on" | "range_optimizer=off" | "dynamic_range=on" | "dynamic_range=off" | "repeated_subselect=on" | "repeated_subselect=off"
  1010        
  1011        	// Controls the limit on trace retention.
  1012        	optimizer_trace_limit?: int & >=1 & <=9223372036854775807
  1013        
  1014        	// Maximum allowed cumulated size of stored optimizer traces
  1015        	optimizer_trace_max_mem_size?: int & >=0 & <=18446744073709551615
  1016        
  1017        	// Controls the offset on trace retention.
  1018        	optimizer_trace_offset?: int & >=-9223372036854775807 & <=9223372036854775807
  1019        
  1020        	// The time when the current transaction was committed on the originating replication master, measured in microseconds since the epoch.
  1021        	original_commit_timestamp?: int
  1022        
  1023        	parser_max_mem_size: int & >=10000000 & <=18446744073709551615 | *18446744073709551615
  1024        
  1025        	// The number of old passwords to check in the history. Set to 0 (the default) to turn the checks off.
  1026        	password_history: int & >=0 & <=4294967295 | *0
  1027        
  1028        	// The minimum number of days that need to pass before a password can be reused. Set to 0 (the default) to turn the checks off.
  1029        	password_reuse_interval: int & >=0 & <=4294967295 | *0
  1030        
  1031        	// Enables or disables the Performance Schema
  1032        	performance_schema: string & "0" | "1" | "OFF" | "ON" | *"0"
  1033        
  1034        	// The number of rows in the Performance Schema accounts table.
  1035        	performance_schema_accounts_size?: int & >=-1 & <=1048576
  1036        
  1037        	// The maximum number of rows in the events_statements_summary_by_digest table.
  1038        	performance_schema_digests_size?: int & >=-1 & <=1048576
  1039        
  1040        	// Number of server errors instrumented.
  1041        	performance_schema_error_size: int & >=0 & <=1048576 | *0
  1042        
  1043        	// The number of rows in the events_stages_history_long table.
  1044        	performance_schema_events_stages_history_long_size?: int & >=-1 & <=1048576
  1045        
  1046        	// The number of rows per thread in the events_stages_history table.
  1047        	performance_schema_events_stages_history_size?: int & >=-1 & <=1024
  1048        
  1049        	// The number of rows in the events_statements_history_long table.
  1050        	performance_schema_events_statements_history_long_size?: int & >=-1 & <=1048576
  1051        
  1052        	// The number of rows per thread in the events_statements_history table.
  1053        	performance_schema_events_statements_history_size?: int & >=-1 & <=1024
  1054        
  1055        	// The number of rows in the events_transactions_history_long table.
  1056        	performance_schema_events_transactions_history_long_size?: int & >=-1 & <=1048576
  1057        
  1058        	// The number of rows per thread in the events_transactions_history table.
  1059        	performance_schema_events_transactions_history_size?: int & >=-1 & <=1024
  1060        
  1061        	// The number of rows in the events_waits_history_long table.
  1062        	performance_schema_events_waits_history_long_size?: int & >=-1 & <=1048576
  1063        
  1064        	// The number of rows per thread in the events_waits_history table.
  1065        	performance_schema_events_waits_history_size?: int & >=-1 & <=1024
  1066        
  1067        	// The number of rows in the hosts table.
  1068        	performance_schema_hosts_size?: int & >=-1 & <=1048576
  1069        
  1070        	// The maximum number of condition instruments.
  1071        	performance_schema_max_cond_classes?: int & >=0 & <=256
  1072        
  1073        	// The maximum number of instrumented condition objects.
  1074        	performance_schema_max_cond_instances?: int & >=-1 & <=1048576
  1075        
  1076        	// The maximum number of bytes available for computing statement digests.
  1077        	performance_schema_max_digest_length?: int & >=-1 & <=1048576
  1078        
  1079        	// The time in seconds after which a previous query sample is considered old. When the value is 0, queries are sampled once. When the value is greater than zero, queries are re sampled if the last sample is more than performance_schema_max_digest_sample_age seconds old.
  1080        	performance_schema_max_digest_sample_age: int & >=0 & <=1048576 | *60
  1081        
  1082        	// The maximum number of file instruments.
  1083        	performance_schema_max_file_classes?: int & >=0 & <=256
  1084        
  1085        	// The maximum number of opened file objects.
  1086        	performance_schema_max_file_handles?: int & >=0 & <=1048576
  1087        
  1088        	// The maximum number of instrumented file objects.
  1089        	performance_schema_max_file_instances?: int & >=-1 & <=1048576
  1090        
  1091        	// The maximum number of indexes for which the Performance Schema maintains statistics.
  1092        	performance_schema_max_index_stat?: int & >=-1 & <=1048576
  1093        
  1094        	// The maximum number of memory instruments.
  1095        	performance_schema_max_memory_classes?: int & >=-1 & <=1024
  1096        
  1097        	// The maximum number of metadata lock instruments.
  1098        	performance_schema_max_metadata_locks?: int & >=-1 & <=104857600
  1099        
  1100        	// The maximum number of mutex instruments.
  1101        	performance_schema_max_mutex_classes?: int & >=0 & <=256
  1102        
  1103        	// The maximum number of instrumented mutex objects.
  1104        	performance_schema_max_mutex_instances?: int & >=-1 & <=104857600
  1105        
  1106        	// The maximum number of rows in the prepared_statements_instances table.
  1107        	performance_schema_max_prepared_statements_instances?: int & >=-1 & <=1048576
  1108        
  1109        	// The maximum number of stored programs for which the Performance Schema maintains statistics.
  1110        	performance_schema_max_program_instances?: int & >=-1 & <=1048576
  1111        
  1112        	// The maximum number of rwlock instruments.
  1113        	performance_schema_max_rwlock_classes?: int & >=0 & <=256
  1114        
  1115        	// The maximum number of instrumented rwlock objects.
  1116        	performance_schema_max_rwlock_instances?: int & >=-1 & <=104857600
  1117        
  1118        	// The maximum number of socket instruments.
  1119        	performance_schema_max_socket_classes?: int & >=0 & <=256
  1120        
  1121        	// The maximum number of instrumented socket objects.
  1122        	performance_schema_max_socket_instances?: int & >=-1 & <=1048576
  1123        
  1124        	// The maximum number of bytes used to store SQL statements in the SQL_TEXT column of the events_statements_current, events_statements_history, and events_statements_history_long statement event tables.
  1125        	performance_schema_max_sql_text_length?: int & >=-1 & <=1048576
  1126        
  1127        	// The maximum number of stage instruments.
  1128        	performance_schema_max_stage_classes?: int & >=0 & <=256
  1129        
  1130        	// The maximum number of statement instruments.
  1131        	performance_schema_max_statement_classes?: int & >=0 & <=256
  1132        
  1133        	// The maximum depth of nested stored program calls for which the Performance Schema maintains statistics.
  1134        	performance_schema_max_statement_stack?: int & >=1 & <=256
  1135        
  1136        	// The maximum number of opened table objects.
  1137        	performance_schema_max_table_handles?: int & >=-1 & <=1048576
  1138        
  1139        	// The maximum number of instrumented table objects.
  1140        	performance_schema_max_table_instances?: int & >=-1 & <=1048576
  1141        
  1142        	// The maximum number of tables for which the Performance Schema maintains lock statistics.
  1143        	performance_schema_max_table_lock_stat?: int & >=-1 & <=1048576
  1144        
  1145        	// The maximum number of thread instruments.
  1146        	performance_schema_max_thread_classes?: int & >=0 & <=256
  1147        
  1148        	// The maximum number of instrumented thread objects.
  1149        	performance_schema_max_thread_instances?: int & >=-1 & <=1048576
  1150        
  1151        	// The amount of preallocated memory per thread used to hold connection attribute strings.
  1152        	performance_schema_session_connect_attrs_size?: int & >=-1 & <=1048576
  1153        
  1154        	// The number of rows in the setup_actors table.
  1155        	performance_schema_setup_actors_size?: int & >=0 & <=1024
  1156        
  1157        	// The number of rows in the setup_objects table.
  1158        	performance_schema_setup_objects_size?: int & >=-1 & <=1048576
  1159        
  1160        	// The number of rows in the users table.
  1161        	performance_schema_users_size?: int & >=-1 & <=1048576
  1162        
  1163        	// Whether to load persisted configuration settings from the mysqld-auto.cnf file in the data directory.
  1164        	persisted_globals_load: string & "0" | "1" | "OFF" | "ON" | *"0"
  1165        
  1166        	// The path name of the process ID file. This file is used by other programs such as MySQLd_safe to determine the server's process ID.
  1167        	pid_file?: string
  1168        
  1169        	// Directory searched by systems dynamic linker for UDF object files. Otherwise, user-defined function object files must be located the default directory.
  1170        	plugin_dir?: string
  1171        
  1172        	// The number of the port on which the server listens for TCP/IP connections.
  1173        	port?: int
  1174        
  1175        	// The size of the buffer that is allocated when preloading indexes.
  1176        	preload_buffer_size?: int & >=1024 & <=1073741824
  1177        
  1178        	// The number of statements for which to maintain profiling if profiling is enabled.
  1179        	profiling_history_size?: int & >=0 & <=100
  1180        
  1181        	protocol_version?: int
  1182        
  1183        	// The allocation size of memory blocks that are allocated for objects created during statement parsing and execution. May help resolve fragmentation problems.
  1184        	query_alloc_block_size?: int & >=1024 & <=4294967295
  1185        
  1186        	// Increased size might help improve perf for complex queries (i.e. Reduces server memory allocation)
  1187        	query_prealloc_size?: int & >=8192 & <=18446744073709547520
  1188        
  1189        	// The size of blocks that are allocated when doing range optimization.
  1190        	range_alloc_block_size?: int & >=1024 & <=4294967295
  1191        
  1192        	// The limit on memory consumption for the range optimizer.
  1193        	range_optimizer_max_mem_size?: int & >=0 & <=18446744073709551615
  1194        
  1195        	rbr_exec_mode?: string & "IDEMPOTENT" | "STRICT"
  1196        
  1197        	// When the rds.optimized_writes parameter is set to AUTO, the DB instance uses RDS Optimized Writes for DB instance classes and engine versions that support it. When this parameter is set to OFF, the DB instance doesn't use RDS Optimized Writes.
  1198        	"rds.optimized_writes"?: string & "AUTO" | "OFF"
  1199        
  1200        	// Each thread that does a sequential scan allocates this buffer. Increased value may help perf if performing many sequential scans.
  1201        	read_buffer_size: int & >=8200 & <=2147479552 | *262144
  1202        
  1203        	// When it is enabled, the server permits no updates except from updates performed by slave threads.
  1204        	read_only?: string & "0" | "1" | "{TrueIfReplica}"
  1205        
  1206        	// Avoids disk reads when reading rows in sorted order following a key-sort operation. Large values can improve ORDER BY perf.
  1207        	read_rnd_buffer_size: int & >=8200 & <=2147479552 | *524288
  1208        
  1209        	// Stack size limit for regular expressions matches.
  1210        	regexp_stack_limit: int & >=0 & <=2147483647 | *8000000
  1211        
  1212        	// Timeout for regular expressions matches, in steps of the match engine, typically on the order of milliseconds.
  1213        	regexp_time_limit: int & >=0 & <=2147483647 | *32
  1214        
  1215        	relay_log?: string
  1216        
  1217        	// The basename for the relay log.
  1218        	"relay-log"?: string
  1219        
  1220        	relay_log_basename?: string
  1221        
  1222        	relay_log_index?: string
  1223        
  1224        	relay_log_info_file?: string
  1225        
  1226        	// This option causes the server to log its relay log info to a file or a table.
  1227        	relay_log_info_repository?: string & "FILE" | "TABLE"
  1228        
  1229        	relay_log_purge: string & "0" | "1" | "OFF" | "ON" | *"TRUE"
  1230        
  1231        	// Enables automatic relay log recovery immediately following server startup.
  1232        	relay_log_recovery: string & "0" | "1" | "OFF" | "ON" | *"1"
  1233        
  1234        	relay_log_space_limit: int & >=0 & <=18446744073709551615 | *0
  1235        
  1236        	// Creates a replication filter using the name of a database
  1237        	"replicate-do-db"?: string
  1238        
  1239        	// Creates a replication filter using the name of a table
  1240        	"replicate-do-table"?: string
  1241        
  1242        	// Creates a replication ignore filter using the name of a database
  1243        	"replicate-ignore-db"?: string
  1244        
  1245        	// Creates a replication ignore filter using the name of a table
  1246        	"replicate-ignore-table"?: string
  1247        
  1248        	// Creates a replication filter using the pattern of a table name
  1249        	"replicate-wild-do-table"?: string
  1250        
  1251        	// Creates a replication ignore filter using the pattern of a table name
  1252        	"replicate-wild-ignore-table"?: string
  1253        
  1254        	report_host?: string
  1255        
  1256        	report_password?: string
  1257        
  1258        	report_port?: int & >=0 & <=65535
  1259        
  1260        	report_user?: string
  1261        
  1262        	// Whether client connections to the server are required to use some form of secure transport.
  1263        	require_secure_transport?: string & "0" | "1" | "OFF" | "ON"
  1264        
  1265        	resultset_metadata?: string & "FULL" | "NONE"
  1266        
  1267        	// The size for reads done from the binlog and relay log. It must be a multiple of 4kb. Making it larger might help with IO stalls while reading these files when they are not in the OS buffer cache.
  1268        	rpl_read_size: int & >=8192 & <=4294967295 | *8192
  1269        
  1270        	// The number of slave acknowledgments the master must receive per transaction before proceeding.
  1271        	rpl_semi_sync_master_wait_for_slave_count?: int & >=1 & <=65535
  1272        
  1273        	// Controls the point at which a semisynchronous replication master waits for slave acknowledgment of transaction receipt before returning a status to the client that committed the transaction.
  1274        	rpl_semi_sync_master_wait_point?: string & "AFTER_SYNC" | "AFTER_COMMIT"
  1275        
  1276        	// Control the length of time (in seconds) that STOP SLAVE waits before timing out by setting this variable.
  1277        	rpl_stop_slave_timeout?: int & >=2 & <=31536000
  1278        
  1279        	// If this option is enabled, a user cannot create new MySQL users by using the GRANT statement unless the user has the INSERT privilege for the mysql.user table or any column in the table.
  1280        	"safe-user-create"?: string & "0" | "1" | "OFF" | "ON"
  1281        
  1282        	// Defines a limit for the number of schema definition objects, both used and unused, that can be kept in the dictionary object cache.
  1283        	schema_definition_cache: int & >=256 & <=524288 | *256
  1284        
  1285        	// Limits the effect of LOAD_FILE(), LOAD_DATA, and SELECT ??? INTO OUTFILE to specified directory.
  1286        	secure_file_priv?: string
  1287        
  1288        	// Integer value used to identify the instance in a replication group
  1289        	server_id?: int
  1290        
  1291        	// Enables a tracker for capturing GTIDs and returning them in the OK packet.
  1292        	session_track_gtids?: string & "0" | "1" | "OFF" | "ON"
  1293        
  1294        	// Whether the server tracks changes to the default schema and notifies the client when changes occur.
  1295        	session_track_schema?: string & "0" | "1" | "OFF" | "ON"
  1296        
  1297        	// Whether the server tracks changes to the session state and notifies the client when changes occur.
  1298        	session_track_state_change?: string & "0" | "1" | "OFF" | "ON"
  1299        
  1300        	// Whether the server tracks changes to the session system variables and notifies the client when changes occur.
  1301        	session_track_system_variables?: string & "time_zone" | "autocommit" | "character_set_client" | "character_set_results" | "character_set_connection"
  1302        
  1303        	// Track changes to the transaction attributes.
  1304        	session_track_transaction_info?: string & "OFF" | "STATE" | "CHARACTERISTICS"
  1305        
  1306        	// Controls whether the server autogenerates RSA private/public key-pair files in the data directory.
  1307        	sha256_password_auto_generate_rsa_keys?: string & "0" | "1" | "OFF" | "ON"
  1308        
  1309        	sha256_password_private_key_path?: string
  1310        
  1311        	// Controls whether the sha256_password built-in authentication plugin supports proxy users.
  1312        	sha256_password_proxy_users?: string & "0" | "1" | "OFF" | "ON"
  1313        
  1314        	sha256_password_public_key_path?: string
  1315        
  1316        	// When this option is enabled, it increases the verbosity of 'SHOW CREATE TABLE'.
  1317        	show_create_table_verbosity: string & "0" | "1" | "OFF" | "ON" | *"0"
  1318        
  1319        	// Whether SHOW CREATE TABLE output includes comments to flag temporal columns found to be in pre-5.6.4 format.
  1320        	show_old_temporals?: string & "0" | "1" | "OFF" | "ON"
  1321        
  1322        	// Ignore character set information sent by the client.
  1323        	"skip-character-set-client-handshake"?: string & "0" | "1" | "OFF" | "ON"
  1324        
  1325        	// Uses OS locking instead of internal
  1326        	skip_external_locking?: string & "0" | "1" | "OFF" | "ON"
  1327        
  1328        	// Host names are not resolved. All Host column values in the grant tables must be IP numbers or localhost.
  1329        	skip_name_resolve?: string & "0" | "1" | "OFF" | "ON"
  1330        
  1331        	// SHOW DATABASES statement is allowed only to users who have the SHOW DATABASES privilege
  1332        	skip_show_database?: string & "0" | "1" | "OFF" | "ON"
  1333        
  1334        	// Tells the slave server not to start the slave threads when the server starts.
  1335        	"skip-slave-start": string & "0" | "1" | "OFF" | "ON" | *"1"
  1336        
  1337        	// Whether or not batched updates are enabled on replication slaves.
  1338        	slave_allow_batching?: string & "0" | "1" | "OFF" | "ON"
  1339        
  1340        	// Sets the maximum number of transactions that can be processed by a multi-threaded slave before a checkpoint operation is called to update its status as shown by SHOW SLAVE STATUS.
  1341        	slave_checkpoint_group?: int & >=32 & <=524280
  1342        
  1343        	// Sets the maximum time (in milliseconds) that is allowed to pass before a checkpoint operation is called to update the status of a multi-threaded slave as shown by SHOW SLAVE STATUS.
  1344        	slave_checkpoint_period?: int & >=1 & <=4294967295
  1345        
  1346        	// Whether to use compression of the slave/master protocol if both the slave and the master support it.
  1347        	slave_compressed_protocol?: string & "0" | "1" | "OFF" | "ON"
  1348        
  1349        	// slave_exec_mode controls how a replication thread resolves conflicts and errors during replication.
  1350        	slave_exec_mode?: string & "IDEMPOTENT" | "STRICT"
  1351        
  1352        	slave_load_tmpdir?: string
  1353        
  1354        	// The number of seconds to wait for more data from a master/slave connection before aborting the read.
  1355        	slave_net_timeout?: int & >=1 & <=31536000
  1356        
  1357        	// Enable parallel execution on the slave of all uncommitted threads already in the prepare phase, without violating consistency.
  1358        	slave_parallel_type?: string & "DATABASE" | "LOGICAL_CLOCK"
  1359        
  1360        	// Sets the number of slave worker threads for executing replication events (transactions) in parallel. Setting this variable to 0 (the default) disables parallel execution.
  1361        	slave_parallel_workers?: int & >=0 & <=1024
  1362        
  1363        	// For multithreaded slaves, this option sets the maximum amount of memory (in bytes) available to slave worker queues holding events not yet applied.
  1364        	slave_pending_jobs_size_max?: int & >=1024 & <=18446744073709547520
  1365        
  1366        	// Enable parallel execution on the slave of all uncommitted threads already in the prepare phase, without violating consistency.
  1367        	slave_preserve_commit_order?: string & "0" | "1" | "OFF" | "ON"
  1368        
  1369        	// When preparing batches of rows for row-based logging and replication, this variable controls how the rows are searched for matches???that is, whether or not hashing is used for searches using a primary or unique key, using some other key, or using no key at all.
  1370        	slave_rows_search_algorithms?: string & "TABLE_SCAN" | "INDEX_SCAN" | "HASH_SCAN"
  1371        
  1372        	// When this option is enabled, the slave examines checksums read from the relay log, in the event of a mismatch, the slave stops with an error.
  1373        	slave_sql_verify_checksum?: string & "0" | "1" | "OFF" | "ON"
  1374        
  1375        	// If a replication slave SQL thread fails to execute a transaction because of an InnoDB deadlock or because the transaction's execution time exceeded InnoDB's innodb_lock_wait_timeout, it automatically retries slave_transaction_retries times before stopping with an error.
  1376        	slave_transaction_retries?: int & >=0 & <=18446744073709551615
  1377        
  1378        	// Controls the type conversion mode in effect on the slave when using row-based replication
  1379        	slave_type_conversions?: string & "ALL_LOSSY" | "ALL_NON_LOSSY" | "ALL_SIGNED" | "ALL_UNSIGNED"
  1380        
  1381        	// Increments Slow_launch_threads if creating thread takes longer than this many seconds.
  1382        	slow_launch_time?: int & >=0 & <=31536000
  1383        
  1384        	// Enable or disable the slow query log
  1385        	slow_query_log?: string & "0" | "1" | "OFF" | "ON"
  1386        
  1387        	// Location of the mysql slow query log file.
  1388        	slow_query_log_file?: string
  1389        
  1390        	// (UNIX) socket file and (WINDOWS) named pipe used for local connections.
  1391        	socket?: string
  1392        
  1393        	// Larger value improves perf for ORDER BY or GROUP BY operations.
  1394        	sort_buffer_size?: int & >=32768 & <=18446744073709551615
  1395        
  1396        	sql_auto_is_null: string & "0" | "1" | "OFF" | "ON" | *"0"
  1397        
  1398        	sql_big_selects: int & >=1 & <=18446744073709551615 | *18446744073709551615
  1399        
  1400        	sql_buffer_result: string & "0" | "1" | "OFF" | "ON" | *"0"
  1401        
  1402        	sql_log_off: string & "0" | "1" | "OFF" | "ON" | *"0"
  1403        
  1404        	// Current SQL Server Mode.
  1405        	sql_mode?: string & "ALLOW_INVALID_DATES" | "ANSI_QUOTES" | "ERROR_FOR_DIVISION_BY_ZERO" | "HIGH_NOT_PRECEDENCE" | "IGNORE_SPACE" | "NO_AUTO_VALUE_ON_ZERO" | "NO_BACKSLASH_ESCAPES" | "NO_DIR_IN_CREATE" | "NO_ENGINE_SUBSTITUTION" | "NO_UNSIGNED_SUBTRACTION" | "NO_ZERO_DATE" | "NO_ZERO_IN_DATE" | "ONLY_FULL_GROUP_BY" | "PAD_CHAR_TO_FULL_LENGTH" | "PIPES_AS_CONCAT" | "REAL_AS_FLOAT" | "STRICT_ALL_TABLES" | "STRICT_TRANS_TABLES" | "ANSI" | "TRADITIONAL"
  1406        
  1407        	sql_notes: string & "0" | "1" | "OFF" | "ON" | *"1"
  1408        
  1409        	sql_quote_show_create: string & "0" | "1" | "OFF" | "ON" | *"1"
  1410        
  1411        	// Whether statements that create new tables or alter the structure of existing tables enforce the requirement that tables have a primary key.
  1412        	sql_require_primary_key?: string & "0" | "1" | "OFF" | "ON"
  1413        
  1414        	sql_safe_updates: string & "0" | "1" | "OFF" | "ON" | *"0"
  1415        
  1416        	// The maximum number of rows to return from SELECT statements.
  1417        	sql_select_limit?: int & >=0 & <=18446744073709551615
  1418        
  1419        	sql_slave_skip_counter?: int
  1420        
  1421        	sql_warnings: string & "0" | "1" | "OFF" | "ON" | *"0"
  1422        
  1423        	ssl_ca?: string
  1424        
  1425        	ssl_capath?: string
  1426        
  1427        	ssl_cert?: string
  1428        
  1429        	// The list of permissible ciphers for encrypted connections that use TLS protocols up through TLSv1.2.
  1430        	ssl_cipher?: string & "ECDHE-RSA-AES256-GCM-SHA384" | "ECDHE-RSA-AES128-GCM-SHA256" | "ECDHE-RSA-AES256-SHA384" | "ECDHE-RSA-AES128-SHA256" | "ECDHE-RSA-AES256-SHA" | "ECDHE-RSA-AES128-SHA" | "AES256-GCM-SHA384" | "AES128-GCM-SHA256" | "AES256-SHA" | "AES128-SHA" | "DHE-RSA-AES128-SHA" | "DHE-RSA-AES256-SHA" | "DHE-DSS-AES128-SHA" | "DHE-DSS-AES256-SHA"
  1431        
  1432        	ssl_crl?: string
  1433        
  1434        	ssl_crlpath?: string
  1435        
  1436        	// Controls whether to enable FIPS mode on the server side.
  1437        	ssl_fips_mode?: string & "0" | "1" | "STRICT"
  1438        
  1439        	ssl_key?: string
  1440        
  1441        	// Sets a soft upper limit for the number of cached stored routines per connection.
  1442        	stored_program_cache?: int & >=256 & <=524288
  1443        
  1444        	// Defines a limit for the number of stored program definition objects, both used and unused, that can be kept in the dictionary object cache.
  1445        	stored_program_definition_cache: int & >=256 & <=524288 | *256
  1446        
  1447        	// Whether client connections to the server are required to use some form of secure transport.
  1448        	super_read_only?: string & "0" | "1" | "OFF" | "ON"
  1449        
  1450        	// Sync binlog (MySQL flush to disk or rely on OS)
  1451        	sync_binlog: int & >=0 & <=18446744073709547520 | *1
  1452        
  1453        	// If the value of this variable is greater than 0, a replication slave synchronizes its master.info file to disk (using fdatasync()) after every sync_master_info events.
  1454        	sync_master_info?: int & >=0 & <=18446744073709547520
  1455        
  1456        	// If the value of this variable is greater than 0, the MySQL server synchronizes its relay log to disk (using fdatasync()) after every sync_relay_log writes to the relay log.
  1457        	sync_relay_log?: int & >=0 & <=18446744073709547520
  1458        
  1459        	// If the value of this variable is greater than 0, a replication slave synchronizes its relay-log.info file to disk (using fdatasync()) after every sync_relay_log_info transactions.
  1460        	sync_relay_log_info?: int & >=0 & <=18446744073709547520
  1461        
  1462        	// Causes SYSYDATE() to be an alias for NOW(). Replication related
  1463        	"sysdate-is-now"?: string & "0" | "1" | "OFF" | "ON"
  1464        
  1465        	system_time_zone?: string
  1466        
  1467        	// The number of table definitions that can be stored in the definition cache
  1468        	table_definition_cache?: int & >=400 & <=524288
  1469        
  1470        	// The number of open tables for all threads. Increasing this value increases the number of file descriptors.
  1471        	table_open_cache?: int & >=1 & <=524288
  1472        
  1473        	// The number of open tables cache instances.
  1474        	table_open_cache_instances: int & >=1 & <=16 | *16
  1475        
  1476        	// Defines a limit for the number of tablespace definition objects, both used and unused, that can be kept in the dictionary object cache.
  1477        	tablespace_definition_cache: int & >=256 & <=524288 | *256
  1478        
  1479        	// Defines the maximum amount of memory (in bytes) the TempTable storage engine is permitted to allocate from memory-mapped temporary files before it starts storing data to InnoDB internal temporary tables on disk.
  1480        	temptable_max_mmap?: int & >=0 & <=18446744073709551615
  1481        
  1482        	// Maximum amount of memory (in bytes) the TempTable storage engine is allowed to allocate from the main memory (RAM) before starting to store data on disk.
  1483        	temptable_max_ram: int & >=2097152 & <=18446744073709547520 | *1073741824
  1484        
  1485        	// Number of threads to be cached. Doesn't improve perf for good thread implementations.
  1486        	thread_cache_size?: int & >=0 & <=16384
  1487        
  1488        	thread_handling?: string & "no-threads" | "one-thread-per-connection" | "loaded-dynamically"
  1489        
  1490        	// If the thread stack size is too small, it limits the complexity of the SQL statements that the server can handle, the recursion depth of stored procedures, and other memory-consuming actions.
  1491        	thread_stack: int & >=131072 & <=18446744073709547520 | *262144
  1492        
  1493        	// The server time zone
  1494        	time_zone?: string & "Africa/Cairo" | "Africa/Casablanca" | "Africa/Harare" | "Africa/Monrovia" | "Africa/Nairobi" | "Africa/Tripoli" | "Africa/Windhoek" | "America/Araguaina" | "America/Asuncion" | "America/Bogota" | "America/Buenos_Aires" | "America/Caracas" | "America/Chihuahua" | "America/Cuiaba" | "America/Denver" | "America/Fortaleza" | "America/Guatemala" | "America/Halifax" | "America/Manaus" | "America/Matamoros" | "America/Monterrey" | "America/Montevideo" | "America/Phoenix" | "America/Santiago" | "America/Tijuana" | "Asia/Amman" | "Asia/Ashgabat" | "Asia/Baghdad" | "Asia/Baku" | "Asia/Bangkok" | "Asia/Beirut" | "Asia/Calcutta" | "Asia/Damascus" | "Asia/Dhaka" | "Asia/Irkutsk" | "Asia/Jerusalem" | "Asia/Kabul" | "Asia/Karachi" | "Asia/Kathmandu" | "Asia/Krasnoyarsk" | "Asia/Magadan" | "Asia/Muscat" | "Asia/Novosibirsk" | "Asia/Riyadh" | "Asia/Seoul" | "Asia/Shanghai" | "Asia/Singapore" | "Asia/Taipei" | "Asia/Tehran" | "Asia/Tokyo" | "Asia/Ulaanbaatar" | "Asia/Vladivostok" | "Asia/Yakutsk" | "Asia/Yerevan" | "Atlantic/Azores" | "Australia/Adelaide" | "Australia/Brisbane" | "Australia/Darwin" | "Australia/Hobart" | "Australia/Perth" | "Australia/Sydney" | "Canada/Newfoundland" | "Canada/Saskatchewan" | "Canada/Yukon" | "Brazil/East" | "Europe/Amsterdam" | "Europe/Athens" | "Europe/Dublin" | "Europe/Helsinki" | "Europe/Istanbul" | "Europe/Kaliningrad" | "Europe/Moscow" | "Europe/Paris" | "Europe/Prague" | "Europe/Sarajevo" | "Pacific/Auckland" | "Pacific/Fiji" | "Pacific/Guam" | "Pacific/Honolulu" | "Pacific/Samoa" | "US/Alaska" | "US/Central" | "US/Eastern" | "US/East-Indiana" | "US/Pacific" | "UTC"
  1495        
  1496        	// The list of permissible ciphers for encrypted connections that use TLSv1.3.
  1497        	tls_ciphersuites?: string & "TLS_AES_128_GCM_SHA256" | "TLS_AES_256_GCM_SHA384" | "TLS_CHACHA20_POLY1305_SHA256" | "TLS_AES_128_CCM_SHA256" | "TLS_AES_128_CCM_8_SHA256"
  1498        
  1499        	// The protocols permitted by the server for encrypted connections.
  1500        	tls_version?: string & "TLSv1" | "TLSv1.1" | "TLSv1.2" | "TLSv1.3"
  1501        
  1502        	// The directory used for temporary files and temporary tables
  1503        	tmpdir?: string
  1504        
  1505        	// If an in-memory temporary table exceeds the limit, MySQL automatically converts it to an on-disk MyISAM table. Increased value can improve perf for many advanced GROUP BY queries.
  1506        	tmp_table_size?: int & >=1024 & <=18446744073709551615
  1507        
  1508        	// The amount in bytes by which to increase a per-transaction memory pool which needs memory.
  1509        	transaction_alloc_block_size?: int & >=1024 & <=18446744073709547520
  1510        
  1511        	// Sets the default transaction isolation level.
  1512        	transaction_isolation?: string & "READ-UNCOMMITTED" | "READ-COMMITTED" | "REPEATABLE-READ" | "SERIALIZABLE"
  1513        
  1514        	// There is a per-transaction memory pool from which various transaction-related allocations take memory. For every allocation that cannot be satisfied from the pool because it has insufficient memory available, the pool is incremented.
  1515        	transaction_prealloc_size?: int & >=1024 & <=18446744073709547520
  1516        
  1517        	// Reserved for future use.
  1518        	transaction_write_set_extraction?: string & "OFF" | "MURMUR32"
  1519        
  1520        	unique_checks: string & "0" | "1" | "OFF" | "ON" | *"1"
  1521        
  1522        	// This variable controls whether updates to a view can be made when the view does not contain all columns of the primary key defined in the underlying table, if the update statement contains a LIMIT clause (Often generated by GUI tools).
  1523        	updatable_views_with_limit?: string & "0" | "1" | "OFF" | "ON"
  1524        
  1525        	// This option controls how the server loads the validate_password plugin at startup.
  1526        	"validate-password"?: string & "ON" | "OFF" | "FORCE" | "FORCE_PLUS_PERMANENT"
  1527        
  1528        	// The path name of the dictionary file used by the validate_password plugin for checking passwords.
  1529        	validate_password_dictionary_file?: string
  1530        
  1531        	// The minimum number of characters that validate_password requires passwords to have.
  1532        	validate_password_length?: int & >=0 & <=2147483647
  1533        
  1534        	// The minimum number of lowercase and uppercase characters that passwords checked by the validate_password plugin must have if the password policy is MEDIUM or stronger.
  1535        	validate_password_mixed_case_count?: int & >=0 & <=2147483647
  1536        
  1537        	// The minimum number of numeric (digit) characters that passwords checked by the validate_password plugin must have if the password policy is MEDIUM or stronger.
  1538        	validate_password_number_count?: int & >=0 & <=2147483647
  1539        
  1540        	// The password policy enforced by the validate_password plugin.
  1541        	validate_password_policy?: string & "LOW" | "MEDIUM" | "STRONG"
  1542        
  1543        	// The minimum number of nonalphanumeric characters that passwords checked by the validate_password plugin must have if the password policy is MEDIUM or stronger.
  1544        	validate_password_special_char_count?: int & >=0 & <=2147483647
  1545        
  1546        	version_comment?: string
  1547        
  1548        	version_compile_machine?: string
  1549        
  1550        	version_compile_os?: string
  1551        
  1552        	version_compile_zlib?: string
  1553        
  1554        	// The number of seconds the server waits for activity on a non-interactive TCP/IP or UNIX File connection before closing it.
  1555        	wait_timeout?: int & >=1 & <=31536000
  1556        
  1557        	// For SQL window functions, determines whether to enable inversion optimization for moving window frames also for floating values.
  1558        	windowing_use_high_precision: string & "0" | "1" | "OFF" | "ON" | *"1"
  1559        
  1560        	// other parameters
  1561        	// reference mysql parameters
  1562        	...
  1563        }
  1564        
  1565        // SectionName is section name
  1566        [SectionName=_]: #MysqlParameter
  1567    
  1568  
  1569    ## require db instance restart
  1570  
  1571    ## reload parameters
  1572    ## dynamicParameters
  1573  
  1574  
  1575    # mysql configuration file format
  1576    formatterConfig:
  1577      format: ini
  1578      iniConfig:
  1579        sectionName: mysqld