pulumi-oci 2.26.0a1741415311__py3-none-any.whl → 2.26.0a1741943394__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. pulumi_oci/__init__.py +67 -0
  2. pulumi_oci/containerengine/_inputs.py +34 -35
  3. pulumi_oci/containerengine/cluster.py +2 -0
  4. pulumi_oci/containerengine/container_instance.py +2 -4
  5. pulumi_oci/containerengine/outputs.py +110 -21
  6. pulumi_oci/containerinstances/outputs.py +0 -14
  7. pulumi_oci/core/_inputs.py +21 -33
  8. pulumi_oci/core/outputs.py +13 -21
  9. pulumi_oci/database/__init__.py +1 -0
  10. pulumi_oci/database/_inputs.py +704 -0
  11. pulumi_oci/database/application_vip.py +59 -10
  12. pulumi_oci/database/autonomous_database.py +7 -28
  13. pulumi_oci/database/backup.py +153 -5
  14. pulumi_oci/database/cloud_exadata_infrastructure.py +126 -0
  15. pulumi_oci/database/cloud_vm_cluster.py +163 -30
  16. pulumi_oci/database/db_node.py +64 -8
  17. pulumi_oci/database/exadata_infrastructure.py +157 -3
  18. pulumi_oci/database/exadata_infrastructure_configure_exascale_management.py +1615 -0
  19. pulumi_oci/database/exadb_vm_cluster.py +84 -7
  20. pulumi_oci/database/exascale_db_storage_vault.py +147 -0
  21. pulumi_oci/database/external_container_database.py +4 -4
  22. pulumi_oci/database/external_non_container_database.py +4 -4
  23. pulumi_oci/database/external_pluggable_database.py +4 -4
  24. pulumi_oci/database/get_application_vip.py +16 -2
  25. pulumi_oci/database/get_autonomous_database.py +0 -3
  26. pulumi_oci/database/get_backups.py +136 -10
  27. pulumi_oci/database/get_cloud_exadata_infrastructure.py +43 -1
  28. pulumi_oci/database/get_cloud_vm_cluster.py +59 -3
  29. pulumi_oci/database/get_cloud_vm_clusters.py +28 -6
  30. pulumi_oci/database/get_database_software_images.py +20 -1
  31. pulumi_oci/database/get_db_node.py +31 -4
  32. pulumi_oci/database/get_db_server.py +15 -1
  33. pulumi_oci/database/get_exadata_infrastructure.py +57 -1
  34. pulumi_oci/database/get_exadb_vm_cluster.py +29 -1
  35. pulumi_oci/database/get_exadb_vm_clusters.py +25 -3
  36. pulumi_oci/database/get_exascale_db_storage_vault.py +43 -1
  37. pulumi_oci/database/get_exascale_db_storage_vaults.py +47 -3
  38. pulumi_oci/database/get_external_container_database.py +1 -1
  39. pulumi_oci/database/get_external_non_container_database.py +1 -1
  40. pulumi_oci/database/get_external_pluggable_database.py +1 -1
  41. pulumi_oci/database/get_flex_components.py +28 -6
  42. pulumi_oci/database/get_vm_cluster.py +60 -4
  43. pulumi_oci/database/get_vm_clusters.py +25 -3
  44. pulumi_oci/database/outputs.py +1084 -42
  45. pulumi_oci/database/pluggable_database.py +13 -13
  46. pulumi_oci/database/vm_cluster.py +172 -18
  47. pulumi_oci/database/vm_cluster_add_virtual_network.py +114 -2
  48. pulumi_oci/database/vm_cluster_remove_virtual_machine.py +114 -2
  49. pulumi_oci/datasafe/__init__.py +7 -0
  50. pulumi_oci/datasafe/_inputs.py +301 -0
  51. pulumi_oci/datasafe/discovery_mod.py +49 -0
  52. pulumi_oci/datasafe/get_discovery_job.py +15 -1
  53. pulumi_oci/datasafe/get_masking_report.py +46 -4
  54. pulumi_oci/datasafe/get_masking_report_masking_errors.py +166 -0
  55. pulumi_oci/datasafe/get_security_assessment_finding.py +31 -1
  56. pulumi_oci/datasafe/get_security_assessment_findings.py +43 -3
  57. pulumi_oci/datasafe/get_sensitive_column_analytics.py +370 -0
  58. pulumi_oci/datasafe/get_sensitive_data_model.py +15 -1
  59. pulumi_oci/datasafe/get_sensitive_type_group.py +253 -0
  60. pulumi_oci/datasafe/get_sensitive_type_group_grouped_sensitive_types.py +166 -0
  61. pulumi_oci/datasafe/get_sensitive_type_groups.py +294 -0
  62. pulumi_oci/datasafe/outputs.py +676 -3
  63. pulumi_oci/datasafe/sensitive_data_model.py +49 -0
  64. pulumi_oci/datasafe/sensitive_type_group.py +563 -0
  65. pulumi_oci/datasafe/sensitive_type_group_grouped_sensitive_type.py +287 -0
  66. pulumi_oci/datascience/__init__.py +4 -0
  67. pulumi_oci/datascience/_inputs.py +1160 -41
  68. pulumi_oci/datascience/get_model.py +29 -1
  69. pulumi_oci/datascience/get_model_custom_metadata_artifact_content.py +151 -0
  70. pulumi_oci/datascience/get_model_defined_metadata_artifact_content.py +151 -0
  71. pulumi_oci/datascience/get_model_version_set.py +15 -1
  72. pulumi_oci/datascience/get_model_version_sets.py +25 -3
  73. pulumi_oci/datascience/get_models.py +25 -3
  74. pulumi_oci/datascience/get_pipeline.py +15 -1
  75. pulumi_oci/datascience/model.py +64 -0
  76. pulumi_oci/datascience/model_custom_metadata_artifact.py +418 -0
  77. pulumi_oci/datascience/model_defined_metadata_artifact.py +418 -0
  78. pulumi_oci/datascience/model_version_set.py +28 -0
  79. pulumi_oci/datascience/outputs.py +4343 -2164
  80. pulumi_oci/datascience/pipeline.py +48 -141
  81. pulumi_oci/datascience/pipeline_run.py +32 -0
  82. pulumi_oci/dblm/__init__.py +17 -0
  83. pulumi_oci/dblm/_inputs.py +275 -0
  84. pulumi_oci/dblm/get_vulnerability.py +242 -0
  85. pulumi_oci/dblm/get_vulnerability_aggregated_vulnerability_data.py +220 -0
  86. pulumi_oci/dblm/get_vulnerability_notifications.py +144 -0
  87. pulumi_oci/dblm/get_vulnerability_resources.py +258 -0
  88. pulumi_oci/dblm/get_vulnerability_scan.py +267 -0
  89. pulumi_oci/dblm/get_vulnerability_scans.py +270 -0
  90. pulumi_oci/dblm/get_vulnerability_vulnerabilities.py +258 -0
  91. pulumi_oci/dblm/outputs.py +1294 -0
  92. pulumi_oci/dblm/vulnerability_scan.py +521 -0
  93. pulumi_oci/email/dkim.py +120 -20
  94. pulumi_oci/email/get_dkim.py +40 -1
  95. pulumi_oci/email/outputs.py +29 -0
  96. pulumi_oci/filestorage/__init__.py +3 -0
  97. pulumi_oci/filestorage/_inputs.py +49 -0
  98. pulumi_oci/filestorage/file_system.py +105 -0
  99. pulumi_oci/filestorage/file_system_quota_rule.py +593 -0
  100. pulumi_oci/filestorage/get_file_system_quota_rule.py +248 -0
  101. pulumi_oci/filestorage/get_file_system_quota_rules.py +210 -0
  102. pulumi_oci/filestorage/outputs.py +186 -0
  103. pulumi_oci/mysql/_inputs.py +1239 -10
  104. pulumi_oci/mysql/channel.py +28 -0
  105. pulumi_oci/mysql/get_channel.py +15 -1
  106. pulumi_oci/mysql/get_mysql_backup.py +15 -1
  107. pulumi_oci/mysql/get_mysql_configuration.py +15 -1
  108. pulumi_oci/mysql/get_mysql_db_system.py +15 -1
  109. pulumi_oci/mysql/mysql_backup.py +28 -0
  110. pulumi_oci/mysql/mysql_configuration.py +106 -0
  111. pulumi_oci/mysql/mysql_db_system.py +36 -0
  112. pulumi_oci/mysql/outputs.py +2008 -35
  113. pulumi_oci/opensearch/__init__.py +3 -0
  114. pulumi_oci/opensearch/_inputs.py +101 -0
  115. pulumi_oci/opensearch/cluster.py +76 -29
  116. pulumi_oci/opensearch/get_opensearch_cluster.py +12 -1
  117. pulumi_oci/opensearch/get_opensearch_cluster_pipeline.py +433 -0
  118. pulumi_oci/opensearch/get_opensearch_cluster_pipelines.py +218 -0
  119. pulumi_oci/opensearch/opensearch_cluster_pipeline.py +1172 -0
  120. pulumi_oci/opensearch/outputs.py +425 -0
  121. pulumi_oci/psql/_inputs.py +258 -0
  122. pulumi_oci/psql/backup.py +129 -28
  123. pulumi_oci/psql/db_system.py +10 -0
  124. pulumi_oci/psql/get_backup.py +47 -2
  125. pulumi_oci/psql/get_backups.py +3 -0
  126. pulumi_oci/psql/get_configurations.py +23 -1
  127. pulumi_oci/psql/get_db_system.py +1 -1
  128. pulumi_oci/psql/get_db_systems.py +1 -1
  129. pulumi_oci/psql/outputs.py +541 -5
  130. pulumi_oci/pulumi-plugin.json +1 -1
  131. pulumi_oci/redis/redis_cluster.py +7 -7
  132. {pulumi_oci-2.26.0a1741415311.dist-info → pulumi_oci-2.26.0a1741943394.dist-info}/METADATA +1 -1
  133. {pulumi_oci-2.26.0a1741415311.dist-info → pulumi_oci-2.26.0a1741943394.dist-info}/RECORD +135 -106
  134. {pulumi_oci-2.26.0a1741415311.dist-info → pulumi_oci-2.26.0a1741943394.dist-info}/WHEEL +1 -1
  135. {pulumi_oci-2.26.0a1741415311.dist-info → pulumi_oci-2.26.0a1741943394.dist-info}/top_level.txt +0 -0
@@ -31,6 +31,8 @@ __all__ = [
31
31
  'MysqlBackupDbSystemSnapshotArgsDict',
32
32
  'MysqlBackupDbSystemSnapshotBackupPolicyArgs',
33
33
  'MysqlBackupDbSystemSnapshotBackupPolicyArgsDict',
34
+ 'MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs',
35
+ 'MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgsDict',
34
36
  'MysqlBackupDbSystemSnapshotBackupPolicyPitrPolicyArgs',
35
37
  'MysqlBackupDbSystemSnapshotBackupPolicyPitrPolicyArgsDict',
36
38
  'MysqlBackupDbSystemSnapshotDataStorageArgs',
@@ -55,6 +57,8 @@ __all__ = [
55
57
  'MysqlConfigurationVariablesArgsDict',
56
58
  'MysqlDbSystemBackupPolicyArgs',
57
59
  'MysqlDbSystemBackupPolicyArgsDict',
60
+ 'MysqlDbSystemBackupPolicyCopyPolicyArgs',
61
+ 'MysqlDbSystemBackupPolicyCopyPolicyArgsDict',
58
62
  'MysqlDbSystemBackupPolicyPitrPolicyArgs',
59
63
  'MysqlDbSystemBackupPolicyPitrPolicyArgsDict',
60
64
  'MysqlDbSystemChannelArgs',
@@ -1334,6 +1338,10 @@ class MysqlBackupDbSystemSnapshotArgs:
1334
1338
 
1335
1339
  if not MYPY:
1336
1340
  class MysqlBackupDbSystemSnapshotBackupPolicyArgsDict(TypedDict):
1341
+ copy_policies: NotRequired[pulumi.Input[Sequence[pulumi.Input['MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgsDict']]]]
1342
+ """
1343
+ List of policies of a DB system to schedule cross-region DB system backup copy.
1344
+ """
1337
1345
  defined_tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
1338
1346
  """
1339
1347
  (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
@@ -1364,6 +1372,7 @@ elif False:
1364
1372
  @pulumi.input_type
1365
1373
  class MysqlBackupDbSystemSnapshotBackupPolicyArgs:
1366
1374
  def __init__(__self__, *,
1375
+ copy_policies: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs']]]] = None,
1367
1376
  defined_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1368
1377
  freeform_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1369
1378
  is_enabled: Optional[pulumi.Input[bool]] = None,
@@ -1371,6 +1380,7 @@ class MysqlBackupDbSystemSnapshotBackupPolicyArgs:
1371
1380
  retention_in_days: Optional[pulumi.Input[int]] = None,
1372
1381
  window_start_time: Optional[pulumi.Input[str]] = None):
1373
1382
  """
1383
+ :param pulumi.Input[Sequence[pulumi.Input['MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs']]] copy_policies: List of policies of a DB system to schedule cross-region DB system backup copy.
1374
1384
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
1375
1385
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] freeform_tags: (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
1376
1386
  :param pulumi.Input[bool] is_enabled: Specifies if the DB System read endpoint is enabled or not.
@@ -1378,6 +1388,8 @@ class MysqlBackupDbSystemSnapshotBackupPolicyArgs:
1378
1388
  :param pulumi.Input[int] retention_in_days: (Updatable) Number of days to retain this backup.
1379
1389
  :param pulumi.Input[str] window_start_time: The start time of the maintenance window.
1380
1390
  """
1391
+ if copy_policies is not None:
1392
+ pulumi.set(__self__, "copy_policies", copy_policies)
1381
1393
  if defined_tags is not None:
1382
1394
  pulumi.set(__self__, "defined_tags", defined_tags)
1383
1395
  if freeform_tags is not None:
@@ -1391,6 +1403,18 @@ class MysqlBackupDbSystemSnapshotBackupPolicyArgs:
1391
1403
  if window_start_time is not None:
1392
1404
  pulumi.set(__self__, "window_start_time", window_start_time)
1393
1405
 
1406
+ @property
1407
+ @pulumi.getter(name="copyPolicies")
1408
+ def copy_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs']]]]:
1409
+ """
1410
+ List of policies of a DB system to schedule cross-region DB system backup copy.
1411
+ """
1412
+ return pulumi.get(self, "copy_policies")
1413
+
1414
+ @copy_policies.setter
1415
+ def copy_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs']]]]):
1416
+ pulumi.set(self, "copy_policies", value)
1417
+
1394
1418
  @property
1395
1419
  @pulumi.getter(name="definedTags")
1396
1420
  def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -1464,6 +1488,58 @@ class MysqlBackupDbSystemSnapshotBackupPolicyArgs:
1464
1488
  pulumi.set(self, "window_start_time", value)
1465
1489
 
1466
1490
 
1491
+ if not MYPY:
1492
+ class MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgsDict(TypedDict):
1493
+ backup_copy_retention_in_days: NotRequired[pulumi.Input[int]]
1494
+ """
1495
+ Number of days to retain the copied DB system backup.
1496
+ """
1497
+ copy_to_region: NotRequired[pulumi.Input[str]]
1498
+ """
1499
+ The destination region name to which the DB system backup will be copied.
1500
+ """
1501
+ elif False:
1502
+ MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgsDict: TypeAlias = Mapping[str, Any]
1503
+
1504
+ @pulumi.input_type
1505
+ class MysqlBackupDbSystemSnapshotBackupPolicyCopyPolicyArgs:
1506
+ def __init__(__self__, *,
1507
+ backup_copy_retention_in_days: Optional[pulumi.Input[int]] = None,
1508
+ copy_to_region: Optional[pulumi.Input[str]] = None):
1509
+ """
1510
+ :param pulumi.Input[int] backup_copy_retention_in_days: Number of days to retain the copied DB system backup.
1511
+ :param pulumi.Input[str] copy_to_region: The destination region name to which the DB system backup will be copied.
1512
+ """
1513
+ if backup_copy_retention_in_days is not None:
1514
+ pulumi.set(__self__, "backup_copy_retention_in_days", backup_copy_retention_in_days)
1515
+ if copy_to_region is not None:
1516
+ pulumi.set(__self__, "copy_to_region", copy_to_region)
1517
+
1518
+ @property
1519
+ @pulumi.getter(name="backupCopyRetentionInDays")
1520
+ def backup_copy_retention_in_days(self) -> Optional[pulumi.Input[int]]:
1521
+ """
1522
+ Number of days to retain the copied DB system backup.
1523
+ """
1524
+ return pulumi.get(self, "backup_copy_retention_in_days")
1525
+
1526
+ @backup_copy_retention_in_days.setter
1527
+ def backup_copy_retention_in_days(self, value: Optional[pulumi.Input[int]]):
1528
+ pulumi.set(self, "backup_copy_retention_in_days", value)
1529
+
1530
+ @property
1531
+ @pulumi.getter(name="copyToRegion")
1532
+ def copy_to_region(self) -> Optional[pulumi.Input[str]]:
1533
+ """
1534
+ The destination region name to which the DB system backup will be copied.
1535
+ """
1536
+ return pulumi.get(self, "copy_to_region")
1537
+
1538
+ @copy_to_region.setter
1539
+ def copy_to_region(self, value: Optional[pulumi.Input[str]]):
1540
+ pulumi.set(self, "copy_to_region", value)
1541
+
1542
+
1467
1543
  if not MYPY:
1468
1544
  class MysqlBackupDbSystemSnapshotBackupPolicyPitrPolicyArgsDict(TypedDict):
1469
1545
  is_enabled: NotRequired[pulumi.Input[bool]]
@@ -2241,6 +2317,18 @@ class MysqlConfigurationInitVariablesArgs:
2241
2317
 
2242
2318
  if not MYPY:
2243
2319
  class MysqlConfigurationVariablesArgsDict(TypedDict):
2320
+ auto_increment_increment: NotRequired[pulumi.Input[int]]
2321
+ """
2322
+ auto_increment_increment and auto_increment_offset are intended for use with circular (source-to-source) replication, and can be used to control the operation of AUTO_INCREMENT columns. Both variables have global and session values, and each can assume an integer value between 1 and 65,535 inclusive.
2323
+
2324
+ autoIncrementIncrement corresponds to the MySQL Replication Source Options variable [auto_increment_increment] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_increment).
2325
+ """
2326
+ auto_increment_offset: NotRequired[pulumi.Input[int]]
2327
+ """
2328
+ This variable has a default value of 1. If it is left with its default value, and Group Replication is started on the server in multi-primary mode, it is changed to the server ID.
2329
+
2330
+ autoIncrementOffset corresponds to the MySQL Replication Source Options variable [auto_increment_offset] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_offset).
2331
+ """
2244
2332
  autocommit: NotRequired[pulumi.Input[bool]]
2245
2333
  """
2246
2334
  ("autocommit")
@@ -2255,6 +2343,18 @@ if not MYPY:
2255
2343
  """
2256
2344
  Sets the binary log expiration period in seconds. binlogExpireLogsSeconds corresponds to the MySQL binary logging system variable [binlog_expire_logs_seconds](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_expire_logs_seconds).
2257
2345
  """
