Class ConfigurationVariables.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • bigTables

        public ConfigurationVariables.Builder bigTables​(Boolean bigTables)
        If enabled, the server stores all temporary tables on disk rather than in memory.

        bigTables corresponds to the MySQL server variable [big_tables](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_big_tables).

        Parameters:
        bigTables - the value to set
        Returns:
        this builder
      • characterSetServer

        public ConfigurationVariables.Builder characterSetServer​(ConfigurationVariables.CharacterSetServer characterSetServer)
        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.

        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).

        Parameters:
        characterSetServer - the value to set
        Returns:
        this builder
      • collationServer

        public ConfigurationVariables.Builder collationServer​(ConfigurationVariables.CollationServer collationServer)
        The server’s default collation.

        collationServer corresponds to the MySQL server variable [collation_server](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_collation_server).

        Parameters:
        collationServer - the value to set
        Returns:
        this builder
      • connectionMemoryChunkSize

        public ConfigurationVariables.Builder connectionMemoryChunkSize​(Integer connectionMemoryChunkSize)
        Set the chunking size for updates to the global memory usage counter Global_connection_memory.

        connectionMemoryChunkSize corresponds to the MySQL system variable [connection_memory_chunk_size](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_connection_memory_chunk_size).

        Parameters:
        connectionMemoryChunkSize - the value to set
        Returns:
        this builder
      • connectionMemoryLimit

        public ConfigurationVariables.Builder connectionMemoryLimit​(Long connectionMemoryLimit)
        Set the maximum amount of memory that can be used by a single user connection.

        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).

        Parameters:
        connectionMemoryLimit - the value to set
        Returns:
        this builder
      • defaultAuthenticationPlugin

        public ConfigurationVariables.Builder defaultAuthenticationPlugin​(ConfigurationVariables.DefaultAuthenticationPlugin defaultAuthenticationPlugin)
        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.

        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.

        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).

        Parameters:
        defaultAuthenticationPlugin - the value to set
        Returns:
        this builder
      • globalConnectionMemoryLimit

        public ConfigurationVariables.Builder globalConnectionMemoryLimit​(Long globalConnectionMemoryLimit)
        Set the total amount of memory that can be used by all user connections.

        globalConnectionMemoryLimit corresponds to the MySQL system variable [global_connection_memory_limit](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_global_connection_memory_limit).

        Parameters:
        globalConnectionMemoryLimit - the value to set
        Returns:
        this builder
      • globalConnectionMemoryTracking

        public ConfigurationVariables.Builder globalConnectionMemoryTracking​(Boolean globalConnectionMemoryTracking)
        Determines whether the MySQL server calculates Global_connection_memory.

        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).

        Parameters:
        globalConnectionMemoryTracking - the value to set
        Returns:
        this builder
      • innodbFtServerStopwordTable

        public ConfigurationVariables.Builder innodbFtServerStopwordTable​(String innodbFtServerStopwordTable)
        (“innodb_ft_server_stopword_table”)
        Parameters:
        innodbFtServerStopwordTable - the value to set
        Returns:
        this builder
      • mandatoryRoles

        public ConfigurationVariables.Builder mandatoryRoles​(String mandatoryRoles)
        (“mandatory_roles”)
        Parameters:
        mandatoryRoles - the value to set
        Returns:
        this builder
      • foreignKeyChecks

        public ConfigurationVariables.Builder foreignKeyChecks​(Boolean foreignKeyChecks)
        (“foreign_key_checks”)
        Parameters:
        foreignKeyChecks - the value to set
        Returns:
        this builder
      • groupReplicationConsistency

        public ConfigurationVariables.Builder groupReplicationConsistency​(ConfigurationVariables.GroupReplicationConsistency groupReplicationConsistency)
        • 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. - 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. - 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. - 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. - 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.

        Parameters:
        groupReplicationConsistency - the value to set
        Returns:
        this builder
      • groupConcatMaxLen

        public ConfigurationVariables.Builder groupConcatMaxLen​(Long groupConcatMaxLen)
        Specifies the maximum permitted result length in bytes for the GROUP_CONCAT() function.

        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)

        Parameters:
        groupConcatMaxLen - the value to set
        Returns:
        this builder
      • innodbFtEnableStopword

        public ConfigurationVariables.Builder innodbFtEnableStopword​(Boolean innodbFtEnableStopword)
        (“innodb_ft_enable_stopword”)
        Parameters:
        innodbFtEnableStopword - the value to set
        Returns:
        this builder
      • innodbLogWriterThreads

        public ConfigurationVariables.Builder innodbLogWriterThreads​(Boolean innodbLogWriterThreads)
        Enables dedicated log writer threads for writing redo log records from the log buffer to the system buffers and flushing the system buffers to the redo log files.

        This is the MySQL variable "innodb_log_writer_threads". For more information, please see the [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_writer_threads)

        Parameters:
        innodbLogWriterThreads - the value to set
        Returns:
        this builder
      • localInfile

        public ConfigurationVariables.Builder localInfile​(Boolean localInfile)
        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.

        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)

        Parameters:
        localInfile - the value to set
        Returns:
        this builder
      • mysqlFirewallMode

        public ConfigurationVariables.Builder mysqlFirewallMode​(Boolean mysqlFirewallMode)
        (“mysql_firewall_mode”)
        Parameters:
        mysqlFirewallMode - the value to set
        Returns:
        this builder
      • mysqlxEnableHelloNotice

        public ConfigurationVariables.Builder mysqlxEnableHelloNotice​(Boolean mysqlxEnableHelloNotice)
        (“mysqlx_enable_hello_notice”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        mysqlxEnableHelloNotice - the value to set
        Returns:
        this builder
      • sqlRequirePrimaryKey

        public ConfigurationVariables.Builder sqlRequirePrimaryKey​(Boolean sqlRequirePrimaryKey)
        (“sql_require_primary_key”)
        Parameters:
        sqlRequirePrimaryKey - the value to set
        Returns:
        this builder
      • binlogExpireLogsSeconds

        public ConfigurationVariables.Builder binlogExpireLogsSeconds​(Integer binlogExpireLogsSeconds)
        Sets the binary log expiration period in seconds.

        binlogExpireLogsSeconds corresponds to the MySQL binary logging system variable binlog_expire_logs_seconds.

        Parameters:
        binlogExpireLogsSeconds - the value to set
        Returns:
        this builder
      • binlogRowValueOptions

        public ConfigurationVariables.Builder binlogRowValueOptions​(String binlogRowValueOptions)
        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.

        Parameters:
        binlogRowValueOptions - the value to set
        Returns:
        this builder
      • binlogTransactionCompression

        public ConfigurationVariables.Builder binlogTransactionCompression​(Boolean binlogTransactionCompression)
        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.

        Parameters:
        binlogTransactionCompression - the value to set
        Returns:
        this builder
      • innodbBufferPoolSize

        public ConfigurationVariables.Builder innodbBufferPoolSize​(Long innodbBufferPoolSize)
        The size (in bytes) of the buffer pool, that is, the memory area where InnoDB caches table and index data.

        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).

        The default and maximum values depend on the amount of RAM provisioned by the shape. See [Default User Variables](https://docs.oracle.com/iaas/mysql-database/doc/configuring-db-system.html#GUID-B5504C19-F6F4-4DAB-8506-189A4E8F4A6A).

        Parameters:
        innodbBufferPoolSize - the value to set
        Returns:
        this builder
      • innodbFtResultCacheLimit

        public ConfigurationVariables.Builder innodbFtResultCacheLimit​(Long innodbFtResultCacheLimit)
        (“innodb_ft_result_cache_limit”)
        Parameters:
        innodbFtResultCacheLimit - the value to set
        Returns:
        this builder
      • maxBinlogCacheSize

        public ConfigurationVariables.Builder maxBinlogCacheSize​(Long maxBinlogCacheSize)
        Sets the size of the transaction cache.

        maxBinlogCacheSize corresponds to the MySQL server system variable [max_binlog_cache_size](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_max_binlog_cache_size).

        Parameters:
        maxBinlogCacheSize - the value to set
        Returns:
        this builder
      • maxConnectErrors

        public ConfigurationVariables.Builder maxConnectErrors​(Long maxConnectErrors)
        (“max_connect_errors”)
        Parameters:
        maxConnectErrors - the value to set
        Returns:
        this builder
      • maxHeapTableSize

        public ConfigurationVariables.Builder maxHeapTableSize​(Long maxHeapTableSize)
        This variable sets the maximum size to which user-created MEMORY tables are permitted to grow.

        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)

        Parameters:
        maxHeapTableSize - the value to set
        Returns:
        this builder
      • maxConnections

        public ConfigurationVariables.Builder maxConnections​(Integer maxConnections)
        (“max_connections”)
        Parameters:
        maxConnections - the value to set
        Returns:
        this builder
      • maxPreparedStmtCount

        public ConfigurationVariables.Builder maxPreparedStmtCount​(Integer maxPreparedStmtCount)
        (“max_prepared_stmt_count”)
        Parameters:
        maxPreparedStmtCount - the value to set
        Returns:
        this builder
      • connectTimeout

        public ConfigurationVariables.Builder connectTimeout​(Integer connectTimeout)
        The number of seconds that the mysqld server waits for a connect packet before responding with Bad handshake.

        connectTimeout corresponds to the MySQL system variable [connect_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_connect_timeout)

        Increasing the connect_timeout value might help if clients frequently encounter errors of the form "Lost connection to MySQL server at 'XXX', system error: errno".

        Parameters:
        connectTimeout - the value to set
        Returns:
        this builder
      • cteMaxRecursionDepth

        public ConfigurationVariables.Builder cteMaxRecursionDepth​(Long cteMaxRecursionDepth)
        (“cte_max_recursion_depth”)
        Parameters:
        cteMaxRecursionDepth - the value to set
        Returns:
        this builder
      • generatedRandomPasswordLength

        public ConfigurationVariables.Builder generatedRandomPasswordLength​(Integer generatedRandomPasswordLength)
        (“generated_random_password_length”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        generatedRandomPasswordLength - the value to set
        Returns:
        this builder
      • informationSchemaStatsExpiry

        public ConfigurationVariables.Builder informationSchemaStatsExpiry​(Integer informationSchemaStatsExpiry)
        (“information_schema_stats_expiry”)
        Parameters:
        informationSchemaStatsExpiry - the value to set
        Returns:
        this builder
      • innodbBufferPoolDumpPct

        public ConfigurationVariables.Builder innodbBufferPoolDumpPct​(Integer innodbBufferPoolDumpPct)
        Specifies the percentage of the most recently used pages for each buffer pool to read out and dump.

        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).

        The range is 1 to 100. The default value is 25.

        For example, if there are 4 buffer pools with 100 pages each, and innodb_buffer_pool_dump_pct is set to 25, the 25 most recently used pages from each buffer pool are dumped.

        Parameters:
        innodbBufferPoolDumpPct - the value to set
        Returns:
        this builder
      • innodbBufferPoolInstances

        public ConfigurationVariables.Builder innodbBufferPoolInstances​(Integer innodbBufferPoolInstances)
        (“innodb_buffer_pool_instances”)
        Parameters:
        innodbBufferPoolInstances - the value to set
        Returns:
        this builder
      • innodbDdlBufferSize

        public ConfigurationVariables.Builder innodbDdlBufferSize​(Long innodbDdlBufferSize)
        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)
        Parameters:
        innodbDdlBufferSize - the value to set
        Returns:
        this builder
      • innodbDdlThreads

        public ConfigurationVariables.Builder innodbDdlThreads​(Integer innodbDdlThreads)
        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)
        Parameters:
        innodbDdlThreads - the value to set
        Returns:
        this builder
      • innodbFtMaxTokenSize

        public ConfigurationVariables.Builder innodbFtMaxTokenSize​(Integer innodbFtMaxTokenSize)
        (“innodb_ft_max_token_size”)
        Parameters:
        innodbFtMaxTokenSize - the value to set
        Returns:
        this builder
      • innodbFtMinTokenSize

        public ConfigurationVariables.Builder innodbFtMinTokenSize​(Integer innodbFtMinTokenSize)
        (“innodb_ft_min_token_size”)
        Parameters:
        innodbFtMinTokenSize - the value to set
        Returns:
        this builder
      • innodbFtNumWordOptimize

        public ConfigurationVariables.Builder innodbFtNumWordOptimize​(Integer innodbFtNumWordOptimize)
        (“innodb_ft_num_word_optimize”)
        Parameters:
        innodbFtNumWordOptimize - the value to set
        Returns:
        this builder
      • innodbLockWaitTimeout

        public ConfigurationVariables.Builder innodbLockWaitTimeout​(Integer innodbLockWaitTimeout)
        (“innodb_lock_wait_timeout”)
        Parameters:
        innodbLockWaitTimeout - the value to set
        Returns:
        this builder
      • innodbMaxPurgeLag

        public ConfigurationVariables.Builder innodbMaxPurgeLag​(Long innodbMaxPurgeLag)
        The desired maximum purge lag in terms of transactions.

        InnoDB maintains a list of transactions that have index records delete-marked by UPDATE or DELETE operations. The length of the list is the purge lag.

        If this value is exceeded, a delay is imposed on INSERT, UPDATE, and DELETE operations to allow time for purge to catch up.

        The default value is 0, which means there is no maximum purge lag and no delay.

        innodbMaxPurgeLag corresponds to the MySQL server system variable [innodb_max_purge_lag](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_max_purge_lag).

        Parameters:
        innodbMaxPurgeLag - the value to set
        Returns:
        this builder
      • innodbMaxPurgeLagDelay

        public ConfigurationVariables.Builder innodbMaxPurgeLagDelay​(Integer innodbMaxPurgeLagDelay)
        The maximum delay in microseconds for the delay imposed when the innodb_max_purge_lag threshold is exceeded.

        The specified innodb_max_purge_lag_delay value is an upper limit on the delay period.

        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).

        Parameters:
        innodbMaxPurgeLagDelay - the value to set
        Returns:
        this builder
      • interactiveTimeout

        public ConfigurationVariables.Builder interactiveTimeout​(Integer interactiveTimeout)
        The number of seconds the server waits for activity on an interactive connection before closing it.

        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)

        Parameters:
        interactiveTimeout - the value to set
        Returns:
        this builder
      • innodbStatsPersistentSamplePages

        public ConfigurationVariables.Builder innodbStatsPersistentSamplePages​(Long innodbStatsPersistentSamplePages)
        The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.

        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)

        innodb_stats_persistent_sample_pages only applies when innodb_stats_persistent is enabled for a table; when innodb_stats_persistent is disabled, innodb_stats_transient_sample_pages applies instead.

        Parameters:
        innodbStatsPersistentSamplePages - the value to set
        Returns:
        this builder
      • innodbStatsTransientSamplePages

        public ConfigurationVariables.Builder innodbStatsTransientSamplePages​(Long innodbStatsTransientSamplePages)
        The number of index pages to sample when estimating cardinality and other statistics for an indexed column, such as those calculated by ANALYZE TABLE.

        innodbStatsTransientSamplePages corresponds to the MySQL InnoDB system variable [innodb_stats_transient_sample_pages](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_stats_transient_sample_pages)

        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.

        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.

        Parameters:
        innodbStatsTransientSamplePages - the value to set
        Returns:
        this builder
      • innodbStrictMode

        public ConfigurationVariables.Builder innodbStrictMode​(Boolean innodbStrictMode)
        When you enable innodbStrictMode, the InnoDB storage engine returns errors instead of warnings for invalid or incompatible table options.

        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)

        Parameters:
        innodbStrictMode - the value to set
        Returns:
        this builder
      • maxAllowedPacket

        public ConfigurationVariables.Builder maxAllowedPacket​(Integer maxAllowedPacket)
        The maximum size of one packet or any generated/intermediate string.

        This is the mysql variable "max_allowed_packet".

        Parameters:
        maxAllowedPacket - the value to set
        Returns:
        this builder
      • maxExecutionTime

        public ConfigurationVariables.Builder maxExecutionTime​(Long maxExecutionTime)
        (“max_execution_time”)
        Parameters:
        maxExecutionTime - the value to set
        Returns:
        this builder
      • mysqlxConnectTimeout

        public ConfigurationVariables.Builder mysqlxConnectTimeout​(Integer mysqlxConnectTimeout)
        The number of seconds X Plugin waits for the first packet to be received from newly connected clients.

        mysqlxConnectTimeout corresponds to the MySQL X Plugin system variable [mysqlx_connect_timeout](https://dev.mysql.com/doc/refman/8.0/en/x-plugin-options-system-variables.html#sysvar_mysqlx_connect_timeout)

        Parameters:
        mysqlxConnectTimeout - the value to set
        Returns:
        this builder
      • mysqlxDocumentIdUniquePrefix

        public ConfigurationVariables.Builder mysqlxDocumentIdUniquePrefix​(Integer mysqlxDocumentIdUniquePrefix)
        (“mysqlx_document_id_unique_prefix”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        mysqlxDocumentIdUniquePrefix - the value to set
        Returns:
        this builder
      • mysqlxIdleWorkerThreadTimeout

        public ConfigurationVariables.Builder mysqlxIdleWorkerThreadTimeout​(Integer mysqlxIdleWorkerThreadTimeout)
        (“mysqlx_idle_worker_thread_timeout”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        mysqlxIdleWorkerThreadTimeout - the value to set
        Returns:
        this builder
      • mysqlxInteractiveTimeout

        public ConfigurationVariables.Builder mysqlxInteractiveTimeout​(Integer mysqlxInteractiveTimeout)
        The number of seconds to wait for interactive clients to timeout.

        mysqlxInteractiveTimeout corresponds to the MySQL X Plugin system variable. [mysqlx_interactive_timeout](https://dev.mysql.com/doc/refman/8.0/en/x-plugin-options-system-variables.html#sysvar_mysqlx_interactive_timeout)

        Parameters:
        mysqlxInteractiveTimeout - the value to set
        Returns:
        this builder
      • mysqlxMaxAllowedPacket

        public ConfigurationVariables.Builder mysqlxMaxAllowedPacket​(Integer mysqlxMaxAllowedPacket)
        The maximum size of network packets that can be received by X Plugin.

        This is the mysql variable "mysqlx_max_allowed_packet".

        Parameters:
        mysqlxMaxAllowedPacket - the value to set
        Returns:
        this builder
      • mysqlxMinWorkerThreads

        public ConfigurationVariables.Builder mysqlxMinWorkerThreads​(Integer mysqlxMinWorkerThreads)
        (“mysqlx_min_worker_threads”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        mysqlxMinWorkerThreads - the value to set
        Returns:
        this builder
      • mysqlxReadTimeout

        public ConfigurationVariables.Builder mysqlxReadTimeout​(Integer mysqlxReadTimeout)
        The number of seconds that X Plugin waits for blocking read operations to complete.

        After this time, if the read operation is not successful, X Plugin closes the connection and returns a warning notice with the error code ER_IO_READ_ERROR to the client application.

        mysqlxReadTimeout corresponds to the MySQL X Plugin system variable [mysqlx_read_timeout](https://dev.mysql.com/doc/refman/8.0/en/x-plugin-options-system-variables.html#sysvar_mysqlx_read_timeout)

        Parameters:
        mysqlxReadTimeout - the value to set
        Returns:
        this builder
      • mysqlxWaitTimeout

        public ConfigurationVariables.Builder mysqlxWaitTimeout​(Integer mysqlxWaitTimeout)
        The number of seconds that X Plugin waits for activity on a connection.

        mysqlxWaitTimeout corresponds to the MySQL X Plugin system variable. [mysqlx_wait_timeout](https://dev.mysql.com/doc/refman/8.0/en/x-plugin-options-system-variables.html#sysvar_mysqlx_wait_timeout)

        Parameters:
        mysqlxWaitTimeout - the value to set
        Returns:
        this builder
      • mysqlxWriteTimeout

        public ConfigurationVariables.Builder mysqlxWriteTimeout​(Integer mysqlxWriteTimeout)
        The number of seconds that X Plugin waits for blocking write operations to complete.

        After this time, if the write operation is not successful, X Plugin closes the connection.

        mysqlxReadmysqlxWriteTimeoutTimeout corresponds to the MySQL X Plugin system variable [mysqlx_write_timeout](https://dev.mysql.com/doc/refman/8.0/en/x-plugin-options-system-variables.html#sysvar_mysqlx_write_timeout)

        Parameters:
        mysqlxWriteTimeout - the value to set
        Returns:
        this builder
      • netReadTimeout

        public ConfigurationVariables.Builder netReadTimeout​(Integer netReadTimeout)
        The number of seconds to wait for more data from a connection before aborting the read.

        netReadTimeout corresponds to the MySQL system variable [net_read_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_net_read_timeout)

        Parameters:
        netReadTimeout - the value to set
        Returns:
        this builder
      • netWriteTimeout

        public ConfigurationVariables.Builder netWriteTimeout​(Integer netWriteTimeout)
        The number of seconds to wait for a block to be written to a connection before aborting the write.

        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)

        Parameters:
        netWriteTimeout - the value to set
        Returns:
        this builder
      • parserMaxMemSize

        public ConfigurationVariables.Builder parserMaxMemSize​(Long parserMaxMemSize)
        (“parser_max_mem_size”)
        Parameters:
        parserMaxMemSize - the value to set
        Returns:
        this builder
      • queryAllocBlockSize

        public ConfigurationVariables.Builder queryAllocBlockSize​(Long queryAllocBlockSize)
        (“query_alloc_block_size”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        queryAllocBlockSize - the value to set
        Returns:
        this builder
      • queryPreallocSize

        public ConfigurationVariables.Builder queryPreallocSize​(Long queryPreallocSize)
        (“query_prealloc_size”) DEPRECATED – variable should not be settable and will be ignored
        Parameters:
        queryPreallocSize - the value to set
        Returns:
        this builder
      • regexpTimeLimit

        public ConfigurationVariables.Builder regexpTimeLimit​(Integer regexpTimeLimit)
        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)
        Parameters:
        regexpTimeLimit - the value to set
        Returns:
        this builder
      • tmpTableSize

        public ConfigurationVariables.Builder tmpTableSize​(Long tmpTableSize)
        The maximum size of internal in-memory temporary tables.

        This variable does not apply to user-created MEMORY tables.

        tmp_table_size corresponds to the MySQL system variable [tmp_table_size](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_tmp_table_size)

        Parameters:
        tmpTableSize - the value to set
        Returns:
        this builder
      • mysqlxDeflateDefaultCompressionLevel

        public ConfigurationVariables.Builder mysqlxDeflateDefaultCompressionLevel​(Integer mysqlxDeflateDefaultCompressionLevel)
        Set the default compression level for the deflate algorithm.

        (“mysqlx_deflate_default_compression_level”)

        Parameters:
        mysqlxDeflateDefaultCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlxDeflateMaxClientCompressionLevel

        public ConfigurationVariables.Builder mysqlxDeflateMaxClientCompressionLevel​(Integer mysqlxDeflateMaxClientCompressionLevel)
        Limit the upper bound of accepted compression levels for the deflate algorithm.

        (“mysqlx_deflate_max_client_compression_level”)

        Parameters:
        mysqlxDeflateMaxClientCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlxLz4MaxClientCompressionLevel

        public ConfigurationVariables.Builder mysqlxLz4MaxClientCompressionLevel​(Integer mysqlxLz4MaxClientCompressionLevel)
        Limit the upper bound of accepted compression levels for the lz4 algorithm.

        (“mysqlx_lz4_max_client_compression_level”)

        Parameters:
        mysqlxLz4MaxClientCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlxLz4DefaultCompressionLevel

        public ConfigurationVariables.Builder mysqlxLz4DefaultCompressionLevel​(Integer mysqlxLz4DefaultCompressionLevel)
        Set the default compression level for the lz4 algorithm.

        (“mysqlx_lz4_default_compression_level”)

        Parameters:
        mysqlxLz4DefaultCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlxZstdMaxClientCompressionLevel

        public ConfigurationVariables.Builder mysqlxZstdMaxClientCompressionLevel​(Integer mysqlxZstdMaxClientCompressionLevel)
        Limit the upper bound of accepted compression levels for the zstd algorithm.

        (“mysqlx_zstd_max_client_compression_level”)

        Parameters:
        mysqlxZstdMaxClientCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlxZstdDefaultCompressionLevel

        public ConfigurationVariables.Builder mysqlxZstdDefaultCompressionLevel​(Integer mysqlxZstdDefaultCompressionLevel)
        Set the default compression level for the zstd algorithm.

        (“mysqlx_zstd_default_compression_level”)

        Parameters:
        mysqlxZstdDefaultCompressionLevel - the value to set
        Returns:
        this builder
      • mysqlZstdDefaultCompressionLevel

        public ConfigurationVariables.Builder mysqlZstdDefaultCompressionLevel​(Integer mysqlZstdDefaultCompressionLevel)
        DEPRECATED – typo of mysqlx_zstd_default_compression_level.

        variable will be ignored.

        Parameters:
        mysqlZstdDefaultCompressionLevel - the value to set
        Returns:
        this builder
      • sortBufferSize

        public ConfigurationVariables.Builder sortBufferSize​(Long sortBufferSize)
        Each session that must perform a sort allocates a buffer of this size.

        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)

        Parameters:
        sortBufferSize - the value to set
        Returns:
        this builder
      • waitTimeout

        public ConfigurationVariables.Builder waitTimeout​(Integer waitTimeout)
        The number of seconds the server waits for activity on a noninteractive connection before closing it.

        waitTimeout corresponds to the MySQL system variable. [wait_timeout](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_wait_timeout)

        Parameters:
        waitTimeout - the value to set
        Returns:
        this builder
      • threadPoolDedicatedListeners

        public ConfigurationVariables.Builder threadPoolDedicatedListeners​(Boolean threadPoolDedicatedListeners)
        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.

        Parameters:
        threadPoolDedicatedListeners - the value to set
        Returns:
        this builder
      • threadPoolMaxTransactionsLimit

        public ConfigurationVariables.Builder threadPoolMaxTransactionsLimit​(Integer threadPoolMaxTransactionsLimit)
        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.

        Parameters:
        threadPoolMaxTransactionsLimit - the value to set
        Returns:
        this builder
      • timeZone

        public ConfigurationVariables.Builder timeZone​(String timeZone)
        Initializes the time zone for each client that connects.

        This corresponds to the MySQL System Variable "time_zone".

        The values can be given in one of the following formats, none of which are case-sensitive:

        - As a string indicating an offset from UTC of the form [H]H:MM, prefixed with a + or -, such as '+10:00', '-6:00', or '+05:30'. The permitted range is '-13:59' to '+14:00', inclusive. - As a named time zone, as defined by the "IANA Time Zone database", such as 'Europe/Helsinki', 'US/Eastern', 'MET', or 'UTC'.

        Parameters:
        timeZone - the value to set
        Returns:
        this builder
      • blockEncryptionMode

        public ConfigurationVariables.Builder blockEncryptionMode​(String blockEncryptionMode)
        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.

        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)

        Parameters:
        blockEncryptionMode - the value to set
        Returns:
        this builder
      • binlogGroupCommitSyncDelay

        public ConfigurationVariables.Builder binlogGroupCommitSyncDelay​(Integer binlogGroupCommitSyncDelay)
        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.

        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)

        Parameters:
        binlogGroupCommitSyncDelay - the value to set
        Returns:
        this builder
      • binlogGroupCommitSyncNoDelayCount

        public ConfigurationVariables.Builder binlogGroupCommitSyncNoDelayCount​(Integer binlogGroupCommitSyncNoDelayCount)
        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.

        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)

        Parameters:
        binlogGroupCommitSyncNoDelayCount - the value to set
        Returns:
        this builder
      • replicaNetTimeout

        public ConfigurationVariables.Builder replicaNetTimeout​(Integer replicaNetTimeout)
        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.

        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)

        Parameters:
        replicaNetTimeout - the value to set
        Returns:
        this builder
      • requireSecureTransport

        public ConfigurationVariables.Builder requireSecureTransport​(Boolean requireSecureTransport)
        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.

        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)

        Parameters:
        requireSecureTransport - the value to set
        Returns:
        this builder
      • innodbRedoLogCapacity

        public ConfigurationVariables.Builder innodbRedoLogCapacity​(Long innodbRedoLogCapacity)
        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.

        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)

        Parameters:
        innodbRedoLogCapacity - the value to set
        Returns:
        this builder
      • threadPoolTransactionDelay

        public ConfigurationVariables.Builder threadPoolTransactionDelay​(Integer threadPoolTransactionDelay)
        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.

        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)

        Parameters:
        threadPoolTransactionDelay - the value to set
        Returns:
        this builder
      • threadPoolQueryThreadsPerGroup

        public ConfigurationVariables.Builder threadPoolQueryThreadsPerGroup​(Integer threadPoolQueryThreadsPerGroup)
        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.

        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)

        Parameters:
        threadPoolQueryThreadsPerGroup - the value to set
        Returns:
        this builder
      • explainFormat

        public ConfigurationVariables.Builder explainFormat​(ConfigurationVariables.ExplainFormat explainFormat)
        This variable determines the default output format used by EXPLAIN in the absence of a FORMAT option when displaying a query execution plan.

        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).

        Parameters:
        explainFormat - the value to set
        Returns:
        this builder
      • explicitDefaultsForTimestamp

        public ConfigurationVariables.Builder explicitDefaultsForTimestamp​(Boolean explicitDefaultsForTimestamp)
        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.

        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)

        Parameters:
        explicitDefaultsForTimestamp - the value to set
        Returns:
        this builder
      • sqlGenerateInvisiblePrimaryKey

        public ConfigurationVariables.Builder sqlGenerateInvisiblePrimaryKey​(Boolean sqlGenerateInvisiblePrimaryKey)
        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.

        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).

        Parameters:
        sqlGenerateInvisiblePrimaryKey - the value to set
        Returns:
        this builder
      • temptableMaxRam

        public ConfigurationVariables.Builder temptableMaxRam​(Long temptableMaxRam)
        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, \u201cInternal Temporary Table Use in MySQL\u201d.

        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).

        Parameters:
        temptableMaxRam - the value to set
        Returns:
        this builder
      • innodbChangeBuffering

        public ConfigurationVariables.Builder innodbChangeBuffering​(ConfigurationVariables.InnodbChangeBuffering innodbChangeBuffering)
        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.

        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).

        Parameters:
        innodbChangeBuffering - the value to set
        Returns:
        this builder
      • innodbAdaptiveHashIndex

        public ConfigurationVariables.Builder innodbAdaptiveHashIndex​(Boolean innodbAdaptiveHashIndex)
        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.

        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).

        Parameters:
        innodbAdaptiveHashIndex - the value to set
        Returns:
        this builder
      • innodbUndoLogTruncate

        public ConfigurationVariables.Builder innodbUndoLogTruncate​(Boolean innodbUndoLogTruncate)
        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.

        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).

        Parameters:
        innodbUndoLogTruncate - the value to set
        Returns:
        this builder
      • tableDefinitionCache

        public ConfigurationVariables.Builder tableDefinitionCache​(Integer tableDefinitionCache)
        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.

        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)

        Parameters:
        tableDefinitionCache - the value to set
        Returns:
        this builder
      • tableOpenCache

        public ConfigurationVariables.Builder tableOpenCache​(Integer tableOpenCache)
        The number of open tables for all threads.

        Increasing this value increases the number of file descriptors that mysqld requires.

        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)

        Parameters:
        tableOpenCache - the value to set
        Returns:
        this builder
      • relayLogSpaceLimit

        public ConfigurationVariables.Builder relayLogSpaceLimit​(Long relayLogSpaceLimit)
        The maximum amount of space to use for all relay logs.

        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).

        Parameters:
        relayLogSpaceLimit - the value to set
        Returns:
        this builder
      • optimizerSwitch

        public ConfigurationVariables.Builder optimizerSwitch​(String optimizerSwitch)
        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.

        Setting hypergraph_optimizer=on for cloud builds below 9.0.0 will fail.

        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).

        Parameters:
        optimizerSwitch - the value to set
        Returns:
        this builder
      • replicaTypeConversions

        public ConfigurationVariables.Builder replicaTypeConversions​(String replicaTypeConversions)
        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.

        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.

        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).

        Parameters:
        replicaTypeConversions - the value to set
        Returns:
        this builder
      • replicaParallelWorkers

        public ConfigurationVariables.Builder replicaParallelWorkers​(Integer replicaParallelWorkers)
        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.)

        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).

        Parameters:
        replicaParallelWorkers - the value to set
        Returns:
        this builder
      • skipNameResolve

        public ConfigurationVariables.Builder skipNameResolve​(Boolean skipNameResolve)
        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, \u201cDNS Lookups and the Host Cache\u201d.

        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).

        Parameters:
        skipNameResolve - the value to set
        Returns:
        this builder
      • maxUserConnections

        public ConfigurationVariables.Builder maxUserConnections​(Long maxUserConnections)
        The maximum number of simultaneous connections permitted to any given MySQL user account.

        A value of 0 (the default) means \u201cno limit.\u201d 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.

        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).

        Parameters:
        maxUserConnections - the value to set
        Returns:
        this builder
      • joinBufferSize

        public ConfigurationVariables.Builder joinBufferSize​(Long joinBufferSize)
        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.

        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).

        Parameters:
        joinBufferSize - the value to set
        Returns:
        this builder
      • maxSeeksForKey

        public ConfigurationVariables.Builder maxSeeksForKey​(Long maxSeeksForKey)
        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, \u201cSHOW INDEX Statement\u201d). By setting this to a low value (say, 100), you can force MySQL to prefer indexes instead of table scans.

        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).

        Parameters:
        maxSeeksForKey - the value to set
        Returns:
        this builder
      • rangeOptimizerMaxMemSize

        public ConfigurationVariables.Builder rangeOptimizerMaxMemSize​(Long rangeOptimizerMaxMemSize)
        The limit on memory consumption for the range optimizer.

        A value of 0 means \u201cno limit.\u201d 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.

        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).

        Parameters:
        rangeOptimizerMaxMemSize - the value to set
        Returns:
        this builder
      • autoIncrementIncrement

        public ConfigurationVariables.Builder autoIncrementIncrement​(Integer autoIncrementIncrement)
        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.

        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).

        Parameters:
        autoIncrementIncrement - the value to set
        Returns:
        this builder
      • autoIncrementOffset

        public ConfigurationVariables.Builder autoIncrementOffset​(Integer autoIncrementOffset)
        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.

        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).

        Parameters:
        autoIncrementOffset - the value to set
        Returns:
        this builder
      • innodbAutoincLockMode

        public ConfigurationVariables.Builder innodbAutoincLockMode​(Integer innodbAutoincLockMode)
        The lock mode to use for generating auto-increment values.

        Permissible values are 0, 1, or 2, for traditional, consecutive, or interleaved, respectively.

        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).

        Parameters:
        innodbAutoincLockMode - the value to set
        Returns:
        this builder
      • innodbRollbackOnTimeout

        public ConfigurationVariables.Builder innodbRollbackOnTimeout​(Boolean innodbRollbackOnTimeout)
        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.

        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).

        Parameters:
        innodbRollbackOnTimeout - the value to set
        Returns:
        this builder
      • innodbOnlineAlterLogMaxSize

        public ConfigurationVariables.Builder innodbOnlineAlterLogMaxSize​(Long innodbOnlineAlterLogMaxSize)
        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.

        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).

        Parameters:
        innodbOnlineAlterLogMaxSize - the value to set
        Returns:
        this builder
      • innodbSortBufferSize

        public ConfigurationVariables.Builder innodbSortBufferSize​(Integer innodbSortBufferSize)
        This variable defines:

        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.

        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.

        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).

        Parameters:
        innodbSortBufferSize - the value to set
        Returns:
        this builder
      • innodbNumaInterleave

        public ConfigurationVariables.Builder innodbNumaInterleave​(Boolean innodbNumaInterleave)
        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.

        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).

        Parameters:
        innodbNumaInterleave - the value to set
        Returns:
        this builder
      • threadPoolSize

        public ConfigurationVariables.Builder threadPoolSize​(Integer threadPoolSize)
        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.

        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).

        Parameters:
        threadPoolSize - the value to set
        Returns:
        this builder
      • longQueryTime

        public ConfigurationVariables.Builder longQueryTime​(Integer longQueryTime)
        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.

        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).

        Parameters:
        longQueryTime - the value to set
        Returns:
        this builder