2346
+ binlog_group_commit_sync_delay: NotRequired[pulumi.Input[int]]
2347
+ """
2348
+ Controls how many microseconds the binary log commit waits before synchronizing the binary log file to disk. There is no delay by default. Setting this variable to a microsecond delay enables more transactions to be synchronized together to disk at once, reducing the overall time to commit a group of transactions because the larger groups required fewer time units per group.
2349
+
2350
+ binlogGroupCommitSyncDelay corresponds to the MySQL Replication system variable [binlog_group_commit_sync_delay](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_delay)
2351
+ """
2352
+ binlog_group_commit_sync_no_delay_count: NotRequired[pulumi.Input[int]]
2353
+ """
2354
+ The maximum number of transactions to wait for before aborting the current delay as specified by binlog_group_commit_sync_delay. If binlog_group_commit_sync_delay is set to 0, then this option has no effect.
2355
+
2356
+ binlogGroupCommitSyncNoDelayCount corresponds to the MySQL Replication system variable [binlog_group_commit_sync_no_delay_count](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_no_delay_count)
2357
+ """
2258
2358
  binlog_row_metadata: NotRequired[pulumi.Input[str]]
2259
2359
  """
2260
2360
  Configures the amount of table metadata added to the binary log when using row-based logging. binlogRowMetadata corresponds to the MySQL binary logging system variable [binlog_row_metadata](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_row_metadata).
@@ -2267,6 +2367,24 @@ if not MYPY:
2267
2367
  """
2268
2368
  Enables compression for transactions that are written to binary log files on this server. binlogTransactionCompression corresponds to the MySQL binary logging system variable [binlog_transaction_compression](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_transaction_compression).
2269
2369
  """
2370
+ block_encryption_mode: NotRequired[pulumi.Input[str]]
2371
+ """
2372
+ This variable controls the block encryption mode for block-based algorithms such as AES. It affects encryption for AES_ENCRYPT() and AES_DECRYPT(). block_encryption_mode takes a value in aes-keylen-mode format, where keylen is the key length in bits and mode is the encryption mode. The value is not case-sensitive. Permitted keylen values are 128, 192, and 256. Permitted mode values are ECB, CBC, CFB1, CFB8, CFB128, and OFB.
2373
+
2374
+ block_encryption_mode corresponds to the MySQL Server Administration system variable [block_encryption_mode](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_block_encryption_mode)
2375
+ """
2376
+ character_set_server: NotRequired[pulumi.Input[str]]
2377
+ """
2378
+ The server's default character set. If you set this variable, you should also set collation_server to specify the collation for the character set.
2379
+
2380
+ characterSetServer corresponds to the MySQL server variable [character_set_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_character_set_server).
2381
+ """
2382
+ collation_server: NotRequired[pulumi.Input[str]]
2383
+ """
2384
+ The server's default collation.
2385
+
2386
+ collationServer corresponds to the MySQL server variable [collation_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_collation_server).
2387
+ """
2270
2388
  completion_type: NotRequired[pulumi.Input[str]]
2271
2389
  """
2272
2390
  ("completion_type")
@@ -2297,7 +2415,23 @@ if not MYPY:
2297
2415
  """
2298
2416
  default_authentication_plugin: NotRequired[pulumi.Input[str]]
2299
2417
  """
2300
- ("default_authentication_plugin")
2418
+ The default authentication plugin. This must be a plugin that uses internal credentials storage, so these values are permitted: mysql_native_password, sha256_password, caching_sha2_password.
2419
+
2420
+ As of MySQL 8.0.27, which introduces multifactor authentication, default_authentication_plugin is still used, but in conjunction with and at a lower precedence than the authentication_policy system variable. For details, see The Default Authentication Plugin. Because of this diminished role, default_authentication_plugin is deprecated as of MySQL 8.0.27 and subject to removal in a future MySQL version.
2421
+
2422
+ defaultAuthenticationPlugin corresponds to the MySQL system variable [default_authentication_plugin](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin).
2423
+ """
2424
+ explain_format: NotRequired[pulumi.Input[str]]
2425
+ """
2426
+ This variable determines the default output format used by EXPLAIN in the absence of a FORMAT option when displaying a query execution plan.
2427
+
2428
+ explainFormat corresponds to the MySQL system variable [explain_format](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explain_format).
2429
+ """
2430
+ explicit_defaults_for_timestamp: NotRequired[pulumi.Input[bool]]
2431
+ """
2432
+ This system variable determines whether the server enables certain nonstandard behaviors for default values and NULL-value handling in TIMESTAMP columns. By default, explicit_defaults_for_timestamp is enabled, which disables the nonstandard behaviors. Disabling explicit_defaults_for_timestamp results in a warning.
2433
+
2434
+ explicit_defaults_for_timestamp corresponds to the MySQL Server Administration system variable [explicit_defaults_for_timestamp](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explicit_defaults_for_timestamp)
2301
2435
  """
2302
2436
  foreign_key_checks: NotRequired[pulumi.Input[bool]]
2303
2437
  """
@@ -2319,6 +2453,12 @@ if not MYPY:
2319
2453
 
2320
2454
  globalConnectionMemoryTracking corresponds to the MySQL system variable [global_connection_memory_tracking](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_global_connection_memory_tracking).
2321
2455
  """
2456
+ group_concat_max_len: NotRequired[pulumi.Input[str]]
2457
+ """
2458
+ Specifies the maximum permitted result length in bytes for the GROUP_CONCAT() function.
2459
+
2460
+ This is the MySQL variable "group_concat_max_len". For more information, please see the [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_group_concat_max_len)
2461
+ """
2322
2462
  group_replication_consistency: NotRequired[pulumi.Input[str]]
2323
2463
  """
2324
2464
  * EVENTUAL: Both RO and RW transactions do not wait for preceding transactions to be applied before executing. A RW transaction does not wait for other members to apply a transaction. This means that a transaction could be externalized on one member before the others. This also means that in the event of a primary failover, the new primary can accept new RO and RW transactions before the previous primary transactions are all applied. RO transactions could result in outdated values, RW transactions could result in a rollback due to conflicts.
@@ -2331,6 +2471,18 @@ if not MYPY:
2331
2471
  """
2332
2472
  ("information_schema_stats_expiry")
2333
2473
  """
2474
+ innodb_adaptive_hash_index: NotRequired[pulumi.Input[bool]]
2475
+ """
2476
+ Whether the InnoDB adaptive hash index is enabled or disabled. It may be desirable, depending on your workload, to dynamically enable or disable adaptive hash indexing to improve query performance. Because the adaptive hash index may not be useful for all workloads, conduct benchmarks with it both enabled and disabled, using realistic workloads.
2477
+
2478
+ innodbAdaptiveHashIndex corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_adaptive_hash_index] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_adaptive_hash_index).
2479
+ """
2480
+ innodb_autoinc_lock_mode: NotRequired[pulumi.Input[int]]
2481
+ """
2482
+ The lock mode to use for generating auto-increment values. Permissible values are 0, 1, or 2, for traditional, consecutive, or interleaved, respectively.
2483
+
2484
+ innodbAutoincLockMode corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_autoinc_lock_mode] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_autoinc_lock_mode).
2485
+ """
2334
2486
  innodb_buffer_pool_dump_pct: NotRequired[pulumi.Input[int]]
2335
2487
  """
2336
2488
  Specifies the percentage of the most recently used pages for each buffer pool to read out and dump.
@@ -2353,6 +2505,12 @@ if not MYPY:
2353
2505
 
2354
2506
  The default and maximum values depend on the amount of RAM provisioned by the shape. See [Default User Variables](https://www.terraform.io/mysql-database/doc/configuring-db-system.html#GUID-B5504C19-F6F4-4DAB-8506-189A4E8F4A6A).
2355
2507
  """
2508
+ innodb_change_buffering: NotRequired[pulumi.Input[str]]
2509
+ """
2510
+ Whether InnoDB performs change buffering, an optimization that delays write operations to secondary indexes so that the I/O operations can be performed sequentially. Permitted values are described in the following table. Values may also be specified numerically.
2511
+
2512
+ innodbChangeBuffering corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_change_buffering] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_change_buffering).
2513
+ """
2356
2514
  innodb_ddl_buffer_size: NotRequired[pulumi.Input[str]]
2357
2515
  """
2358
2516
  innodbDdlBufferSize corresponds to the MySQL system variable [innodb_ddl_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ddl_buffer_size)
@@ -2415,6 +2573,38 @@ if not MYPY:
2415
2573
 
2416
2574
  innodbMaxPurgeLagDelay corresponds to the MySQL server system variable [innodb_max_purge_lag_delay](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_max_purge_lag_delay).
2417
2575
  """
2576
+ innodb_numa_interleave: NotRequired[pulumi.Input[bool]]
2577
+ """
2578
+ Enables the NUMA interleave memory policy for allocation of the InnoDB buffer pool. When innodb_numa_interleave is enabled, the NUMA memory policy is set to MPOL_INTERLEAVE for the mysqld process. After the InnoDB buffer pool is allocated, the NUMA memory policy is set back to MPOL_DEFAULT. For the innodb_numa_interleave option to be available, MySQL must be compiled on a NUMA-enabled Linux system.
2579
+
2580
+ innodbNumaInterleave corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_numa_interleave] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_numa_interleave).
2581
+ """
2582
+ innodb_online_alter_log_max_size: NotRequired[pulumi.Input[str]]
2583
+ """
2584
+ Specifies an upper limit in bytes on the size of the temporary log files used during online DDL operations for InnoDB tables. There is one such log file for each index being created or table being altered. This log file stores data inserted, updated, or deleted in the table during the DDL operation.
2585
+
2586
+ innodbOnlineAlterLogMaxSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_online_alter_log_max_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_online_alter_log_max_size).
2587
+ """
2588
+ innodb_redo_log_capacity: NotRequired[pulumi.Input[str]]
2589
+ """
2590
+ Defines the amount of disk space occupied by redo log files. innodb_redo_log_capacity supercedes the innodb_log_files_in_group and innodb_log_file_size variables, which are both ignored if innodb_redo_log_capacity is defined. If innodb_redo_log_capacity is not defined, and if neither innodb_log_file_size or innodb_log_files_in_group are defined, then the default innodb_redo_log_capacity value is used.
2591
+
2592
+ innodbRedoLogCapacity corresponds to the InnoDB Startup Options and System Variables [innodb_redo_log_capacity](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_redo_log_capacity)
2593
+ """
2594
+ innodb_rollback_on_timeout: NotRequired[pulumi.Input[bool]]
2595
+ """
2596
+ InnoDB rolls back only the last statement on a transaction timeout by default. If --innodb-rollback-on-timeout is specified, a transaction timeout causes InnoDB to abort and roll back the entire transaction.
2597
+
2598
+ innodbRollbackOnTimeout corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_rollback_on_timeout] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_rollback_on_timeout).
2599
+ """
2600
+ innodb_sort_buffer_size: NotRequired[pulumi.Input[int]]
2601
+ """
2602
+ This variable defines:
2603
+ * The sort buffer size for online DDL operations that create or rebuild secondary indexes. However, as of MySQL 8.0.27, this responsibility is subsumed by the innodb_ddl_buffer_size variable.
2604
+ * The amount by which the temporary log file is extended when recording concurrent DML during an online DDL operation, and the size of the temporary log file read buffer and write buffer.
2605
+
2606
+ innodbSortBufferSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_sort_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_sort_buffer_size).
2607
+ """
2418
2608
  innodb_stats_persistent_sample_pages: NotRequired[pulumi.Input[str]]
2419
2609
  """
2420
2610
  The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.
@@ -2433,15 +2623,41 @@ if not MYPY:
2433
2623
 
2434
2624
  innodb_stats_persistent is ON by default and cannot be changed. It is possible to override it using the STATS_PERSISTENT clause of the [CREATE TABLE](https://dev.mysql.com/doc/refman/8.0/en/create-table.html) and [ALTER TABLE](https://dev.mysql.com/doc/refman/8.0/en/alter-table.html) statements.
2435
2625
  """
2626
+ innodb_strict_mode: NotRequired[pulumi.Input[bool]]
2627
+ """
2628
+ When you enable innodbStrictMode, the InnoDB storage engine returns errors instead of warnings for invalid or incompatible table options.
2629
+
2630
+ innodbStrictMode corresponds to the MySQL InnoDB system variable [innodb_strict_mode](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_strict_mode)
2631
+ """
2632
+ innodb_undo_log_truncate: NotRequired[pulumi.Input[bool]]
2633
+ """
2634
+ When enabled, undo tablespaces that exceed the threshold value defined by innodb_max_undo_log_size are marked for truncation. Only undo tablespaces can be truncated. Truncating undo logs that reside in the system tablespace is not supported. For truncation to occur, there must be at least two undo tablespaces.
2635
+
2636
+ innodbUndoLogTruncate corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_undo_log_truncate] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_undo_log_truncate).
2637
+ """
2436
2638
  interactive_timeout: NotRequired[pulumi.Input[int]]
2437
2639
  """
2438
2640
  The number of seconds the server waits for activity on an interactive connection before closing it.
2439
2641
 
2440
2642
  interactiveTimeout corresponds to the MySQL system variable. [interactive_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_interactive_timeout)
2441
2643
  """
2644
+ join_buffer_size: NotRequired[pulumi.Input[str]]
2645
+ """
2646
+ The minimum size of the buffer that is used for plain index scans, range index scans, and joins that do not use indexes and thus perform full table scans. In MySQL 8.0.18 and later, this variable also controls the amount of memory used for hash joins. Normally, the best way to get fast joins is to add indexes. Increase the value of join_buffer_size to get a faster full join when adding indexes is not possible. One join buffer is allocated for each full join between two tables. For a complex join between several tables for which indexes are not used, multiple join buffers might be necessary.
2647
+
2648
+ joinBufferSize corresponds to the MySQL Server System variable [join_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_join_buffer_size).
2649
+ """
2442
2650
  local_infile: NotRequired[pulumi.Input[bool]]
2443
2651
  """
2444
- ("local_infile")
2652
+ This variable controls server-side LOCAL capability for LOAD DATA statements. Depending on the local_infile setting, the server refuses or permits local data loading by clients that have LOCAL enabled on the client side.
2653
+
2654
+ local_infile corresponds to the MySQL Server system variable [local_infile](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_local_infile)
2655
+ """
2656
+ long_query_time: NotRequired[pulumi.Input[int]]
2657
+ """
2658
+ If a query takes longer than this many seconds, the server increments the Slow_queries status variable. If the slow query log is enabled, the query is logged to the slow query log file. This value is measured in real time, not CPU time, so a query that is under the threshold on a lightly loaded system might be above the threshold on a heavily loaded one.
2659
+
2660
+ longQueryTime corresponds to the MySQL Server System variable [long_query_time] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_long_query_time).
2445
2661
  """
2446
2662
  mandatory_roles: NotRequired[pulumi.Input[str]]
2447
2663
  """
@@ -2481,6 +2697,18 @@ if not MYPY:
2481
2697
  """
2482
2698
  ("max_prepared_stmt_count")
2483
2699
  """
2700
+ max_seeks_for_key: NotRequired[pulumi.Input[str]]
2701
+ """
2702
+ Limit the assumed maximum number of seeks when looking up rows based on a key. The MySQL optimizer assumes that no more than this number of key seeks are required when searching for matching rows in a table by scanning an index, regardless of the actual cardinality of the index (see Section 15.7.7.22, “SHOW INDEX Statement”). By setting this to a low value (say, 100), you can force MySQL to prefer indexes instead of table scans.
2703
+
2704
+ maxSeeksForKey corresponds to the MySQL Server System variable [max_seeks_for_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_seeks_for_key).
2705
+ """
2706
+ max_user_connections: NotRequired[pulumi.Input[str]]
2707
+ """
2708
+ The maximum number of simultaneous connections permitted to any given MySQL user account. A value of 0 (the default) means “no limit.” This variable has a global value that can be set at server startup or runtime. It also has a read-only session value that indicates the effective simultaneous-connection limit that applies to the account associated with the current session.
2709
+
2710
+ maxUserConnections corresponds to the MySQL Server System variable [max_user_connections] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_user_connections).
2711
+ """
2484
2712
  mysql_firewall_mode: NotRequired[pulumi.Input[bool]]
2485
2713
  """
2486
2714
  ("mysql_firewall_mode")
@@ -2577,6 +2805,14 @@ if not MYPY:
2577
2805
 
2578
2806
  netWriteTimeout corresponds to the MySQL system variable [net_write_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_net_write_timeout)
2579
2807
  """
2808
+ optimizer_switch: NotRequired[pulumi.Input[str]]
2809
+ """
2810
+ The optimizer_switch system variable enables control over optimizer behavior. The value of this variable is a set of flags, each of which has a value of on or off to indicate whether the corresponding optimizer behavior is enabled or disabled. This variable has global and session values and can be changed at runtime. The global default can be set at server startup.
2811
+
2812
+ Setting hypergraph_optimizer=on for cloud builds below 9.0.0 will fail.
2813
+
2814
+ optimizerSwitch corresponds to the MySQL Server System variable [optimizer_switch] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_optimizer_switch).
2815
+ """
2580
2816
  parser_max_mem_size: NotRequired[pulumi.Input[str]]
2581
2817
  """
2582
2818
  ("parser_max_mem_size")
@@ -2589,16 +2825,66 @@ if not MYPY:
2589
2825
  """
2590
2826
  ("query_prealloc_size") DEPRECATED -- variable should not be settable and will be ignored
2591
2827
  """
2828
+ range_optimizer_max_mem_size: NotRequired[pulumi.Input[str]]
2829
+ """
2830
+ The limit on memory consumption for the range optimizer. A value of 0 means “no limit.” If an execution plan considered by the optimizer uses the range access method but the optimizer estimates that the amount of memory needed for this method would exceed the limit, it abandons the plan and considers other plans.
2831
+
2832
+ rangeOptimizerMaxMemSize corresponds to the MySQL Server System variable [range_optimizer_max_mem_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_range_optimizer_max_mem_size).
2833
+ """
2592
2834
  regexp_time_limit: NotRequired[pulumi.Input[int]]
2593
2835
  """
2594
2836
  regexpTimeLimit corresponds to the MySQL system variable [regexp_time_limit] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_regexp_time_limit)
2595
2837
  """
2838
+ relay_log_space_limit: NotRequired[pulumi.Input[str]]
2839
+ """
2840
+ The maximum amount of space to use for all relay logs.
2841
+
2842
+ relayLogSpaceLimit corresponds to the MySQL Replica Server Options variable [relay_log_space_limit] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_relay_log_space_limit).
2843
+ """
2844
+ replica_net_timeout: NotRequired[pulumi.Input[int]]
2845
+ """
2846
+ Specifies the number of seconds to wait for more data or a heartbeat signal from the source before the replica considers the connection broken, aborts the read, and tries to reconnect. Setting this variable has no immediate effect. The state of the variable applies on all subsequent START REPLICA commands.
2847
+
2848
+ replicaNetTimeout corresponds to the MySQL Replica server system variable [replica_net_timeout](https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_net_timeout)
2849
+ """
2850
+ replica_parallel_workers: NotRequired[pulumi.Input[int]]
2851
+ """
2852
+ Beginning with MySQL 8.0.26, slave_parallel_workers is deprecated, and you should use replica_parallel_workers instead. (Prior to MySQL 8.0.26, you must use slave_parallel_workers to set the number of applier threads.)
2853
+
2854
+ replicaParallelWorkers corresponds to the MySQL Replica Server Options variable [replica_parallel_workers] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_parallel_workers).
2855
+ """
2856
+ replica_type_conversions: NotRequired[pulumi.Input[str]]
2857
+ """
2858
+ From MySQL 8.0.26, use replica_type_conversions in place of slave_type_conversions, which is deprecated from that release. In releases before MySQL 8.0.26, use slave_type_conversions.
2859
+
2860
+ replica_type_conversions controls the type conversion mode in effect on the replica when using row-based replication. Its value is a comma-delimited set of zero or more elements from the list: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED. Set this variable to an empty string to disallow type conversions between the source and the replica. Setting this variable takes effect for all replication channels immediately, including running channels.
2861
+
2862
+ replica_type_conversions corresponds to the MySQL Replica Server Options variable [replica_type_conversions] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_type_conversions).
2863
+ """
2864
+ require_secure_transport: NotRequired[pulumi.Input[bool]]
2865
+ """
2866
+ Whether client connections to the server are required to use some form of secure transport. When this variable is enabled, the server permits only TCP/IP connections encrypted using TLS/SSL, or connections that use a socket file or shared memory. The server rejects nonsecure connection attempts, which fail with an ER_SECURE_TRANSPORT_REQUIRED error.
2867
+
2868
+ require_secure_transport corresponds to the MySQL Server Administration system variable [require_secure_transport](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_require_secure_transport)
2869
+ """
2870
+ skip_name_resolve: NotRequired[pulumi.Input[bool]]
2871
+ """
2872
+ Whether to resolve host names when checking client connections. If this variable is OFF, mysqld resolves host names when checking client connections. If it is ON, mysqld uses only IP numbers; in this case, all Host column values in the grant tables must be IP addresses. See Section 7.1.12.3, “DNS Lookups and the Host Cache”.
2873
+
2874
+ skipNameResolve corresponds to the MySQL Server System variable [skip_name_resolve] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_skip_name_resolve).
2875
+ """
2596
2876
  sort_buffer_size: NotRequired[pulumi.Input[str]]
2597
2877
  """
2598
2878
  Each session that must perform a sort allocates a buffer of this size.
2599
2879
 
2600
2880
  sortBufferSize corresponds to the MySQL system variable [sort_buffer_size](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_sort_buffer_size)
2601
2881
  """
2882
+ sql_generate_invisible_primary_key: NotRequired[pulumi.Input[bool]]
2883
+ """
2884
+ Whether GIPK mode is in effect, in which case a MySQL replication source server adds a generated invisible primary key to any InnoDB table that is created without one.
2885
+
2886
+ sqlGenerateInvisiblePrimaryKey corresponds to the MySQL system variable [sql_generate_invisible_primary_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_generate_invisible_primary_key).
2887
+ """
2602
2888
  sql_mode: NotRequired[pulumi.Input[str]]
2603
2889
  """
2604
2890
  ("sql_mode")
@@ -2611,6 +2897,24 @@ if not MYPY:
2611
2897
  """
2612
2898
  ("sql_warnings")
2613
2899
  """
2900
+ table_definition_cache: NotRequired[pulumi.Input[int]]
2901
+ """
2902
+ The number of table definitions that can be stored in the table definition cache. If you use a large number of tables, you can create a large table definition cache to speed up opening of tables. The table definition cache takes less space and does not use file descriptors, unlike the normal table cache.
2903
+
2904
+ table_definition_cache corresponds to the MySQL Server Administration system variable [table_definition_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_definition_cache)
2905
+ """
2906
+ table_open_cache: NotRequired[pulumi.Input[int]]
2907
+ """
2908
+ The number of open tables for all threads. Increasing this value increases the number of file descriptors that mysqld requires.
2909
+
2910
+ table_open_cache corresponds to the MySQL Server Administration system variable [table_open_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache)
2911
+ """
2912
+ temptable_max_ram: NotRequired[pulumi.Input[str]]
2913
+ """
2914
+ Defines the maximum amount of memory that can be occupied by the TempTable storage engine before it starts storing data on disk. The default value is 1073741824 bytes (1GiB). For more information, see Section 10.4.4, “Internal Temporary Table Use in MySQL”.
2915
+
2916
+ temptableMaxRam corresponds to the MySQL system variable [temptable_max_ram] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_temptable_max_ram).
2917
+ """
2614
2918
  thread_pool_dedicated_listeners: NotRequired[pulumi.Input[bool]]
2615
2919
  """
2616
2920
  Controls whether the thread pool uses dedicated listener threads. If enabled, a listener thread in each thread group is dedicated to the task of listening for network events from clients, ensuring that the maximum number of query worker threads is no more than the value specified by threadPoolMaxTransactionsLimit. threadPoolDedicatedListeners corresponds to the MySQL Database Service-specific system variable thread_pool_dedicated_listeners.
@@ -2619,6 +2923,24 @@ if not MYPY:
2619
2923
  """
2620
2924
  Limits the maximum number of open transactions to the defined value. The default value is 0, which enforces no limit. threadPoolMaxTransactionsLimit corresponds to the MySQL Database Service-specific system variable thread_pool_max_transactions_limit.
2621
2925
  """
2926
+ thread_pool_query_threads_per_group: NotRequired[pulumi.Input[int]]
2927
+ """
2928
+ The maximum number of query threads permitted in a thread group. The maximum value is 4096, but if thread_pool_max_transactions_limit is set, thread_pool_query_threads_per_group must not exceed that value. The default value of 1 means there is one active query thread in each thread group, which works well for many loads. When you are using the high concurrency thread pool algorithm (thread_pool_algorithm = 1), consider increasing the value if you experience slower response times due to long-running transactions.
2929
+
2930
+ threadPoolQueryThreadsPerGroup corresponds to the MySQL Server system variable [thread_pool_query_threads_per_group](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_query_threads_per_group)
2931
+ """
2932
+ thread_pool_size: NotRequired[pulumi.Input[int]]
2933
+ """
2934
+ The number of thread groups in the thread pool. This is the most important parameter controlling thread pool performance. It affects how many statements can execute simultaneously. If a value outside the range of permissible values is specified, the thread pool plugin does not load and the server writes a message to the error log.
2935
+
2936
+ threadPoolSize corresponds to the MySQL Server System variable [thread_pool_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_size).
2937
+ """
2938
+ thread_pool_transaction_delay: NotRequired[pulumi.Input[int]]
2939
+ """
2940
+ The delay period before executing a new transaction, in milliseconds. The maximum value is 300000 (5 minutes). A transaction delay can be used in cases where parallel transactions affect the performance of other operations due to resource contention. For example, if parallel transactions affect index creation or an online buffer pool resizing operation, you can configure a transaction delay to reduce resource contention while those operations are running.
2941
+
2942
+ threadPoolTransactionDelay corresponds to the MySQL Server system variable [thread_pool_transaction_delay](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_transaction_delay)
2943
+ """
2622
2944
  time_zone: NotRequired[pulumi.Input[str]]
2623
2945
  """
2624
2946
  Initializes the time zone for each client that connects.
@@ -2655,27 +2977,40 @@ elif False:
2655
2977
  @pulumi.input_type
2656
2978
  class MysqlConfigurationVariablesArgs:
2657
2979
  def __init__(__self__, *,
2980
+ auto_increment_increment: Optional[pulumi.Input[int]] = None,
2981
+ auto_increment_offset: Optional[pulumi.Input[int]] = None,
2658
2982
  autocommit: Optional[pulumi.Input[bool]] = None,
2659
2983
  big_tables: Optional[pulumi.Input[bool]] = None,
2660
2984
  binlog_expire_logs_seconds: Optional[pulumi.Input[int]] = None,
2985
+ binlog_group_commit_sync_delay: Optional[pulumi.Input[int]] = None,
2986
+ binlog_group_commit_sync_no_delay_count: Optional[pulumi.Input[int]] = None,
2661
2987
  binlog_row_metadata: Optional[pulumi.Input[str]] = None,
2662
2988
  binlog_row_value_options: Optional[pulumi.Input[str]] = None,
2663
2989
  binlog_transaction_compression: Optional[pulumi.Input[bool]] = None,
2990
+ block_encryption_mode: Optional[pulumi.Input[str]] = None,
2991
+ character_set_server: Optional[pulumi.Input[str]] = None,
2992
+ collation_server: Optional[pulumi.Input[str]] = None,
2664
2993
  completion_type: Optional[pulumi.Input[str]] = None,
2665
2994
  connect_timeout: Optional[pulumi.Input[int]] = None,
2666
2995
  connection_memory_chunk_size: Optional[pulumi.Input[int]] = None,
2667
2996
  connection_memory_limit: Optional[pulumi.Input[str]] = None,
2668
2997
  cte_max_recursion_depth: Optional[pulumi.Input[str]] = None,
2669
2998
  default_authentication_plugin: Optional[pulumi.Input[str]] = None,
2999
+ explain_format: Optional[pulumi.Input[str]] = None,
3000
+ explicit_defaults_for_timestamp: Optional[pulumi.Input[bool]] = None,
2670
3001
  foreign_key_checks: Optional[pulumi.Input[bool]] = None,
2671
3002
  generated_random_password_length: Optional[pulumi.Input[int]] = None,
2672
3003
  global_connection_memory_limit: Optional[pulumi.Input[str]] = None,
2673
3004
  global_connection_memory_tracking: Optional[pulumi.Input[bool]] = None,
3005
+ group_concat_max_len: Optional[pulumi.Input[str]] = None,
2674
3006
  group_replication_consistency: Optional[pulumi.Input[str]] = None,
2675
3007
  information_schema_stats_expiry: Optional[pulumi.Input[int]] = None,
3008
+ innodb_adaptive_hash_index: Optional[pulumi.Input[bool]] = None,
3009
+ innodb_autoinc_lock_mode: Optional[pulumi.Input[int]] = None,
2676
3010
  innodb_buffer_pool_dump_pct: Optional[pulumi.Input[int]] = None,
2677
3011
  innodb_buffer_pool_instances: Optional[pulumi.Input[int]] = None,
2678
3012
  innodb_buffer_pool_size: Optional[pulumi.Input[str]] = None,
3013
+ innodb_change_buffering: Optional[pulumi.Input[str]] = None,
2679
3014
  innodb_ddl_buffer_size: Optional[pulumi.Input[str]] = None,
2680
3015
  innodb_ddl_threads: Optional[pulumi.Input[int]] = None,
2681
3016
  innodb_ft_enable_stopword: Optional[pulumi.Input[bool]] = None,
@@ -2688,10 +3023,19 @@ class MysqlConfigurationVariablesArgs:
2688
3023
  innodb_log_writer_threads: Optional[pulumi.Input[bool]] = None,
2689
3024
  innodb_max_purge_lag: Optional[pulumi.Input[str]] = None,
2690
3025
  innodb_max_purge_lag_delay: Optional[pulumi.Input[int]] = None,
3026
+ innodb_numa_interleave: Optional[pulumi.Input[bool]] = None,
3027
+ innodb_online_alter_log_max_size: Optional[pulumi.Input[str]] = None,
3028
+ innodb_redo_log_capacity: Optional[pulumi.Input[str]] = None,
3029
+ innodb_rollback_on_timeout: Optional[pulumi.Input[bool]] = None,
3030
+ innodb_sort_buffer_size: Optional[pulumi.Input[int]] = None,
2691
3031
  innodb_stats_persistent_sample_pages: Optional[pulumi.Input[str]] = None,
2692
3032
  innodb_stats_transient_sample_pages: Optional[pulumi.Input[str]] = None,
3033
+ innodb_strict_mode: Optional[pulumi.Input[bool]] = None,
3034
+ innodb_undo_log_truncate: Optional[pulumi.Input[bool]] = None,
2693
3035
  interactive_timeout: Optional[pulumi.Input[int]] = None,
3036
+ join_buffer_size: Optional[pulumi.Input[str]] = None,
2694
3037
  local_infile: Optional[pulumi.Input[bool]] = None,
3038
+ long_query_time: Optional[pulumi.Input[int]] = None,
2695
3039
  mandatory_roles: Optional[pulumi.Input[str]] = None,
2696
3040
  max_allowed_packet: Optional[pulumi.Input[int]] = None,
2697
3041
  max_binlog_cache_size: Optional[pulumi.Input[str]] = None,
@@ -2700,6 +3044,8 @@ class MysqlConfigurationVariablesArgs:
2700
3044
  max_execution_time: Optional[pulumi.Input[str]] = None,
2701
3045
  max_heap_table_size: Optional[pulumi.Input[str]] = None,
2702
3046
  max_prepared_stmt_count: Optional[pulumi.Input[int]] = None,
3047
+ max_seeks_for_key: Optional[pulumi.Input[str]] = None,
3048
+ max_user_connections: Optional[pulumi.Input[str]] = None,
2703
3049
  mysql_firewall_mode: Optional[pulumi.Input[bool]] = None,
2704
3050
  mysql_zstd_default_compression_level: Optional[pulumi.Input[int]] = None,
2705
3051
  mysqlx_connect_timeout: Optional[pulumi.Input[int]] = None,
@@ -2720,29 +3066,65 @@ class MysqlConfigurationVariablesArgs:
2720
3066
  mysqlx_zstd_max_client_compression_level: Optional[pulumi.Input[int]] = None,
2721
3067
  net_read_timeout: Optional[pulumi.Input[int]] = None,
2722
3068
  net_write_timeout: Optional[pulumi.Input[int]] = None,
3069
+ optimizer_switch: Optional[pulumi.Input[str]] = None,
2723
3070
  parser_max_mem_size: Optional[pulumi.Input[str]] = None,
2724
3071
  query_alloc_block_size: Optional[pulumi.Input[str]] = None,
2725
3072
  query_prealloc_size: Optional[pulumi.Input[str]] = None,
3073
+ range_optimizer_max_mem_size: Optional[pulumi.Input[str]] = None,
2726
3074
  regexp_time_limit: Optional[pulumi.Input[int]] = None,
3075
+ relay_log_space_limit: Optional[pulumi.Input[str]] = None,
3076
+ replica_net_timeout: Optional[pulumi.Input[int]] = None,
3077
+ replica_parallel_workers: Optional[pulumi.Input[int]] = None,
3078
+ replica_type_conversions: Optional[pulumi.Input[str]] = None,
3079
+ require_secure_transport: Optional[pulumi.Input[bool]] = None,
3080
+ skip_name_resolve: Optional[pulumi.Input[bool]] = None,
2727
3081
  sort_buffer_size: Optional[pulumi.Input[str]] = None,
3082
+ sql_generate_invisible_primary_key: Optional[pulumi.Input[bool]] = None,
2728
3083
  sql_mode: Optional[pulumi.Input[str]] = None,
2729
3084
  sql_require_primary_key: Optional[pulumi.Input[bool]] = None,
2730
3085
  sql_warnings: Optional[pulumi.Input[bool]] = None,
3086
+ table_definition_cache: Optional[pulumi.Input[int]] = None,
3087
+ table_open_cache: Optional[pulumi.Input[int]] = None,
3088
+ temptable_max_ram: Optional[pulumi.Input[str]] = None,
2731
3089
  thread_pool_dedicated_listeners: Optional[pulumi.Input[bool]] = None,
2732
3090
  thread_pool_max_transactions_limit: Optional[pulumi.Input[int]] = None,
3091
+ thread_pool_query_threads_per_group: Optional[pulumi.Input[int]] = None,
3092
+ thread_pool_size: Optional[pulumi.Input[int]] = None,
3093
+ thread_pool_transaction_delay: Optional[pulumi.Input[int]] = None,
2733
3094
  time_zone: Optional[pulumi.Input[str]] = None,
2734
3095
  tmp_table_size: Optional[pulumi.Input[str]] = None,
2735
3096
  transaction_isolation: Optional[pulumi.Input[str]] = None,
2736
3097
  wait_timeout: Optional[pulumi.Input[int]] = None):
2737
3098
  """
3099
+ :param pulumi.Input[int] auto_increment_increment: auto_increment_increment and auto_increment_offset are intended for use with circular (source-to-source) replication, and can be used to control the operation of AUTO_INCREMENT columns. Both variables have global and session values, and each can assume an integer value between 1 and 65,535 inclusive.
3100
+
3101
+ autoIncrementIncrement corresponds to the MySQL Replication Source Options variable [auto_increment_increment] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_increment).
3102
+ :param pulumi.Input[int] auto_increment_offset: This variable has a default value of 1. If it is left with its default value, and Group Replication is started on the server in multi-primary mode, it is changed to the server ID.
3103
+
3104
+ autoIncrementOffset corresponds to the MySQL Replication Source Options variable [auto_increment_offset] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_offset).
2738
3105
  :param pulumi.Input[bool] autocommit: ("autocommit")
2739
3106
  :param pulumi.Input[bool] big_tables: If enabled, the server stores all temporary tables on disk rather than in memory.
2740
3107
 
2741
3108
  bigTables corresponds to the MySQL server variable [big_tables](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_big_tables).
2742
3109
  :param pulumi.Input[int] binlog_expire_logs_seconds: Sets the binary log expiration period in seconds. binlogExpireLogsSeconds corresponds to the MySQL binary logging system variable [binlog_expire_logs_seconds](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_expire_logs_seconds).
3110
+ :param pulumi.Input[int] binlog_group_commit_sync_delay: Controls how many microseconds the binary log commit waits before synchronizing the binary log file to disk. There is no delay by default. Setting this variable to a microsecond delay enables more transactions to be synchronized together to disk at once, reducing the overall time to commit a group of transactions because the larger groups required fewer time units per group.
3111
+
3112
+ binlogGroupCommitSyncDelay corresponds to the MySQL Replication system variable [binlog_group_commit_sync_delay](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_delay)
3113
+ :param pulumi.Input[int] binlog_group_commit_sync_no_delay_count: The maximum number of transactions to wait for before aborting the current delay as specified by binlog_group_commit_sync_delay. If binlog_group_commit_sync_delay is set to 0, then this option has no effect.
3114
+
3115
+ binlogGroupCommitSyncNoDelayCount corresponds to the MySQL Replication system variable [binlog_group_commit_sync_no_delay_count](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_no_delay_count)
2743
3116
  :param pulumi.Input[str] binlog_row_metadata: Configures the amount of table metadata added to the binary log when using row-based logging. binlogRowMetadata corresponds to the MySQL binary logging system variable [binlog_row_metadata](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_row_metadata).
2744
3117
  :param pulumi.Input[str] binlog_row_value_options: When set to PARTIAL_JSON, this enables use of a space-efficient binary log format for updates that modify only a small portion of a JSON document. binlogRowValueOptions corresponds to the MySQL binary logging system variable [binlog_row_value_options](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_row_value_options).
2745
3118
  :param pulumi.Input[bool] binlog_transaction_compression: Enables compression for transactions that are written to binary log files on this server. binlogTransactionCompression corresponds to the MySQL binary logging system variable [binlog_transaction_compression](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_transaction_compression).
3119
+ :param pulumi.Input[str] block_encryption_mode: This variable controls the block encryption mode for block-based algorithms such as AES. It affects encryption for AES_ENCRYPT() and AES_DECRYPT(). block_encryption_mode takes a value in aes-keylen-mode format, where keylen is the key length in bits and mode is the encryption mode. The value is not case-sensitive. Permitted keylen values are 128, 192, and 256. Permitted mode values are ECB, CBC, CFB1, CFB8, CFB128, and OFB.
3120
+
3121
+ block_encryption_mode corresponds to the MySQL Server Administration system variable [block_encryption_mode](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_block_encryption_mode)
3122
+ :param pulumi.Input[str] character_set_server: The server's default character set. If you set this variable, you should also set collation_server to specify the collation for the character set.
3123
+
3124
+ characterSetServer corresponds to the MySQL server variable [character_set_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_character_set_server).
3125
+ :param pulumi.Input[str] collation_server: The server's default collation.
3126
+
3127
+ collationServer corresponds to the MySQL server variable [collation_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_collation_server).
2746
3128
  :param pulumi.Input[str] completion_type: ("completion_type")
2747
3129
  :param pulumi.Input[int] connect_timeout: The number of seconds that the mysqld server waits for a connect packet before responding with Bad handshake.
2748
3130
 
@@ -2756,7 +3138,17 @@ class MysqlConfigurationVariablesArgs:
2756
3138
 
2757
3139
  connectionMemoryLimit corresponds to the MySQL system variable [connection_memory_limit](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_connection_memory_limit).
2758
3140
  :param pulumi.Input[str] cte_max_recursion_depth: ("cte_max_recursion_depth")
2759
- :param pulumi.Input[str] default_authentication_plugin: ("default_authentication_plugin")
3141
+ :param pulumi.Input[str] default_authentication_plugin: The default authentication plugin. This must be a plugin that uses internal credentials storage, so these values are permitted: mysql_native_password, sha256_password, caching_sha2_password.
3142
+
3143
+ As of MySQL 8.0.27, which introduces multifactor authentication, default_authentication_plugin is still used, but in conjunction with and at a lower precedence than the authentication_policy system variable. For details, see The Default Authentication Plugin. Because of this diminished role, default_authentication_plugin is deprecated as of MySQL 8.0.27 and subject to removal in a future MySQL version.
3144
+
3145
+ defaultAuthenticationPlugin corresponds to the MySQL system variable [default_authentication_plugin](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin).
3146
+ :param pulumi.Input[str] explain_format: This variable determines the default output format used by EXPLAIN in the absence of a FORMAT option when displaying a query execution plan.
3147
+
3148
+ explainFormat corresponds to the MySQL system variable [explain_format](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explain_format).
3149
+ :param pulumi.Input[bool] explicit_defaults_for_timestamp: This system variable determines whether the server enables certain nonstandard behaviors for default values and NULL-value handling in TIMESTAMP columns. By default, explicit_defaults_for_timestamp is enabled, which disables the nonstandard behaviors. Disabling explicit_defaults_for_timestamp results in a warning.
3150
+
3151
+ explicit_defaults_for_timestamp corresponds to the MySQL Server Administration system variable [explicit_defaults_for_timestamp](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explicit_defaults_for_timestamp)
2760
3152
  :param pulumi.Input[bool] foreign_key_checks: ("foreign_key_checks")
2761
3153
  :param pulumi.Input[int] generated_random_password_length: ("generated_random_password_length") DEPRECATED -- variable should not be settable and will be ignored
2762
3154
  :param pulumi.Input[str] global_connection_memory_limit: Set the total amount of memory that can be used by all user connections.
@@ -2765,12 +3157,21 @@ class MysqlConfigurationVariablesArgs:
2765
3157
  :param pulumi.Input[bool] global_connection_memory_tracking: Determines whether the MySQL server calculates Global_connection_memory.
2766
3158
 
2767
3159
  globalConnectionMemoryTracking corresponds to the MySQL system variable [global_connection_memory_tracking](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_global_connection_memory_tracking).
3160
+ :param pulumi.Input[str] group_concat_max_len: Specifies the maximum permitted result length in bytes for the GROUP_CONCAT() function.
3161
+
3162
+ This is the MySQL variable "group_concat_max_len". For more information, please see the [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_group_concat_max_len)
2768
3163
  :param pulumi.Input[str] group_replication_consistency: * EVENTUAL: Both RO and RW transactions do not wait for preceding transactions to be applied before executing. A RW transaction does not wait for other members to apply a transaction. This means that a transaction could be externalized on one member before the others. This also means that in the event of a primary failover, the new primary can accept new RO and RW transactions before the previous primary transactions are all applied. RO transactions could result in outdated values, RW transactions could result in a rollback due to conflicts.
2769
3164
  * BEFORE_ON_PRIMARY_FAILOVER: New RO or RW transactions with a newly elected primary that is applying backlog from the old primary are held (not applied) until any backlog has been applied. This ensures that when a primary failover happens, intentionally or not, clients always see the latest value on the primary. This guarantees consistency, but means that clients must be able to handle the delay in the event that a backlog is being applied. Usually this delay should be minimal, but does depend on the size of the backlog.
2770
3165
  * BEFORE: A RW transaction waits for all preceding transactions to complete before being applied. A RO transaction waits for all preceding transactions to complete before being executed. This ensures that this transaction reads the latest value by only affecting the latency of the transaction. This reduces the overhead of synchronization on every RW transaction, by ensuring synchronization is used only on RO transactions. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER.
2771
3166
  * AFTER: A RW transaction waits until its changes have been applied to all of the other members. This value has no effect on RO transactions. This mode ensures that when a transaction is committed on the local member, any subsequent transaction reads the written value or a more recent value on any group member. Use this mode with a group that is used for predominantly RO operations to ensure that applied RW transactions are applied everywhere once they commit. This could be used by your application to ensure that subsequent reads fetch the latest data which includes the latest writes. This reduces the overhead of synchronization on every RO transaction, by ensuring synchronization is used only on RW transactions. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER.
2772
3167
  * BEFORE_AND_AFTER: A RW transaction waits for 1) all preceding transactions to complete before being applied and 2) until its changes have been applied on other members. A RO transaction waits for all preceding transactions to complete before execution takes place. This consistency level also includes the consistency guarantees provided by BEFORE_ON_PRIMARY_FAILOVER.
2773
3168
  :param pulumi.Input[int] information_schema_stats_expiry: ("information_schema_stats_expiry")
3169
+ :param pulumi.Input[bool] innodb_adaptive_hash_index: Whether the InnoDB adaptive hash index is enabled or disabled. It may be desirable, depending on your workload, to dynamically enable or disable adaptive hash indexing to improve query performance. Because the adaptive hash index may not be useful for all workloads, conduct benchmarks with it both enabled and disabled, using realistic workloads.
3170
+
3171
+ innodbAdaptiveHashIndex corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_adaptive_hash_index] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_adaptive_hash_index).
3172
+ :param pulumi.Input[int] innodb_autoinc_lock_mode: The lock mode to use for generating auto-increment values. Permissible values are 0, 1, or 2, for traditional, consecutive, or interleaved, respectively.
3173
+
3174
+ innodbAutoincLockMode corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_autoinc_lock_mode] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_autoinc_lock_mode).
2774
3175
  :param pulumi.Input[int] innodb_buffer_pool_dump_pct: Specifies the percentage of the most recently used pages for each buffer pool to read out and dump.
2775
3176
 
2776
3177
  innodbBufferPoolDumpPct corresponds to the MySQL InnoDB system variable [innodb_buffer_pool_dump_pct](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_buffer_pool_dump_pct).
@@ -2784,6 +3185,9 @@ class MysqlConfigurationVariablesArgs:
2784
3185
  innodbBufferPoolSize corresponds to the MySQL server system variable [innodb_buffer_pool_size](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_buffer_pool_size).
2785
3186
 
2786
3187
  The default and maximum values depend on the amount of RAM provisioned by the shape. See [Default User Variables](https://www.terraform.io/mysql-database/doc/configuring-db-system.html#GUID-B5504C19-F6F4-4DAB-8506-189A4E8F4A6A).
3188
+ :param pulumi.Input[str] innodb_change_buffering: Whether InnoDB performs change buffering, an optimization that delays write operations to secondary indexes so that the I/O operations can be performed sequentially. Permitted values are described in the following table. Values may also be specified numerically.
3189
+
3190
+ innodbChangeBuffering corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_change_buffering] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_change_buffering).
2787
3191
  :param pulumi.Input[str] innodb_ddl_buffer_size: innodbDdlBufferSize corresponds to the MySQL system variable [innodb_ddl_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ddl_buffer_size)
2788
3192
  :param pulumi.Input[int] innodb_ddl_threads: innodbDdlThreads corresponds to the MySQL system variable [innodb_ddl_threads] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ddl_threads)
2789
3193
  :param pulumi.Input[bool] innodb_ft_enable_stopword: ("innodb_ft_enable_stopword")
@@ -2810,6 +3214,23 @@ class MysqlConfigurationVariablesArgs:
2810
3214
  The specified innodb_max_purge_lag_delay value is an upper limit on the delay period.
2811
3215
 
2812
3216
  innodbMaxPurgeLagDelay corresponds to the MySQL server system variable [innodb_max_purge_lag_delay](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_max_purge_lag_delay).
3217
+ :param pulumi.Input[bool] innodb_numa_interleave: Enables the NUMA interleave memory policy for allocation of the InnoDB buffer pool. When innodb_numa_interleave is enabled, the NUMA memory policy is set to MPOL_INTERLEAVE for the mysqld process. After the InnoDB buffer pool is allocated, the NUMA memory policy is set back to MPOL_DEFAULT. For the innodb_numa_interleave option to be available, MySQL must be compiled on a NUMA-enabled Linux system.
3218
+
3219
+ innodbNumaInterleave corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_numa_interleave] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_numa_interleave).
3220
+ :param pulumi.Input[str] innodb_online_alter_log_max_size: Specifies an upper limit in bytes on the size of the temporary log files used during online DDL operations for InnoDB tables. There is one such log file for each index being created or table being altered. This log file stores data inserted, updated, or deleted in the table during the DDL operation.
3221
+
3222
+ innodbOnlineAlterLogMaxSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_online_alter_log_max_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_online_alter_log_max_size).
3223
+ :param pulumi.Input[str] innodb_redo_log_capacity: Defines the amount of disk space occupied by redo log files. innodb_redo_log_capacity supercedes the innodb_log_files_in_group and innodb_log_file_size variables, which are both ignored if innodb_redo_log_capacity is defined. If innodb_redo_log_capacity is not defined, and if neither innodb_log_file_size or innodb_log_files_in_group are defined, then the default innodb_redo_log_capacity value is used.
3224
+
3225
+ innodbRedoLogCapacity corresponds to the InnoDB Startup Options and System Variables [innodb_redo_log_capacity](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_redo_log_capacity)
3226
+ :param pulumi.Input[bool] innodb_rollback_on_timeout: InnoDB rolls back only the last statement on a transaction timeout by default. If --innodb-rollback-on-timeout is specified, a transaction timeout causes InnoDB to abort and roll back the entire transaction.
3227
+
3228
+ innodbRollbackOnTimeout corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_rollback_on_timeout] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_rollback_on_timeout).
3229
+ :param pulumi.Input[int] innodb_sort_buffer_size: This variable defines:
3230
+ * The sort buffer size for online DDL operations that create or rebuild secondary indexes. However, as of MySQL 8.0.27, this responsibility is subsumed by the innodb_ddl_buffer_size variable.
3231
+ * The amount by which the temporary log file is extended when recording concurrent DML during an online DDL operation, and the size of the temporary log file read buffer and write buffer.
3232
+
3233
+ innodbSortBufferSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_sort_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_sort_buffer_size).
2813
3234
  :param pulumi.Input[str] innodb_stats_persistent_sample_pages: The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.
2814
3235
 
2815
3236
  innodbStatsPersistentSamplePages corresponds to the MySQL InnoDB system variable [innodb_stats_persistent_sample_pages](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_stats_persistent_sample_pages)
@@ -2822,10 +3243,24 @@ class MysqlConfigurationVariablesArgs:
2822
3243
  innodb_stats_transient_sample_pages only applies when innodb_stats_persistent is disabled for a table; when innodb_stats_persistent is enabled, innodb_stats_persistent_sample_pages applies instead.
2823
3244
 
2824
3245
  innodb_stats_persistent is ON by default and cannot be changed. It is possible to override it using the STATS_PERSISTENT clause of the [CREATE TABLE](https://dev.mysql.com/doc/refman/8.0/en/create-table.html) and [ALTER TABLE](https://dev.mysql.com/doc/refman/8.0/en/alter-table.html) statements.
3246
+ :param pulumi.Input[bool] innodb_strict_mode: When you enable innodbStrictMode, the InnoDB storage engine returns errors instead of warnings for invalid or incompatible table options.
3247
+
3248
+ innodbStrictMode corresponds to the MySQL InnoDB system variable [innodb_strict_mode](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_strict_mode)
3249
+ :param pulumi.Input[bool] innodb_undo_log_truncate: When enabled, undo tablespaces that exceed the threshold value defined by innodb_max_undo_log_size are marked for truncation. Only undo tablespaces can be truncated. Truncating undo logs that reside in the system tablespace is not supported. For truncation to occur, there must be at least two undo tablespaces.
3250
+
3251
+ innodbUndoLogTruncate corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_undo_log_truncate] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_undo_log_truncate).
2825
3252
  :param pulumi.Input[int] interactive_timeout: The number of seconds the server waits for activity on an interactive connection before closing it.
2826
3253
 
2827
3254
  interactiveTimeout corresponds to the MySQL system variable. [interactive_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_interactive_timeout)
2828
- :param pulumi.Input[bool] local_infile: ("local_infile")
3255
+ :param pulumi.Input[str] join_buffer_size: The minimum size of the buffer that is used for plain index scans, range index scans, and joins that do not use indexes and thus perform full table scans. In MySQL 8.0.18 and later, this variable also controls the amount of memory used for hash joins. Normally, the best way to get fast joins is to add indexes. Increase the value of join_buffer_size to get a faster full join when adding indexes is not possible. One join buffer is allocated for each full join between two tables. For a complex join between several tables for which indexes are not used, multiple join buffers might be necessary.
3256
+
3257
+ joinBufferSize corresponds to the MySQL Server System variable [join_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_join_buffer_size).
3258
+ :param pulumi.Input[bool] local_infile: This variable controls server-side LOCAL capability for LOAD DATA statements. Depending on the local_infile setting, the server refuses or permits local data loading by clients that have LOCAL enabled on the client side.
3259
+
3260
+ local_infile corresponds to the MySQL Server system variable [local_infile](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_local_infile)
3261
+ :param pulumi.Input[int] long_query_time: If a query takes longer than this many seconds, the server increments the Slow_queries status variable. If the slow query log is enabled, the query is logged to the slow query log file. This value is measured in real time, not CPU time, so a query that is under the threshold on a lightly loaded system might be above the threshold on a heavily loaded one.
3262
+
3263
+ longQueryTime corresponds to the MySQL Server System variable [long_query_time] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_long_query_time).
2829
3264
  :param pulumi.Input[str] mandatory_roles: ("mandatory_roles")
2830
3265
  :param pulumi.Input[int] max_allowed_packet: The maximum size of one packet or any generated/intermediate string.
2831
3266
 
@@ -2840,6 +3275,12 @@ class MysqlConfigurationVariablesArgs:
2840
3275
 
2841
3276
  maxHeapTableSize corresponds to the MySQL system variable [max_heap_table_size](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_heap_table_size)
2842
3277
  :param pulumi.Input[int] max_prepared_stmt_count: ("max_prepared_stmt_count")
3278
+ :param pulumi.Input[str] max_seeks_for_key: Limit the assumed maximum number of seeks when looking up rows based on a key. The MySQL optimizer assumes that no more than this number of key seeks are required when searching for matching rows in a table by scanning an index, regardless of the actual cardinality of the index (see Section 15.7.7.22, “SHOW INDEX Statement”). By setting this to a low value (say, 100), you can force MySQL to prefer indexes instead of table scans.
3279
+
3280
+ maxSeeksForKey corresponds to the MySQL Server System variable [max_seeks_for_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_seeks_for_key).
3281
+ :param pulumi.Input[str] max_user_connections: The maximum number of simultaneous connections permitted to any given MySQL user account. A value of 0 (the default) means “no limit.” This variable has a global value that can be set at server startup or runtime. It also has a read-only session value that indicates the effective simultaneous-connection limit that applies to the account associated with the current session.
3282
+
3283
+ maxUserConnections corresponds to the MySQL Server System variable [max_user_connections] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_user_connections).
2843
3284
  :param pulumi.Input[bool] mysql_firewall_mode: ("mysql_firewall_mode")
2844
3285
  :param pulumi.Input[int] mysql_zstd_default_compression_level: DEPRECATED -- typo of mysqlx_zstd_default_compression_level. variable will be ignored.
2845
3286
  :param pulumi.Input[int] mysqlx_connect_timeout: The number of seconds X Plugin waits for the first packet to be received from newly connected clients.
@@ -2876,18 +3317,67 @@ class MysqlConfigurationVariablesArgs:
2876
3317
  :param pulumi.Input[int] net_write_timeout: The number of seconds to wait for a block to be written to a connection before aborting the write.
2877
3318
 
2878
3319
  netWriteTimeout corresponds to the MySQL system variable [net_write_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_net_write_timeout)
3320
+ :param pulumi.Input[str] optimizer_switch: The optimizer_switch system variable enables control over optimizer behavior. The value of this variable is a set of flags, each of which has a value of on or off to indicate whether the corresponding optimizer behavior is enabled or disabled. This variable has global and session values and can be changed at runtime. The global default can be set at server startup.
3321
+
3322
+ Setting hypergraph_optimizer=on for cloud builds below 9.0.0 will fail.
3323
+
3324
+ optimizerSwitch corresponds to the MySQL Server System variable [optimizer_switch] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_optimizer_switch).
2879
3325
  :param pulumi.Input[str] parser_max_mem_size: ("parser_max_mem_size")
2880
3326
  :param pulumi.Input[str] query_alloc_block_size: ("query_alloc_block_size") DEPRECATED -- variable should not be settable and will be ignored
2881
3327
  :param pulumi.Input[str] query_prealloc_size: ("query_prealloc_size") DEPRECATED -- variable should not be settable and will be ignored
3328
+ :param pulumi.Input[str] range_optimizer_max_mem_size: The limit on memory consumption for the range optimizer. A value of 0 means “no limit.” If an execution plan considered by the optimizer uses the range access method but the optimizer estimates that the amount of memory needed for this method would exceed the limit, it abandons the plan and considers other plans.
3329
+
3330
+ rangeOptimizerMaxMemSize corresponds to the MySQL Server System variable [range_optimizer_max_mem_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_range_optimizer_max_mem_size).
2882
3331
  :param pulumi.Input[int] regexp_time_limit: regexpTimeLimit corresponds to the MySQL system variable [regexp_time_limit] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_regexp_time_limit)
3332
+ :param pulumi.Input[str] relay_log_space_limit: The maximum amount of space to use for all relay logs.
3333
+
3334
+ relayLogSpaceLimit corresponds to the MySQL Replica Server Options variable [relay_log_space_limit] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_relay_log_space_limit).
3335
+ :param pulumi.Input[int] replica_net_timeout: Specifies the number of seconds to wait for more data or a heartbeat signal from the source before the replica considers the connection broken, aborts the read, and tries to reconnect. Setting this variable has no immediate effect. The state of the variable applies on all subsequent START REPLICA commands.
3336
+
3337
+ replicaNetTimeout corresponds to the MySQL Replica server system variable [replica_net_timeout](https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_net_timeout)
3338
+ :param pulumi.Input[int] replica_parallel_workers: Beginning with MySQL 8.0.26, slave_parallel_workers is deprecated, and you should use replica_parallel_workers instead. (Prior to MySQL 8.0.26, you must use slave_parallel_workers to set the number of applier threads.)
3339
+
3340
+ replicaParallelWorkers corresponds to the MySQL Replica Server Options variable [replica_parallel_workers] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_parallel_workers).
3341
+ :param pulumi.Input[str] replica_type_conversions: From MySQL 8.0.26, use replica_type_conversions in place of slave_type_conversions, which is deprecated from that release. In releases before MySQL 8.0.26, use slave_type_conversions.
3342
+
3343
+ replica_type_conversions controls the type conversion mode in effect on the replica when using row-based replication. Its value is a comma-delimited set of zero or more elements from the list: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED. Set this variable to an empty string to disallow type conversions between the source and the replica. Setting this variable takes effect for all replication channels immediately, including running channels.
3344
+
3345
+ replica_type_conversions corresponds to the MySQL Replica Server Options variable [replica_type_conversions] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_type_conversions).
3346
+ :param pulumi.Input[bool] require_secure_transport: Whether client connections to the server are required to use some form of secure transport. When this variable is enabled, the server permits only TCP/IP connections encrypted using TLS/SSL, or connections that use a socket file or shared memory. The server rejects nonsecure connection attempts, which fail with an ER_SECURE_TRANSPORT_REQUIRED error.
3347
+
3348
+ require_secure_transport corresponds to the MySQL Server Administration system variable [require_secure_transport](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_require_secure_transport)
3349
+ :param pulumi.Input[bool] skip_name_resolve: Whether to resolve host names when checking client connections. If this variable is OFF, mysqld resolves host names when checking client connections. If it is ON, mysqld uses only IP numbers; in this case, all Host column values in the grant tables must be IP addresses. See Section 7.1.12.3, “DNS Lookups and the Host Cache”.
3350
+
3351
+ skipNameResolve corresponds to the MySQL Server System variable [skip_name_resolve] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_skip_name_resolve).
2883
3352
  :param pulumi.Input[str] sort_buffer_size: Each session that must perform a sort allocates a buffer of this size.
2884
3353
 
2885
3354
  sortBufferSize corresponds to the MySQL system variable [sort_buffer_size](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_sort_buffer_size)
3355
+ :param pulumi.Input[bool] sql_generate_invisible_primary_key: Whether GIPK mode is in effect, in which case a MySQL replication source server adds a generated invisible primary key to any InnoDB table that is created without one.
3356
+
3357
+ sqlGenerateInvisiblePrimaryKey corresponds to the MySQL system variable [sql_generate_invisible_primary_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_generate_invisible_primary_key).
2886
3358
  :param pulumi.Input[str] sql_mode: ("sql_mode")
2887
3359
  :param pulumi.Input[bool] sql_require_primary_key: ("sql_require_primary_key")
2888
3360
  :param pulumi.Input[bool] sql_warnings: ("sql_warnings")
3361
+ :param pulumi.Input[int] table_definition_cache: The number of table definitions that can be stored in the table definition cache. If you use a large number of tables, you can create a large table definition cache to speed up opening of tables. The table definition cache takes less space and does not use file descriptors, unlike the normal table cache.
3362
+
3363
+ table_definition_cache corresponds to the MySQL Server Administration system variable [table_definition_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_definition_cache)
3364
+ :param pulumi.Input[int] table_open_cache: The number of open tables for all threads. Increasing this value increases the number of file descriptors that mysqld requires.
3365
+
3366
+ table_open_cache corresponds to the MySQL Server Administration system variable [table_open_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache)
3367
+ :param pulumi.Input[str] temptable_max_ram: Defines the maximum amount of memory that can be occupied by the TempTable storage engine before it starts storing data on disk. The default value is 1073741824 bytes (1GiB). For more information, see Section 10.4.4, “Internal Temporary Table Use in MySQL”.
3368
+
3369
+ temptableMaxRam corresponds to the MySQL system variable [temptable_max_ram] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_temptable_max_ram).
2889
3370
  :param pulumi.Input[bool] thread_pool_dedicated_listeners: Controls whether the thread pool uses dedicated listener threads. If enabled, a listener thread in each thread group is dedicated to the task of listening for network events from clients, ensuring that the maximum number of query worker threads is no more than the value specified by threadPoolMaxTransactionsLimit. threadPoolDedicatedListeners corresponds to the MySQL Database Service-specific system variable thread_pool_dedicated_listeners.
2890
3371
  :param pulumi.Input[int] thread_pool_max_transactions_limit: Limits the maximum number of open transactions to the defined value. The default value is 0, which enforces no limit. threadPoolMaxTransactionsLimit corresponds to the MySQL Database Service-specific system variable thread_pool_max_transactions_limit.
3372
+ :param pulumi.Input[int] thread_pool_query_threads_per_group: The maximum number of query threads permitted in a thread group. The maximum value is 4096, but if thread_pool_max_transactions_limit is set, thread_pool_query_threads_per_group must not exceed that value. The default value of 1 means there is one active query thread in each thread group, which works well for many loads. When you are using the high concurrency thread pool algorithm (thread_pool_algorithm = 1), consider increasing the value if you experience slower response times due to long-running transactions.
3373
+
3374
+ threadPoolQueryThreadsPerGroup corresponds to the MySQL Server system variable [thread_pool_query_threads_per_group](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_query_threads_per_group)
3375
+ :param pulumi.Input[int] thread_pool_size: The number of thread groups in the thread pool. This is the most important parameter controlling thread pool performance. It affects how many statements can execute simultaneously. If a value outside the range of permissible values is specified, the thread pool plugin does not load and the server writes a message to the error log.
3376
+
3377
+ threadPoolSize corresponds to the MySQL Server System variable [thread_pool_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_size).
3378
+ :param pulumi.Input[int] thread_pool_transaction_delay: The delay period before executing a new transaction, in milliseconds. The maximum value is 300000 (5 minutes). A transaction delay can be used in cases where parallel transactions affect the performance of other operations due to resource contention. For example, if parallel transactions affect index creation or an online buffer pool resizing operation, you can configure a transaction delay to reduce resource contention while those operations are running.
3379
+
3380
+ threadPoolTransactionDelay corresponds to the MySQL Server system variable [thread_pool_transaction_delay](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_transaction_delay)
2891
3381
  :param pulumi.Input[str] time_zone: Initializes the time zone for each client that connects.
2892
3382
 
2893
3383
  This corresponds to the MySQL System Variable "time_zone".
@@ -2907,18 +3397,32 @@ class MysqlConfigurationVariablesArgs:
2907
3397
  ** IMPORTANT **
2908
3398
  Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
2909
3399
  """
3400
+ if auto_increment_increment is not None:
3401
+ pulumi.set(__self__, "auto_increment_increment", auto_increment_increment)
3402
+ if auto_increment_offset is not None:
3403
+ pulumi.set(__self__, "auto_increment_offset", auto_increment_offset)
2910
3404
  if autocommit is not None:
2911
3405
  pulumi.set(__self__, "autocommit", autocommit)
2912
3406
  if big_tables is not None:
2913
3407
  pulumi.set(__self__, "big_tables", big_tables)
2914
3408
  if binlog_expire_logs_seconds is not None:
2915
3409
  pulumi.set(__self__, "binlog_expire_logs_seconds", binlog_expire_logs_seconds)
3410
+ if binlog_group_commit_sync_delay is not None:
3411
+ pulumi.set(__self__, "binlog_group_commit_sync_delay", binlog_group_commit_sync_delay)
3412
+ if binlog_group_commit_sync_no_delay_count is not None:
3413
+ pulumi.set(__self__, "binlog_group_commit_sync_no_delay_count", binlog_group_commit_sync_no_delay_count)
2916
3414
  if binlog_row_metadata is not None:
2917
3415
  pulumi.set(__self__, "binlog_row_metadata", binlog_row_metadata)
2918
3416
  if binlog_row_value_options is not None:
2919
3417
  pulumi.set(__self__, "binlog_row_value_options", binlog_row_value_options)
2920
3418
  if binlog_transaction_compression is not None:
2921
3419
  pulumi.set(__self__, "binlog_transaction_compression", binlog_transaction_compression)
3420
+ if block_encryption_mode is not None:
3421
+ pulumi.set(__self__, "block_encryption_mode", block_encryption_mode)
3422
+ if character_set_server is not None:
3423
+ pulumi.set(__self__, "character_set_server", character_set_server)
3424
+ if collation_server is not None:
3425
+ pulumi.set(__self__, "collation_server", collation_server)
2922
3426
  if completion_type is not None:
2923
3427
  pulumi.set(__self__, "completion_type", completion_type)
2924
3428
  if connect_timeout is not None:
@@ -2931,6 +3435,10 @@ class MysqlConfigurationVariablesArgs:
2931
3435
  pulumi.set(__self__, "cte_max_recursion_depth", cte_max_recursion_depth)
2932
3436
  if default_authentication_plugin is not None:
2933
3437
  pulumi.set(__self__, "default_authentication_plugin", default_authentication_plugin)
3438
+ if explain_format is not None:
3439
+ pulumi.set(__self__, "explain_format", explain_format)
3440
+ if explicit_defaults_for_timestamp is not None:
3441
+ pulumi.set(__self__, "explicit_defaults_for_timestamp", explicit_defaults_for_timestamp)
2934
3442
  if foreign_key_checks is not None:
2935
3443
  pulumi.set(__self__, "foreign_key_checks", foreign_key_checks)
2936
3444
  if generated_random_password_length is not None:
@@ -2942,16 +3450,24 @@ class MysqlConfigurationVariablesArgs:
2942
3450
  pulumi.set(__self__, "global_connection_memory_limit", global_connection_memory_limit)
2943
3451
  if global_connection_memory_tracking is not None:
2944
3452
  pulumi.set(__self__, "global_connection_memory_tracking", global_connection_memory_tracking)
3453
+ if group_concat_max_len is not None:
3454
+ pulumi.set(__self__, "group_concat_max_len", group_concat_max_len)
2945
3455
  if group_replication_consistency is not None:
2946
3456
  pulumi.set(__self__, "group_replication_consistency", group_replication_consistency)
2947
3457
  if information_schema_stats_expiry is not None:
2948
3458
  pulumi.set(__self__, "information_schema_stats_expiry", information_schema_stats_expiry)
3459
+ if innodb_adaptive_hash_index is not None:
3460
+ pulumi.set(__self__, "innodb_adaptive_hash_index", innodb_adaptive_hash_index)
3461
+ if innodb_autoinc_lock_mode is not None:
3462
+ pulumi.set(__self__, "innodb_autoinc_lock_mode", innodb_autoinc_lock_mode)
2949
3463
  if innodb_buffer_pool_dump_pct is not None:
2950
3464
  pulumi.set(__self__, "innodb_buffer_pool_dump_pct", innodb_buffer_pool_dump_pct)
2951
3465
  if innodb_buffer_pool_instances is not None:
2952
3466
  pulumi.set(__self__, "innodb_buffer_pool_instances", innodb_buffer_pool_instances)
2953
3467
  if innodb_buffer_pool_size is not None:
2954
3468
  pulumi.set(__self__, "innodb_buffer_pool_size", innodb_buffer_pool_size)
3469
+ if innodb_change_buffering is not None:
3470
+ pulumi.set(__self__, "innodb_change_buffering", innodb_change_buffering)
2955
3471
  if innodb_ddl_buffer_size is not None:
2956
3472
  pulumi.set(__self__, "innodb_ddl_buffer_size", innodb_ddl_buffer_size)
2957
3473
  if innodb_ddl_threads is not None:
@@ -2976,14 +3492,32 @@ class MysqlConfigurationVariablesArgs:
2976
3492
  pulumi.set(__self__, "innodb_max_purge_lag", innodb_max_purge_lag)
2977
3493
  if innodb_max_purge_lag_delay is not None:
2978
3494
  pulumi.set(__self__, "innodb_max_purge_lag_delay", innodb_max_purge_lag_delay)
3495
+ if innodb_numa_interleave is not None:
3496
+ pulumi.set(__self__, "innodb_numa_interleave", innodb_numa_interleave)
3497
+ if innodb_online_alter_log_max_size is not None:
3498
+ pulumi.set(__self__, "innodb_online_alter_log_max_size", innodb_online_alter_log_max_size)
3499
+ if innodb_redo_log_capacity is not None:
3500
+ pulumi.set(__self__, "innodb_redo_log_capacity", innodb_redo_log_capacity)
3501
+ if innodb_rollback_on_timeout is not None:
3502
+ pulumi.set(__self__, "innodb_rollback_on_timeout", innodb_rollback_on_timeout)
3503
+ if innodb_sort_buffer_size is not None:
3504
+ pulumi.set(__self__, "innodb_sort_buffer_size", innodb_sort_buffer_size)
2979
3505
  if innodb_stats_persistent_sample_pages is not None:
2980
3506
  pulumi.set(__self__, "innodb_stats_persistent_sample_pages", innodb_stats_persistent_sample_pages)
2981
3507
  if innodb_stats_transient_sample_pages is not None:
2982
3508
  pulumi.set(__self__, "innodb_stats_transient_sample_pages", innodb_stats_transient_sample_pages)
3509
+ if innodb_strict_mode is not None:
3510
+ pulumi.set(__self__, "innodb_strict_mode", innodb_strict_mode)
3511
+ if innodb_undo_log_truncate is not None:
3512
+ pulumi.set(__self__, "innodb_undo_log_truncate", innodb_undo_log_truncate)
2983
3513
  if interactive_timeout is not None:
2984
3514
  pulumi.set(__self__, "interactive_timeout", interactive_timeout)
3515
+ if join_buffer_size is not None:
3516
+ pulumi.set(__self__, "join_buffer_size", join_buffer_size)
2985
3517
  if local_infile is not None:
2986
3518
  pulumi.set(__self__, "local_infile", local_infile)
3519
+ if long_query_time is not None:
3520
+ pulumi.set(__self__, "long_query_time", long_query_time)
2987
3521
  if mandatory_roles is not None:
2988
3522
  pulumi.set(__self__, "mandatory_roles", mandatory_roles)
2989
3523
  if max_allowed_packet is not None:
@@ -3000,6 +3534,10 @@ class MysqlConfigurationVariablesArgs:
3000
3534
  pulumi.set(__self__, "max_heap_table_size", max_heap_table_size)
3001
3535
  if max_prepared_stmt_count is not None:
3002
3536
  pulumi.set(__self__, "max_prepared_stmt_count", max_prepared_stmt_count)
3537
+ if max_seeks_for_key is not None:
3538
+ pulumi.set(__self__, "max_seeks_for_key", max_seeks_for_key)
3539
+ if max_user_connections is not None:
3540
+ pulumi.set(__self__, "max_user_connections", max_user_connections)
3003
3541
  if mysql_firewall_mode is not None:
3004
3542
  pulumi.set(__self__, "mysql_firewall_mode", mysql_firewall_mode)
3005
3543
  if mysql_zstd_default_compression_level is not None:
@@ -3052,6 +3590,8 @@ class MysqlConfigurationVariablesArgs:
3052
3590
  pulumi.set(__self__, "net_read_timeout", net_read_timeout)
3053
3591
  if net_write_timeout is not None:
3054
3592
  pulumi.set(__self__, "net_write_timeout", net_write_timeout)
3593
+ if optimizer_switch is not None:
3594
+ pulumi.set(__self__, "optimizer_switch", optimizer_switch)
3055
3595
  if parser_max_mem_size is not None:
3056
3596
  pulumi.set(__self__, "parser_max_mem_size", parser_max_mem_size)
3057
3597
  if query_alloc_block_size is not None:
@@ -3059,25 +3599,53 @@ class MysqlConfigurationVariablesArgs:
3059
3599
  pulumi.log.warn("""query_alloc_block_size is deprecated: The 'query_alloc_block_size' field has been deprecated and may be removed in a future version. Do not use this field.""")
3060
3600
  if query_alloc_block_size is not None:
3061
3601
  pulumi.set(__self__, "query_alloc_block_size", query_alloc_block_size)
3062
- if query_prealloc_size is not None:
3063
- warnings.warn("""The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""", DeprecationWarning)
3064
- pulumi.log.warn("""query_prealloc_size is deprecated: The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""")
3065
3602
  if query_prealloc_size is not None:
3066
3603
  pulumi.set(__self__, "query_prealloc_size", query_prealloc_size)
3604
+ if range_optimizer_max_mem_size is not None:
3605
+ warnings.warn("""The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""", DeprecationWarning)
3606
+ pulumi.log.warn("""range_optimizer_max_mem_size is deprecated: The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""")
3607
+ if range_optimizer_max_mem_size is not None:
3608
+ pulumi.set(__self__, "range_optimizer_max_mem_size", range_optimizer_max_mem_size)
3067
3609
  if regexp_time_limit is not None:
3068
3610
  pulumi.set(__self__, "regexp_time_limit", regexp_time_limit)
3611
+ if relay_log_space_limit is not None:
3612
+ pulumi.set(__self__, "relay_log_space_limit", relay_log_space_limit)
3613
+ if replica_net_timeout is not None:
3614
+ pulumi.set(__self__, "replica_net_timeout", replica_net_timeout)
3615
+ if replica_parallel_workers is not None:
3616
+ pulumi.set(__self__, "replica_parallel_workers", replica_parallel_workers)
3617
+ if replica_type_conversions is not None:
3618
+ pulumi.set(__self__, "replica_type_conversions", replica_type_conversions)
3619
+ if require_secure_transport is not None:
3620
+ pulumi.set(__self__, "require_secure_transport", require_secure_transport)
3621
+ if skip_name_resolve is not None:
3622
+ pulumi.set(__self__, "skip_name_resolve", skip_name_resolve)
3069
3623
  if sort_buffer_size is not None:
3070
3624
  pulumi.set(__self__, "sort_buffer_size", sort_buffer_size)
3625
+ if sql_generate_invisible_primary_key is not None:
3626
+ pulumi.set(__self__, "sql_generate_invisible_primary_key", sql_generate_invisible_primary_key)
3071
3627
  if sql_mode is not None:
3072
3628
  pulumi.set(__self__, "sql_mode", sql_mode)
3073
3629
  if sql_require_primary_key is not None:
3074
3630
  pulumi.set(__self__, "sql_require_primary_key", sql_require_primary_key)
3075
3631
  if sql_warnings is not None:
3076
3632
  pulumi.set(__self__, "sql_warnings", sql_warnings)
3633
+ if table_definition_cache is not None:
3634
+ pulumi.set(__self__, "table_definition_cache", table_definition_cache)
3635
+ if table_open_cache is not None:
3636
+ pulumi.set(__self__, "table_open_cache", table_open_cache)
3637
+ if temptable_max_ram is not None:
3638
+ pulumi.set(__self__, "temptable_max_ram", temptable_max_ram)
3077
3639
  if thread_pool_dedicated_listeners is not None:
3078
3640
  pulumi.set(__self__, "thread_pool_dedicated_listeners", thread_pool_dedicated_listeners)
3079
3641
  if thread_pool_max_transactions_limit is not None:
3080
3642
  pulumi.set(__self__, "thread_pool_max_transactions_limit", thread_pool_max_transactions_limit)
3643
+ if thread_pool_query_threads_per_group is not None:
3644
+ pulumi.set(__self__, "thread_pool_query_threads_per_group", thread_pool_query_threads_per_group)
3645
+ if thread_pool_size is not None:
3646
+ pulumi.set(__self__, "thread_pool_size", thread_pool_size)
3647
+ if thread_pool_transaction_delay is not None:
3648
+ pulumi.set(__self__, "thread_pool_transaction_delay", thread_pool_transaction_delay)
3081
3649
  if time_zone is not None:
3082
3650
  pulumi.set(__self__, "time_zone", time_zone)
3083
3651
  if tmp_table_size is not None:
@@ -3087,6 +3655,34 @@ class MysqlConfigurationVariablesArgs:
3087
3655
  if wait_timeout is not None:
3088
3656
  pulumi.set(__self__, "wait_timeout", wait_timeout)
3089
3657
 
3658
+ @property
3659
+ @pulumi.getter(name="autoIncrementIncrement")
3660
+ def auto_increment_increment(self) -> Optional[pulumi.Input[int]]:
3661
+ """
3662
+ auto_increment_increment and auto_increment_offset are intended for use with circular (source-to-source) replication, and can be used to control the operation of AUTO_INCREMENT columns. Both variables have global and session values, and each can assume an integer value between 1 and 65,535 inclusive.
3663
+
3664
+ autoIncrementIncrement corresponds to the MySQL Replication Source Options variable [auto_increment_increment] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_increment).
3665
+ """
3666
+ return pulumi.get(self, "auto_increment_increment")
3667
+
3668
+ @auto_increment_increment.setter
3669
+ def auto_increment_increment(self, value: Optional[pulumi.Input[int]]):
3670
+ pulumi.set(self, "auto_increment_increment", value)
3671
+
3672
+ @property
3673
+ @pulumi.getter(name="autoIncrementOffset")
3674
+ def auto_increment_offset(self) -> Optional[pulumi.Input[int]]:
3675
+ """
3676
+ This variable has a default value of 1. If it is left with its default value, and Group Replication is started on the server in multi-primary mode, it is changed to the server ID.
3677
+
3678
+ autoIncrementOffset corresponds to the MySQL Replication Source Options variable [auto_increment_offset] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-source.html#sysvar_auto_increment_offset).
3679
+ """
3680
+ return pulumi.get(self, "auto_increment_offset")
3681
+
3682
+ @auto_increment_offset.setter
3683
+ def auto_increment_offset(self, value: Optional[pulumi.Input[int]]):
3684
+ pulumi.set(self, "auto_increment_offset", value)
3685
+
3090
3686
  @property
3091
3687
  @pulumi.getter
3092
3688
  def autocommit(self) -> Optional[pulumi.Input[bool]]:
@@ -3125,6 +3721,34 @@ class MysqlConfigurationVariablesArgs:
3125
3721
  def binlog_expire_logs_seconds(self, value: Optional[pulumi.Input[int]]):
3126
3722
  pulumi.set(self, "binlog_expire_logs_seconds", value)
3127
3723
 
3724
+ @property
3725
+ @pulumi.getter(name="binlogGroupCommitSyncDelay")
3726
+ def binlog_group_commit_sync_delay(self) -> Optional[pulumi.Input[int]]:
3727
+ """
3728
+ Controls how many microseconds the binary log commit waits before synchronizing the binary log file to disk. There is no delay by default. Setting this variable to a microsecond delay enables more transactions to be synchronized together to disk at once, reducing the overall time to commit a group of transactions because the larger groups required fewer time units per group.
3729
+
3730
+ binlogGroupCommitSyncDelay corresponds to the MySQL Replication system variable [binlog_group_commit_sync_delay](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_delay)
3731
+ """
3732
+ return pulumi.get(self, "binlog_group_commit_sync_delay")
3733
+
3734
+ @binlog_group_commit_sync_delay.setter
3735
+ def binlog_group_commit_sync_delay(self, value: Optional[pulumi.Input[int]]):
3736
+ pulumi.set(self, "binlog_group_commit_sync_delay", value)
3737
+
3738
+ @property
3739
+ @pulumi.getter(name="binlogGroupCommitSyncNoDelayCount")
3740
+ def binlog_group_commit_sync_no_delay_count(self) -> Optional[pulumi.Input[int]]:
3741
+ """
3742
+ The maximum number of transactions to wait for before aborting the current delay as specified by binlog_group_commit_sync_delay. If binlog_group_commit_sync_delay is set to 0, then this option has no effect.
3743
+
3744
+ binlogGroupCommitSyncNoDelayCount corresponds to the MySQL Replication system variable [binlog_group_commit_sync_no_delay_count](https://dev.mysql.com/doc/refman/5.7/en/replication-options-binary-log.html#sysvar_binlog_group_commit_sync_no_delay_count)
3745
+ """
3746
+ return pulumi.get(self, "binlog_group_commit_sync_no_delay_count")
3747
+
3748
+ @binlog_group_commit_sync_no_delay_count.setter
3749
+ def binlog_group_commit_sync_no_delay_count(self, value: Optional[pulumi.Input[int]]):
3750
+ pulumi.set(self, "binlog_group_commit_sync_no_delay_count", value)
3751
+
3128
3752
  @property
3129
3753
  @pulumi.getter(name="binlogRowMetadata")
3130
3754
  def binlog_row_metadata(self) -> Optional[pulumi.Input[str]]:
@@ -3161,6 +3785,48 @@ class MysqlConfigurationVariablesArgs:
3161
3785
  def binlog_transaction_compression(self, value: Optional[pulumi.Input[bool]]):
3162
3786
  pulumi.set(self, "binlog_transaction_compression", value)
3163
3787
 
3788
+ @property
3789
+ @pulumi.getter(name="blockEncryptionMode")
3790
+ def block_encryption_mode(self) -> Optional[pulumi.Input[str]]:
3791
+ """
3792
+ This variable controls the block encryption mode for block-based algorithms such as AES. It affects encryption for AES_ENCRYPT() and AES_DECRYPT(). block_encryption_mode takes a value in aes-keylen-mode format, where keylen is the key length in bits and mode is the encryption mode. The value is not case-sensitive. Permitted keylen values are 128, 192, and 256. Permitted mode values are ECB, CBC, CFB1, CFB8, CFB128, and OFB.
3793
+
3794
+ block_encryption_mode corresponds to the MySQL Server Administration system variable [block_encryption_mode](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_block_encryption_mode)
3795
+ """
3796
+ return pulumi.get(self, "block_encryption_mode")
3797
+
3798
+ @block_encryption_mode.setter
3799
+ def block_encryption_mode(self, value: Optional[pulumi.Input[str]]):
3800
+ pulumi.set(self, "block_encryption_mode", value)
3801
+
3802
+ @property
3803
+ @pulumi.getter(name="characterSetServer")
3804
+ def character_set_server(self) -> Optional[pulumi.Input[str]]:
3805
+ """
3806
+ The server's default character set. If you set this variable, you should also set collation_server to specify the collation for the character set.
3807
+
3808
+ characterSetServer corresponds to the MySQL server variable [character_set_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_character_set_server).
3809
+ """
3810
+ return pulumi.get(self, "character_set_server")
3811
+
3812
+ @character_set_server.setter
3813
+ def character_set_server(self, value: Optional[pulumi.Input[str]]):
3814
+ pulumi.set(self, "character_set_server", value)
3815
+
3816
+ @property
3817
+ @pulumi.getter(name="collationServer")
3818
+ def collation_server(self) -> Optional[pulumi.Input[str]]:
3819
+ """
3820
+ The server's default collation.
3821
+
3822
+ collationServer corresponds to the MySQL server variable [collation_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_collation_server).
3823
+ """
3824
+ return pulumi.get(self, "collation_server")
3825
+
3826
+ @collation_server.setter
3827
+ def collation_server(self, value: Optional[pulumi.Input[str]]):
3828
+ pulumi.set(self, "collation_server", value)
3829
+
3164
3830
  @property
3165
3831
  @pulumi.getter(name="completionType")
3166
3832
  def completion_type(self) -> Optional[pulumi.Input[str]]:
@@ -3233,7 +3899,11 @@ class MysqlConfigurationVariablesArgs:
3233
3899
  @pulumi.getter(name="defaultAuthenticationPlugin")
3234
3900
  def default_authentication_plugin(self) -> Optional[pulumi.Input[str]]:
3235
3901
  """
3236
- ("default_authentication_plugin")
3902
+ The default authentication plugin. This must be a plugin that uses internal credentials storage, so these values are permitted: mysql_native_password, sha256_password, caching_sha2_password.
3903
+
3904
+ As of MySQL 8.0.27, which introduces multifactor authentication, default_authentication_plugin is still used, but in conjunction with and at a lower precedence than the authentication_policy system variable. For details, see The Default Authentication Plugin. Because of this diminished role, default_authentication_plugin is deprecated as of MySQL 8.0.27 and subject to removal in a future MySQL version.
3905
+
3906
+ defaultAuthenticationPlugin corresponds to the MySQL system variable [default_authentication_plugin](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin).
3237
3907
  """
3238
3908
  return pulumi.get(self, "default_authentication_plugin")
3239
3909
 
@@ -3241,6 +3911,34 @@ class MysqlConfigurationVariablesArgs:
3241
3911
  def default_authentication_plugin(self, value: Optional[pulumi.Input[str]]):
3242
3912
  pulumi.set(self, "default_authentication_plugin", value)
3243
3913
 
3914
+ @property
3915
+ @pulumi.getter(name="explainFormat")
3916
+ def explain_format(self) -> Optional[pulumi.Input[str]]:
3917
+ """
3918
+ This variable determines the default output format used by EXPLAIN in the absence of a FORMAT option when displaying a query execution plan.
3919
+
3920
+ explainFormat corresponds to the MySQL system variable [explain_format](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explain_format).
3921
+ """
3922
+ return pulumi.get(self, "explain_format")
3923
+
3924
+ @explain_format.setter
3925
+ def explain_format(self, value: Optional[pulumi.Input[str]]):
3926
+ pulumi.set(self, "explain_format", value)
3927
+
3928
+ @property
3929
+ @pulumi.getter(name="explicitDefaultsForTimestamp")
3930
+ def explicit_defaults_for_timestamp(self) -> Optional[pulumi.Input[bool]]:
3931
+ """
3932
+ This system variable determines whether the server enables certain nonstandard behaviors for default values and NULL-value handling in TIMESTAMP columns. By default, explicit_defaults_for_timestamp is enabled, which disables the nonstandard behaviors. Disabling explicit_defaults_for_timestamp results in a warning.
3933
+
3934
+ explicit_defaults_for_timestamp corresponds to the MySQL Server Administration system variable [explicit_defaults_for_timestamp](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_explicit_defaults_for_timestamp)
3935
+ """
3936
+ return pulumi.get(self, "explicit_defaults_for_timestamp")
3937
+
3938
+ @explicit_defaults_for_timestamp.setter
3939
+ def explicit_defaults_for_timestamp(self, value: Optional[pulumi.Input[bool]]):
3940
+ pulumi.set(self, "explicit_defaults_for_timestamp", value)
3941
+
3244
3942
  @property
3245
3943
  @pulumi.getter(name="foreignKeyChecks")
3246
3944
  def foreign_key_checks(self) -> Optional[pulumi.Input[bool]]:
@@ -3294,6 +3992,20 @@ class MysqlConfigurationVariablesArgs:
3294
3992
  def global_connection_memory_tracking(self, value: Optional[pulumi.Input[bool]]):
3295
3993
  pulumi.set(self, "global_connection_memory_tracking", value)
3296
3994
 
3995
+ @property
3996
+ @pulumi.getter(name="groupConcatMaxLen")
3997
+ def group_concat_max_len(self) -> Optional[pulumi.Input[str]]:
3998
+ """
3999
+ Specifies the maximum permitted result length in bytes for the GROUP_CONCAT() function.
4000
+
4001
+ This is the MySQL variable "group_concat_max_len". For more information, please see the [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_group_concat_max_len)
4002
+ """
4003
+ return pulumi.get(self, "group_concat_max_len")
4004
+
4005
+ @group_concat_max_len.setter
4006
+ def group_concat_max_len(self, value: Optional[pulumi.Input[str]]):
4007
+ pulumi.set(self, "group_concat_max_len", value)
4008
+
3297
4009
  @property
3298
4010
  @pulumi.getter(name="groupReplicationConsistency")
3299
4011
  def group_replication_consistency(self) -> Optional[pulumi.Input[str]]:
@@ -3322,6 +4034,34 @@ class MysqlConfigurationVariablesArgs:
3322
4034
  def information_schema_stats_expiry(self, value: Optional[pulumi.Input[int]]):
3323
4035
  pulumi.set(self, "information_schema_stats_expiry", value)
3324
4036
 
4037
+ @property
4038
+ @pulumi.getter(name="innodbAdaptiveHashIndex")
4039
+ def innodb_adaptive_hash_index(self) -> Optional[pulumi.Input[bool]]:
4040
+ """
4041
+ Whether the InnoDB adaptive hash index is enabled or disabled. It may be desirable, depending on your workload, to dynamically enable or disable adaptive hash indexing to improve query performance. Because the adaptive hash index may not be useful for all workloads, conduct benchmarks with it both enabled and disabled, using realistic workloads.
4042
+
4043
+ innodbAdaptiveHashIndex corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_adaptive_hash_index] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_adaptive_hash_index).
4044
+ """
4045
+ return pulumi.get(self, "innodb_adaptive_hash_index")
4046
+
4047
+ @innodb_adaptive_hash_index.setter
4048
+ def innodb_adaptive_hash_index(self, value: Optional[pulumi.Input[bool]]):
4049
+ pulumi.set(self, "innodb_adaptive_hash_index", value)
4050
+
4051
+ @property
4052
+ @pulumi.getter(name="innodbAutoincLockMode")
4053
+ def innodb_autoinc_lock_mode(self) -> Optional[pulumi.Input[int]]:
4054
+ """
4055
+ The lock mode to use for generating auto-increment values. Permissible values are 0, 1, or 2, for traditional, consecutive, or interleaved, respectively.
4056
+
4057
+ innodbAutoincLockMode corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_autoinc_lock_mode] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_autoinc_lock_mode).
4058
+ """
4059
+ return pulumi.get(self, "innodb_autoinc_lock_mode")
4060
+
4061
+ @innodb_autoinc_lock_mode.setter
4062
+ def innodb_autoinc_lock_mode(self, value: Optional[pulumi.Input[int]]):
4063
+ pulumi.set(self, "innodb_autoinc_lock_mode", value)
4064
+
3325
4065
  @property
3326
4066
  @pulumi.getter(name="innodbBufferPoolDumpPct")
3327
4067
  def innodb_buffer_pool_dump_pct(self) -> Optional[pulumi.Input[int]]:
@@ -3368,6 +4108,20 @@ class MysqlConfigurationVariablesArgs:
3368
4108
  def innodb_buffer_pool_size(self, value: Optional[pulumi.Input[str]]):
3369
4109
  pulumi.set(self, "innodb_buffer_pool_size", value)
3370
4110
 
4111
+ @property
4112
+ @pulumi.getter(name="innodbChangeBuffering")
4113
+ def innodb_change_buffering(self) -> Optional[pulumi.Input[str]]:
4114
+ """
4115
+ Whether InnoDB performs change buffering, an optimization that delays write operations to secondary indexes so that the I/O operations can be performed sequentially. Permitted values are described in the following table. Values may also be specified numerically.
4116
+
4117
+ innodbChangeBuffering corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_change_buffering] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_change_buffering).
4118
+ """
4119
+ return pulumi.get(self, "innodb_change_buffering")
4120
+
4121
+ @innodb_change_buffering.setter
4122
+ def innodb_change_buffering(self, value: Optional[pulumi.Input[str]]):
4123
+ pulumi.set(self, "innodb_change_buffering", value)
4124
+
3371
4125
  @property
3372
4126
  @pulumi.getter(name="innodbDdlBufferSize")
3373
4127
  def innodb_ddl_buffer_size(self) -> Optional[pulumi.Input[str]]:
@@ -3526,6 +4280,78 @@ class MysqlConfigurationVariablesArgs:
3526
4280
  def innodb_max_purge_lag_delay(self, value: Optional[pulumi.Input[int]]):
3527
4281
  pulumi.set(self, "innodb_max_purge_lag_delay", value)
3528
4282
 
4283
+ @property
4284
+ @pulumi.getter(name="innodbNumaInterleave")
4285
+ def innodb_numa_interleave(self) -> Optional[pulumi.Input[bool]]:
4286
+ """
4287
+ Enables the NUMA interleave memory policy for allocation of the InnoDB buffer pool. When innodb_numa_interleave is enabled, the NUMA memory policy is set to MPOL_INTERLEAVE for the mysqld process. After the InnoDB buffer pool is allocated, the NUMA memory policy is set back to MPOL_DEFAULT. For the innodb_numa_interleave option to be available, MySQL must be compiled on a NUMA-enabled Linux system.
4288
+
4289
+ innodbNumaInterleave corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_numa_interleave] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_numa_interleave).
4290
+ """
4291
+ return pulumi.get(self, "innodb_numa_interleave")
4292
+
4293
+ @innodb_numa_interleave.setter
4294
+ def innodb_numa_interleave(self, value: Optional[pulumi.Input[bool]]):
4295
+ pulumi.set(self, "innodb_numa_interleave", value)
4296
+
4297
+ @property
4298
+ @pulumi.getter(name="innodbOnlineAlterLogMaxSize")
4299
+ def innodb_online_alter_log_max_size(self) -> Optional[pulumi.Input[str]]:
4300
+ """
4301
+ Specifies an upper limit in bytes on the size of the temporary log files used during online DDL operations for InnoDB tables. There is one such log file for each index being created or table being altered. This log file stores data inserted, updated, or deleted in the table during the DDL operation.
4302
+
4303
+ innodbOnlineAlterLogMaxSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_online_alter_log_max_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_online_alter_log_max_size).
4304
+ """
4305
+ return pulumi.get(self, "innodb_online_alter_log_max_size")
4306
+
4307
+ @innodb_online_alter_log_max_size.setter
4308
+ def innodb_online_alter_log_max_size(self, value: Optional[pulumi.Input[str]]):
4309
+ pulumi.set(self, "innodb_online_alter_log_max_size", value)
4310
+
4311
+ @property
4312
+ @pulumi.getter(name="innodbRedoLogCapacity")
4313
+ def innodb_redo_log_capacity(self) -> Optional[pulumi.Input[str]]:
4314
+ """
4315
+ Defines the amount of disk space occupied by redo log files. innodb_redo_log_capacity supercedes the innodb_log_files_in_group and innodb_log_file_size variables, which are both ignored if innodb_redo_log_capacity is defined. If innodb_redo_log_capacity is not defined, and if neither innodb_log_file_size or innodb_log_files_in_group are defined, then the default innodb_redo_log_capacity value is used.
4316
+
4317
+ innodbRedoLogCapacity corresponds to the InnoDB Startup Options and System Variables [innodb_redo_log_capacity](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_redo_log_capacity)
4318
+ """
4319
+ return pulumi.get(self, "innodb_redo_log_capacity")
4320
+
4321
+ @innodb_redo_log_capacity.setter
4322
+ def innodb_redo_log_capacity(self, value: Optional[pulumi.Input[str]]):
4323
+ pulumi.set(self, "innodb_redo_log_capacity", value)
4324
+
4325
+ @property
4326
+ @pulumi.getter(name="innodbRollbackOnTimeout")
4327
+ def innodb_rollback_on_timeout(self) -> Optional[pulumi.Input[bool]]:
4328
+ """
4329
+ InnoDB rolls back only the last statement on a transaction timeout by default. If --innodb-rollback-on-timeout is specified, a transaction timeout causes InnoDB to abort and roll back the entire transaction.
4330
+
4331
+ innodbRollbackOnTimeout corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_rollback_on_timeout] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_rollback_on_timeout).
4332
+ """
4333
+ return pulumi.get(self, "innodb_rollback_on_timeout")
4334
+
4335
+ @innodb_rollback_on_timeout.setter
4336
+ def innodb_rollback_on_timeout(self, value: Optional[pulumi.Input[bool]]):
4337
+ pulumi.set(self, "innodb_rollback_on_timeout", value)
4338
+
4339
+ @property
4340
+ @pulumi.getter(name="innodbSortBufferSize")
4341
+ def innodb_sort_buffer_size(self) -> Optional[pulumi.Input[int]]:
4342
+ """
4343
+ This variable defines:
4344
+ * The sort buffer size for online DDL operations that create or rebuild secondary indexes. However, as of MySQL 8.0.27, this responsibility is subsumed by the innodb_ddl_buffer_size variable.
4345
+ * The amount by which the temporary log file is extended when recording concurrent DML during an online DDL operation, and the size of the temporary log file read buffer and write buffer.
4346
+
4347
+ innodbSortBufferSize corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_sort_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_sort_buffer_size).
4348
+ """
4349
+ return pulumi.get(self, "innodb_sort_buffer_size")
4350
+
4351
+ @innodb_sort_buffer_size.setter
4352
+ def innodb_sort_buffer_size(self, value: Optional[pulumi.Input[int]]):
4353
+ pulumi.set(self, "innodb_sort_buffer_size", value)
4354
+
3529
4355
  @property
3530
4356
  @pulumi.getter(name="innodbStatsPersistentSamplePages")
3531
4357
  def innodb_stats_persistent_sample_pages(self) -> Optional[pulumi.Input[str]]:
@@ -3560,6 +4386,34 @@ class MysqlConfigurationVariablesArgs:
3560
4386
  def innodb_stats_transient_sample_pages(self, value: Optional[pulumi.Input[str]]):
3561
4387
  pulumi.set(self, "innodb_stats_transient_sample_pages", value)
3562
4388
 
4389
+ @property
4390
+ @pulumi.getter(name="innodbStrictMode")
4391
+ def innodb_strict_mode(self) -> Optional[pulumi.Input[bool]]:
4392
+ """
4393
+ When you enable innodbStrictMode, the InnoDB storage engine returns errors instead of warnings for invalid or incompatible table options.
4394
+
4395
+ innodbStrictMode corresponds to the MySQL InnoDB system variable [innodb_strict_mode](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_strict_mode)
4396
+ """
4397
+ return pulumi.get(self, "innodb_strict_mode")
4398
+
4399
+ @innodb_strict_mode.setter
4400
+ def innodb_strict_mode(self, value: Optional[pulumi.Input[bool]]):
4401
+ pulumi.set(self, "innodb_strict_mode", value)
4402
+
4403
+ @property
4404
+ @pulumi.getter(name="innodbUndoLogTruncate")
4405
+ def innodb_undo_log_truncate(self) -> Optional[pulumi.Input[bool]]:
4406
+ """
4407
+ When enabled, undo tablespaces that exceed the threshold value defined by innodb_max_undo_log_size are marked for truncation. Only undo tablespaces can be truncated. Truncating undo logs that reside in the system tablespace is not supported. For truncation to occur, there must be at least two undo tablespaces.
4408
+
4409
+ innodbUndoLogTruncate corresponds to the MySQL InnoDB Startup Options and System Variables [innodb_undo_log_truncate] (https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_undo_log_truncate).
4410
+ """
4411
+ return pulumi.get(self, "innodb_undo_log_truncate")
4412
+
4413
+ @innodb_undo_log_truncate.setter
4414
+ def innodb_undo_log_truncate(self, value: Optional[pulumi.Input[bool]]):
4415
+ pulumi.set(self, "innodb_undo_log_truncate", value)
4416
+
3563
4417
  @property
3564
4418
  @pulumi.getter(name="interactiveTimeout")
3565
4419
  def interactive_timeout(self) -> Optional[pulumi.Input[int]]:
@@ -3574,11 +4428,27 @@ class MysqlConfigurationVariablesArgs:
3574
4428
  def interactive_timeout(self, value: Optional[pulumi.Input[int]]):
3575
4429
  pulumi.set(self, "interactive_timeout", value)
3576
4430
 
4431
+ @property
4432
+ @pulumi.getter(name="joinBufferSize")
4433
+ def join_buffer_size(self) -> Optional[pulumi.Input[str]]:
4434
+ """
4435
+ The minimum size of the buffer that is used for plain index scans, range index scans, and joins that do not use indexes and thus perform full table scans. In MySQL 8.0.18 and later, this variable also controls the amount of memory used for hash joins. Normally, the best way to get fast joins is to add indexes. Increase the value of join_buffer_size to get a faster full join when adding indexes is not possible. One join buffer is allocated for each full join between two tables. For a complex join between several tables for which indexes are not used, multiple join buffers might be necessary.
4436
+
4437
+ joinBufferSize corresponds to the MySQL Server System variable [join_buffer_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_join_buffer_size).
4438
+ """
4439
+ return pulumi.get(self, "join_buffer_size")
4440
+
4441
+ @join_buffer_size.setter
4442
+ def join_buffer_size(self, value: Optional[pulumi.Input[str]]):
4443
+ pulumi.set(self, "join_buffer_size", value)
4444
+
3577
4445
  @property
3578
4446
  @pulumi.getter(name="localInfile")
3579
4447
  def local_infile(self) -> Optional[pulumi.Input[bool]]:
3580
4448
  """
3581
- ("local_infile")
4449
+ This variable controls server-side LOCAL capability for LOAD DATA statements. Depending on the local_infile setting, the server refuses or permits local data loading by clients that have LOCAL enabled on the client side.
4450
+
4451
+ local_infile corresponds to the MySQL Server system variable [local_infile](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_local_infile)
3582
4452
  """
3583
4453
  return pulumi.get(self, "local_infile")
3584
4454
 
@@ -3586,6 +4456,20 @@ class MysqlConfigurationVariablesArgs:
3586
4456
  def local_infile(self, value: Optional[pulumi.Input[bool]]):
3587
4457
  pulumi.set(self, "local_infile", value)
3588
4458
 
4459
+ @property
4460
+ @pulumi.getter(name="longQueryTime")
4461
+ def long_query_time(self) -> Optional[pulumi.Input[int]]:
4462
+ """
4463
+ If a query takes longer than this many seconds, the server increments the Slow_queries status variable. If the slow query log is enabled, the query is logged to the slow query log file. This value is measured in real time, not CPU time, so a query that is under the threshold on a lightly loaded system might be above the threshold on a heavily loaded one.
4464
+
4465
+ longQueryTime corresponds to the MySQL Server System variable [long_query_time] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_long_query_time).
4466
+ """
4467
+ return pulumi.get(self, "long_query_time")
4468
+
4469
+ @long_query_time.setter
4470
+ def long_query_time(self, value: Optional[pulumi.Input[int]]):
4471
+ pulumi.set(self, "long_query_time", value)
4472
+
3589
4473
  @property
3590
4474
  @pulumi.getter(name="mandatoryRoles")
3591
4475
  def mandatory_roles(self) -> Optional[pulumi.Input[str]]:
@@ -3688,6 +4572,34 @@ class MysqlConfigurationVariablesArgs:
3688
4572
  def max_prepared_stmt_count(self, value: Optional[pulumi.Input[int]]):
3689
4573
  pulumi.set(self, "max_prepared_stmt_count", value)
3690
4574
 
4575
+ @property
4576
+ @pulumi.getter(name="maxSeeksForKey")
4577
+ def max_seeks_for_key(self) -> Optional[pulumi.Input[str]]:
4578
+ """
4579
+ Limit the assumed maximum number of seeks when looking up rows based on a key. The MySQL optimizer assumes that no more than this number of key seeks are required when searching for matching rows in a table by scanning an index, regardless of the actual cardinality of the index (see Section 15.7.7.22, “SHOW INDEX Statement”). By setting this to a low value (say, 100), you can force MySQL to prefer indexes instead of table scans.
4580
+
4581
+ maxSeeksForKey corresponds to the MySQL Server System variable [max_seeks_for_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_seeks_for_key).
4582
+ """
4583
+ return pulumi.get(self, "max_seeks_for_key")
4584
+
4585
+ @max_seeks_for_key.setter
4586
+ def max_seeks_for_key(self, value: Optional[pulumi.Input[str]]):
4587
+ pulumi.set(self, "max_seeks_for_key", value)
4588
+
4589
+ @property
4590
+ @pulumi.getter(name="maxUserConnections")
4591
+ def max_user_connections(self) -> Optional[pulumi.Input[str]]:
4592
+ """
4593
+ The maximum number of simultaneous connections permitted to any given MySQL user account. A value of 0 (the default) means “no limit.” This variable has a global value that can be set at server startup or runtime. It also has a read-only session value that indicates the effective simultaneous-connection limit that applies to the account associated with the current session.
4594
+
4595
+ maxUserConnections corresponds to the MySQL Server System variable [max_user_connections] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_user_connections).
4596
+ """
4597
+ return pulumi.get(self, "max_user_connections")
4598
+
4599
+ @max_user_connections.setter
4600
+ def max_user_connections(self, value: Optional[pulumi.Input[str]]):
4601
+ pulumi.set(self, "max_user_connections", value)
4602
+
3691
4603
  @property
3692
4604
  @pulumi.getter(name="mysqlFirewallMode")
3693
4605
  def mysql_firewall_mode(self) -> Optional[pulumi.Input[bool]]:
@@ -3948,6 +4860,22 @@ class MysqlConfigurationVariablesArgs:
3948
4860
  def net_write_timeout(self, value: Optional[pulumi.Input[int]]):
3949
4861
  pulumi.set(self, "net_write_timeout", value)
3950
4862
 
4863
+ @property
4864
+ @pulumi.getter(name="optimizerSwitch")
4865
+ def optimizer_switch(self) -> Optional[pulumi.Input[str]]:
4866
+ """
4867
+ The optimizer_switch system variable enables control over optimizer behavior. The value of this variable is a set of flags, each of which has a value of on or off to indicate whether the corresponding optimizer behavior is enabled or disabled. This variable has global and session values and can be changed at runtime. The global default can be set at server startup.
4868
+
4869
+ Setting hypergraph_optimizer=on for cloud builds below 9.0.0 will fail.
4870
+
4871
+ optimizerSwitch corresponds to the MySQL Server System variable [optimizer_switch] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_optimizer_switch).
4872
+ """
4873
+ return pulumi.get(self, "optimizer_switch")
4874
+
4875
+ @optimizer_switch.setter
4876
+ def optimizer_switch(self, value: Optional[pulumi.Input[str]]):
4877
+ pulumi.set(self, "optimizer_switch", value)
4878
+
3951
4879
  @property
3952
4880
  @pulumi.getter(name="parserMaxMemSize")
3953
4881
  def parser_max_mem_size(self) -> Optional[pulumi.Input[str]]:
@@ -3975,7 +4903,6 @@ class MysqlConfigurationVariablesArgs:
3975
4903
 
3976
4904
  @property
3977
4905
  @pulumi.getter(name="queryPreallocSize")
3978
- @_utilities.deprecated("""The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""")
3979
4906
  def query_prealloc_size(self) -> Optional[pulumi.Input[str]]:
3980
4907
  """
3981
4908
  ("query_prealloc_size") DEPRECATED -- variable should not be settable and will be ignored
@@ -3986,6 +4913,21 @@ class MysqlConfigurationVariablesArgs:
3986
4913
  def query_prealloc_size(self, value: Optional[pulumi.Input[str]]):
3987
4914
  pulumi.set(self, "query_prealloc_size", value)
3988
4915
 
4916
+ @property
4917
+ @pulumi.getter(name="rangeOptimizerMaxMemSize")
4918
+ @_utilities.deprecated("""The 'query_prealloc_size' field has been deprecated and may be removed in a future version. Do not use this field.""")
4919
+ def range_optimizer_max_mem_size(self) -> Optional[pulumi.Input[str]]:
4920
+ """
4921
+ The limit on memory consumption for the range optimizer. A value of 0 means “no limit.” If an execution plan considered by the optimizer uses the range access method but the optimizer estimates that the amount of memory needed for this method would exceed the limit, it abandons the plan and considers other plans.
4922
+
4923
+ rangeOptimizerMaxMemSize corresponds to the MySQL Server System variable [range_optimizer_max_mem_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_range_optimizer_max_mem_size).
4924
+ """
4925
+ return pulumi.get(self, "range_optimizer_max_mem_size")
4926
+
4927
+ @range_optimizer_max_mem_size.setter
4928
+ def range_optimizer_max_mem_size(self, value: Optional[pulumi.Input[str]]):
4929
+ pulumi.set(self, "range_optimizer_max_mem_size", value)
4930
+
3989
4931
  @property
3990
4932
  @pulumi.getter(name="regexpTimeLimit")
3991
4933
  def regexp_time_limit(self) -> Optional[pulumi.Input[int]]:
@@ -3998,6 +4940,92 @@ class MysqlConfigurationVariablesArgs:
3998
4940
  def regexp_time_limit(self, value: Optional[pulumi.Input[int]]):
3999
4941
  pulumi.set(self, "regexp_time_limit", value)
4000
4942
 
4943
+ @property
4944
+ @pulumi.getter(name="relayLogSpaceLimit")
4945
+ def relay_log_space_limit(self) -> Optional[pulumi.Input[str]]:
4946
+ """
4947
+ The maximum amount of space to use for all relay logs.
4948
+
4949
+ relayLogSpaceLimit corresponds to the MySQL Replica Server Options variable [relay_log_space_limit] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_relay_log_space_limit).
4950
+ """
4951
+ return pulumi.get(self, "relay_log_space_limit")
4952
+
4953
+ @relay_log_space_limit.setter
4954
+ def relay_log_space_limit(self, value: Optional[pulumi.Input[str]]):
4955
+ pulumi.set(self, "relay_log_space_limit", value)
4956
+
4957
+ @property
4958
+ @pulumi.getter(name="replicaNetTimeout")
4959
+ def replica_net_timeout(self) -> Optional[pulumi.Input[int]]:
4960
+ """
4961
+ Specifies the number of seconds to wait for more data or a heartbeat signal from the source before the replica considers the connection broken, aborts the read, and tries to reconnect. Setting this variable has no immediate effect. The state of the variable applies on all subsequent START REPLICA commands.
4962
+
4963
+ replicaNetTimeout corresponds to the MySQL Replica server system variable [replica_net_timeout](https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_net_timeout)
4964
+ """
4965
+ return pulumi.get(self, "replica_net_timeout")
4966
+
4967
+ @replica_net_timeout.setter
4968
+ def replica_net_timeout(self, value: Optional[pulumi.Input[int]]):
4969
+ pulumi.set(self, "replica_net_timeout", value)
4970
+
4971
+ @property
4972
+ @pulumi.getter(name="replicaParallelWorkers")
4973
+ def replica_parallel_workers(self) -> Optional[pulumi.Input[int]]:
4974
+ """
4975
+ Beginning with MySQL 8.0.26, slave_parallel_workers is deprecated, and you should use replica_parallel_workers instead. (Prior to MySQL 8.0.26, you must use slave_parallel_workers to set the number of applier threads.)
4976
+
4977
+ replicaParallelWorkers corresponds to the MySQL Replica Server Options variable [replica_parallel_workers] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_parallel_workers).
4978
+ """
4979
+ return pulumi.get(self, "replica_parallel_workers")
4980
+
4981
+ @replica_parallel_workers.setter
4982
+ def replica_parallel_workers(self, value: Optional[pulumi.Input[int]]):
4983
+ pulumi.set(self, "replica_parallel_workers", value)
4984
+
4985
+ @property
4986
+ @pulumi.getter(name="replicaTypeConversions")
4987
+ def replica_type_conversions(self) -> Optional[pulumi.Input[str]]:
4988
+ """
4989
+ From MySQL 8.0.26, use replica_type_conversions in place of slave_type_conversions, which is deprecated from that release. In releases before MySQL 8.0.26, use slave_type_conversions.
4990
+
4991
+ replica_type_conversions controls the type conversion mode in effect on the replica when using row-based replication. Its value is a comma-delimited set of zero or more elements from the list: ALL_LOSSY, ALL_NON_LOSSY, ALL_SIGNED, ALL_UNSIGNED. Set this variable to an empty string to disallow type conversions between the source and the replica. Setting this variable takes effect for all replication channels immediately, including running channels.
4992
+
4993
+ replica_type_conversions corresponds to the MySQL Replica Server Options variable [replica_type_conversions] (https://dev.mysql.com/doc/refman/8.0/en/replication-options-replica.html#sysvar_replica_type_conversions).
4994
+ """
4995
+ return pulumi.get(self, "replica_type_conversions")
4996
+
4997
+ @replica_type_conversions.setter
4998
+ def replica_type_conversions(self, value: Optional[pulumi.Input[str]]):
4999
+ pulumi.set(self, "replica_type_conversions", value)
5000
+
5001
+ @property
5002
+ @pulumi.getter(name="requireSecureTransport")
5003
+ def require_secure_transport(self) -> Optional[pulumi.Input[bool]]:
5004
+ """
5005
+ Whether client connections to the server are required to use some form of secure transport. When this variable is enabled, the server permits only TCP/IP connections encrypted using TLS/SSL, or connections that use a socket file or shared memory. The server rejects nonsecure connection attempts, which fail with an ER_SECURE_TRANSPORT_REQUIRED error.
5006
+
5007
+ require_secure_transport corresponds to the MySQL Server Administration system variable [require_secure_transport](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_require_secure_transport)
5008
+ """
5009
+ return pulumi.get(self, "require_secure_transport")
5010
+
5011
+ @require_secure_transport.setter
5012
+ def require_secure_transport(self, value: Optional[pulumi.Input[bool]]):
5013
+ pulumi.set(self, "require_secure_transport", value)
5014
+
5015
+ @property
5016
+ @pulumi.getter(name="skipNameResolve")
5017
+ def skip_name_resolve(self) -> Optional[pulumi.Input[bool]]:
5018
+ """
5019
+ Whether to resolve host names when checking client connections. If this variable is OFF, mysqld resolves host names when checking client connections. If it is ON, mysqld uses only IP numbers; in this case, all Host column values in the grant tables must be IP addresses. See Section 7.1.12.3, “DNS Lookups and the Host Cache”.
5020
+
5021
+ skipNameResolve corresponds to the MySQL Server System variable [skip_name_resolve] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_skip_name_resolve).
5022
+ """
5023
+ return pulumi.get(self, "skip_name_resolve")
5024
+
5025
+ @skip_name_resolve.setter
5026
+ def skip_name_resolve(self, value: Optional[pulumi.Input[bool]]):
5027
+ pulumi.set(self, "skip_name_resolve", value)
5028
+
4001
5029
  @property
4002
5030
  @pulumi.getter(name="sortBufferSize")
4003
5031
  def sort_buffer_size(self) -> Optional[pulumi.Input[str]]:
@@ -4012,6 +5040,20 @@ class MysqlConfigurationVariablesArgs:
4012
5040
  def sort_buffer_size(self, value: Optional[pulumi.Input[str]]):
4013
5041
  pulumi.set(self, "sort_buffer_size", value)
4014
5042
 
5043
+ @property
5044
+ @pulumi.getter(name="sqlGenerateInvisiblePrimaryKey")
5045
+ def sql_generate_invisible_primary_key(self) -> Optional[pulumi.Input[bool]]:
5046
+ """
5047
+ Whether GIPK mode is in effect, in which case a MySQL replication source server adds a generated invisible primary key to any InnoDB table that is created without one.
5048
+
5049
+ sqlGenerateInvisiblePrimaryKey corresponds to the MySQL system variable [sql_generate_invisible_primary_key] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_generate_invisible_primary_key).
5050
+ """
5051
+ return pulumi.get(self, "sql_generate_invisible_primary_key")
5052
+
5053
+ @sql_generate_invisible_primary_key.setter
5054
+ def sql_generate_invisible_primary_key(self, value: Optional[pulumi.Input[bool]]):
5055
+ pulumi.set(self, "sql_generate_invisible_primary_key", value)
5056
+
4015
5057
  @property
4016
5058
  @pulumi.getter(name="sqlMode")
4017
5059
  def sql_mode(self) -> Optional[pulumi.Input[str]]:
@@ -4048,6 +5090,48 @@ class MysqlConfigurationVariablesArgs:
4048
5090
  def sql_warnings(self, value: Optional[pulumi.Input[bool]]):
4049
5091
  pulumi.set(self, "sql_warnings", value)
4050
5092
 
5093
+ @property
5094
+ @pulumi.getter(name="tableDefinitionCache")
5095
+ def table_definition_cache(self) -> Optional[pulumi.Input[int]]:
5096
+ """
5097
+ The number of table definitions that can be stored in the table definition cache. If you use a large number of tables, you can create a large table definition cache to speed up opening of tables. The table definition cache takes less space and does not use file descriptors, unlike the normal table cache.
5098
+
5099
+ table_definition_cache corresponds to the MySQL Server Administration system variable [table_definition_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_definition_cache)
5100
+ """
5101
+ return pulumi.get(self, "table_definition_cache")
5102
+
5103
+ @table_definition_cache.setter
5104
+ def table_definition_cache(self, value: Optional[pulumi.Input[int]]):
5105
+ pulumi.set(self, "table_definition_cache", value)
5106
+
5107
+ @property
5108
+ @pulumi.getter(name="tableOpenCache")
5109
+ def table_open_cache(self) -> Optional[pulumi.Input[int]]:
5110
+ """
5111
+ The number of open tables for all threads. Increasing this value increases the number of file descriptors that mysqld requires.
5112
+
5113
+ table_open_cache corresponds to the MySQL Server Administration system variable [table_open_cache](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache)
5114
+ """
5115
+ return pulumi.get(self, "table_open_cache")
5116
+
5117
+ @table_open_cache.setter
5118
+ def table_open_cache(self, value: Optional[pulumi.Input[int]]):
5119
+ pulumi.set(self, "table_open_cache", value)
5120
+
5121
+ @property
5122
+ @pulumi.getter(name="temptableMaxRam")
5123
+ def temptable_max_ram(self) -> Optional[pulumi.Input[str]]:
5124
+ """
5125
+ Defines the maximum amount of memory that can be occupied by the TempTable storage engine before it starts storing data on disk. The default value is 1073741824 bytes (1GiB). For more information, see Section 10.4.4, “Internal Temporary Table Use in MySQL”.
5126
+
5127
+ temptableMaxRam corresponds to the MySQL system variable [temptable_max_ram] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_temptable_max_ram).
5128
+ """
5129
+ return pulumi.get(self, "temptable_max_ram")
5130
+
5131
+ @temptable_max_ram.setter
5132
+ def temptable_max_ram(self, value: Optional[pulumi.Input[str]]):
5133
+ pulumi.set(self, "temptable_max_ram", value)
5134
+
4051
5135
  @property
4052
5136
  @pulumi.getter(name="threadPoolDedicatedListeners")
4053
5137
  def thread_pool_dedicated_listeners(self) -> Optional[pulumi.Input[bool]]:
@@ -4072,6 +5156,48 @@ class MysqlConfigurationVariablesArgs:
4072
5156
  def thread_pool_max_transactions_limit(self, value: Optional[pulumi.Input[int]]):
4073
5157
  pulumi.set(self, "thread_pool_max_transactions_limit", value)
4074
5158
 
5159
+ @property
5160
+ @pulumi.getter(name="threadPoolQueryThreadsPerGroup")
5161
+ def thread_pool_query_threads_per_group(self) -> Optional[pulumi.Input[int]]:
5162
+ """
5163
+ The maximum number of query threads permitted in a thread group. The maximum value is 4096, but if thread_pool_max_transactions_limit is set, thread_pool_query_threads_per_group must not exceed that value. The default value of 1 means there is one active query thread in each thread group, which works well for many loads. When you are using the high concurrency thread pool algorithm (thread_pool_algorithm = 1), consider increasing the value if you experience slower response times due to long-running transactions.
5164
+
5165
+ threadPoolQueryThreadsPerGroup corresponds to the MySQL Server system variable [thread_pool_query_threads_per_group](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_query_threads_per_group)
5166
+ """
5167
+ return pulumi.get(self, "thread_pool_query_threads_per_group")
5168
+
5169
+ @thread_pool_query_threads_per_group.setter
5170
+ def thread_pool_query_threads_per_group(self, value: Optional[pulumi.Input[int]]):
5171
+ pulumi.set(self, "thread_pool_query_threads_per_group", value)
5172
+
5173
+ @property
5174
+ @pulumi.getter(name="threadPoolSize")
5175
+ def thread_pool_size(self) -> Optional[pulumi.Input[int]]:
5176
+ """
5177
+ The number of thread groups in the thread pool. This is the most important parameter controlling thread pool performance. It affects how many statements can execute simultaneously. If a value outside the range of permissible values is specified, the thread pool plugin does not load and the server writes a message to the error log.
5178
+
5179
+ threadPoolSize corresponds to the MySQL Server System variable [thread_pool_size] (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_size).
5180
+ """
5181
+ return pulumi.get(self, "thread_pool_size")
5182
+
5183
+ @thread_pool_size.setter
5184
+ def thread_pool_size(self, value: Optional[pulumi.Input[int]]):
5185
+ pulumi.set(self, "thread_pool_size", value)
5186
+
5187
+ @property
5188
+ @pulumi.getter(name="threadPoolTransactionDelay")
5189
+ def thread_pool_transaction_delay(self) -> Optional[pulumi.Input[int]]:
5190
+ """
5191
+ The delay period before executing a new transaction, in milliseconds. The maximum value is 300000 (5 minutes). A transaction delay can be used in cases where parallel transactions affect the performance of other operations due to resource contention. For example, if parallel transactions affect index creation or an online buffer pool resizing operation, you can configure a transaction delay to reduce resource contention while those operations are running.
5192
+
5193
+ threadPoolTransactionDelay corresponds to the MySQL Server system variable [thread_pool_transaction_delay](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_pool_transaction_delay)
5194
+ """
5195
+ return pulumi.get(self, "thread_pool_transaction_delay")
5196
+
5197
+ @thread_pool_transaction_delay.setter
5198
+ def thread_pool_transaction_delay(self, value: Optional[pulumi.Input[int]]):
5199
+ pulumi.set(self, "thread_pool_transaction_delay", value)
5200
+
4075
5201
  @property
4076
5202
  @pulumi.getter(name="timeZone")
4077
5203
  def time_zone(self) -> Optional[pulumi.Input[str]]:
@@ -4137,6 +5263,14 @@ class MysqlConfigurationVariablesArgs:
4137
5263
 
4138
5264
  if not MYPY:
4139
5265
  class MysqlDbSystemBackupPolicyArgsDict(TypedDict):
5266
+ copy_policies: NotRequired[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemBackupPolicyCopyPolicyArgsDict']]]]
5267
+ """
5268
+ (Updatable) List of policies of a DB system to schedule cross-region DB system backup copy.
5269
+
5270
+ The policy includes the name of the destination region to which the DB system backup will be copied, and an optional parameter which specifies the retention period of the copied DB system backup in days.
5271
+
5272
+ **Note:** Currently, only one policy can be specified in the list.
5273
+ """
4140
5274
  defined_tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
4141
5275
  """
4142
5276
  (Updatable) Usage of predefined tag keys. These predefined keys are scoped to namespaces.
@@ -4179,6 +5313,7 @@ elif False:
4179
5313
  @pulumi.input_type
4180
5314
  class MysqlDbSystemBackupPolicyArgs:
4181
5315
  def __init__(__self__, *,
5316
+ copy_policies: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemBackupPolicyCopyPolicyArgs']]]] = None,
4182
5317
  defined_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
4183
5318
  freeform_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
4184
5319
  is_enabled: Optional[pulumi.Input[bool]] = None,
@@ -4186,6 +5321,11 @@ class MysqlDbSystemBackupPolicyArgs:
4186
5321
  retention_in_days: Optional[pulumi.Input[int]] = None,
4187
5322
  window_start_time: Optional[pulumi.Input[str]] = None):
4188
5323
  """
5324
+ :param pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemBackupPolicyCopyPolicyArgs']]] copy_policies: (Updatable) List of policies of a DB system to schedule cross-region DB system backup copy.
5325
+
5326
+ The policy includes the name of the destination region to which the DB system backup will be copied, and an optional parameter which specifies the retention period of the copied DB system backup in days.
5327
+
5328
+ **Note:** Currently, only one policy can be specified in the list.
4189
5329
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] defined_tags: (Updatable) Usage of predefined tag keys. These predefined keys are scoped to namespaces.
4190
5330
 
4191
5331
  Tags defined here will be copied verbatim as tags on the Backup resource created by this BackupPolicy.
@@ -4205,6 +5345,8 @@ class MysqlDbSystemBackupPolicyArgs:
4205
5345
 
4206
5346
  At some point in the window, the system may incur a brief service disruption as the backup is performed.
4207
5347
  """
5348
+ if copy_policies is not None:
5349
+ pulumi.set(__self__, "copy_policies", copy_policies)
4208
5350
  if defined_tags is not None:
4209
5351
  pulumi.set(__self__, "defined_tags", defined_tags)
4210
5352
  if freeform_tags is not None:
@@ -4218,6 +5360,22 @@ class MysqlDbSystemBackupPolicyArgs:
4218
5360
  if window_start_time is not None:
4219
5361
  pulumi.set(__self__, "window_start_time", window_start_time)
4220
5362
 
5363
+ @property
5364
+ @pulumi.getter(name="copyPolicies")
5365
+ def copy_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemBackupPolicyCopyPolicyArgs']]]]:
5366
+ """
5367
+ (Updatable) List of policies of a DB system to schedule cross-region DB system backup copy.
5368
+
5369
+ The policy includes the name of the destination region to which the DB system backup will be copied, and an optional parameter which specifies the retention period of the copied DB system backup in days.
5370
+
5371
+ **Note:** Currently, only one policy can be specified in the list.
5372
+ """
5373
+ return pulumi.get(self, "copy_policies")
5374
+
5375
+ @copy_policies.setter
5376
+ def copy_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemBackupPolicyCopyPolicyArgs']]]]):
5377
+ pulumi.set(self, "copy_policies", value)
5378
+
4221
5379
  @property
4222
5380
  @pulumi.getter(name="definedTags")
4223
5381
  def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -4303,6 +5461,57 @@ class MysqlDbSystemBackupPolicyArgs:
4303
5461
  pulumi.set(self, "window_start_time", value)
4304
5462
 
4305
5463
 
5464
+ if not MYPY:
5465
+ class MysqlDbSystemBackupPolicyCopyPolicyArgsDict(TypedDict):
5466
+ copy_to_region: pulumi.Input[str]
5467
+ """
5468
+ (Updatable) The destination region name to which the DB system backup will be copied.
5469
+ """
5470
+ backup_copy_retention_in_days: NotRequired[pulumi.Input[int]]
5471
+ """
5472
+ (Updatable) Number of days to retain the copied DB system backup.
5473
+ """
5474
+ elif False:
5475
+ MysqlDbSystemBackupPolicyCopyPolicyArgsDict: TypeAlias = Mapping[str, Any]
5476
+
5477
+ @pulumi.input_type
5478
+ class MysqlDbSystemBackupPolicyCopyPolicyArgs:
5479
+ def __init__(__self__, *,
5480
+ copy_to_region: pulumi.Input[str],
5481
+ backup_copy_retention_in_days: Optional[pulumi.Input[int]] = None):
5482
+ """
5483
+ :param pulumi.Input[str] copy_to_region: (Updatable) The destination region name to which the DB system backup will be copied.
5484
+ :param pulumi.Input[int] backup_copy_retention_in_days: (Updatable) Number of days to retain the copied DB system backup.
5485
+ """
5486
+ pulumi.set(__self__, "copy_to_region", copy_to_region)
5487
+ if backup_copy_retention_in_days is not None:
5488
+ pulumi.set(__self__, "backup_copy_retention_in_days", backup_copy_retention_in_days)
5489
+
5490
+ @property
5491
+ @pulumi.getter(name="copyToRegion")
5492
+ def copy_to_region(self) -> pulumi.Input[str]:
5493
+ """
5494
+ (Updatable) The destination region name to which the DB system backup will be copied.
5495
+ """
5496
+ return pulumi.get(self, "copy_to_region")
5497
+
5498
+ @copy_to_region.setter
5499
+ def copy_to_region(self, value: pulumi.Input[str]):
5500
+ pulumi.set(self, "copy_to_region", value)
5501
+
5502
+ @property
5503
+ @pulumi.getter(name="backupCopyRetentionInDays")
5504
+ def backup_copy_retention_in_days(self) -> Optional[pulumi.Input[int]]:
5505
+ """
5506
+ (Updatable) Number of days to retain the copied DB system backup.
5507
+ """
5508
+ return pulumi.get(self, "backup_copy_retention_in_days")
5509
+
5510
+ @backup_copy_retention_in_days.setter
5511
+ def backup_copy_retention_in_days(self, value: Optional[pulumi.Input[int]]):
5512
+ pulumi.set(self, "backup_copy_retention_in_days", value)
5513
+
5514
+
4306
5515
  if not MYPY:
4307
5516
  class MysqlDbSystemBackupPolicyPitrPolicyArgsDict(TypedDict):
4308
5517
  is_enabled: NotRequired[pulumi.Input[bool]]
@@ -4373,6 +5582,10 @@ if not MYPY:
4373
5582
  """
4374
5583
  (Updatable) The target state for the DB System. Could be set to `ACTIVE` or `INACTIVE`.
4375
5584
  """
5585
+ system_tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
5586
+ """
5587
+ Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
5588
+ """
4376
5589
  targets: NotRequired[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelTargetArgsDict']]]]
4377
5590
  """
4378
5591
  Details about the Channel target.
@@ -4400,6 +5613,7 @@ class MysqlDbSystemChannelArgs:
4400
5613
  lifecycle_details: Optional[pulumi.Input[str]] = None,
4401
5614
  sources: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelSourceArgs']]]] = None,
4402
5615
  state: Optional[pulumi.Input[str]] = None,
5616
+ system_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
4403
5617
  targets: Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelTargetArgs']]]] = None,
4404
5618
  time_created: Optional[pulumi.Input[str]] = None,
4405
5619
  time_updated: Optional[pulumi.Input[str]] = None):
@@ -4413,6 +5627,7 @@ class MysqlDbSystemChannelArgs:
4413
5627
  :param pulumi.Input[str] lifecycle_details: Additional information about the current lifecycleState.
4414
5628
  :param pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelSourceArgs']]] sources: Parameters detailing how to provision the initial data of the system.
4415
5629
  :param pulumi.Input[str] state: (Updatable) The target state for the DB System. Could be set to `ACTIVE` or `INACTIVE`.
5630
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] system_tags: Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
4416
5631
  :param pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelTargetArgs']]] targets: Details about the Channel target.
4417
5632
  :param pulumi.Input[str] time_created: The date and time the DB System was created.
4418
5633
  :param pulumi.Input[str] time_updated: The time the DB System was last updated.
@@ -4435,6 +5650,8 @@ class MysqlDbSystemChannelArgs:
4435
5650
  pulumi.set(__self__, "sources", sources)
4436
5651
  if state is not None:
4437
5652
  pulumi.set(__self__, "state", state)
5653
+ if system_tags is not None:
5654
+ pulumi.set(__self__, "system_tags", system_tags)
4438
5655
  if targets is not None:
4439
5656
  pulumi.set(__self__, "targets", targets)
4440
5657
  if time_created is not None:
@@ -4550,6 +5767,18 @@ class MysqlDbSystemChannelArgs:
4550
5767
  def state(self, value: Optional[pulumi.Input[str]]):
4551
5768
  pulumi.set(self, "state", value)
4552
5769
 
5770
+ @property
5771
+ @pulumi.getter(name="systemTags")
5772
+ def system_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
5773
+ """
5774
+ Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
5775
+ """
5776
+ return pulumi.get(self, "system_tags")
5777
+
5778
+ @system_tags.setter
5779
+ def system_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
5780
+ pulumi.set(self, "system_tags", value)
5781
+
4553
5782
  @property
4554
5783
  @pulumi.getter
4555
5784
  def targets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MysqlDbSystemChannelTargetArgs']]]]: