All pages
Powered by GitBook
1 of 19

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

System Variable Differences Between MariaDB and MySQL - Unmaintained Series

The following articles list the differences between the system variables available in MariaDB and in MySQL for each of the major MariaDB series that are no longer maintained.

System Variable Differences Between MariaDB 11.3 and MySQL 8.0

The following is a comparison of variables that either appear only in MariaDB 11.3 or MySQL 8.0, or have different default settings in MariaDB 11.3, and MySQL 8.0. The releases MariaDB 11.3.1 and MySQL 8.0.35, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 11.3 and MySQL 8.0 and Function Differences Between MariaDB 11.3 and MySQL 8.0

Comparison Table

Variable

See Also

MariaDB 11.3 Default

MySQL 8.0 Default

Notes

activate_all_roles_on_login

-

OFF

Determines whether to automatically activate on login.

admin*

-

*

MySQL admin connections.

0

-

Only available as an option in MySQL.

DEFAULT

-

MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

100.0000

-

Percentage of rows from the table will sample to collect table statistics.

*

-

The Aria storage engine is only available in MariaDB.

authentication_policy

-

*,,

MySQL authentication policy.

auto_generate_certs

-

ON

Whether to automatically generate SSL key and certificate files.

avoid_temporal_upgrade

-

OFF

Determines whether ALTER TABLE implicitly upgrades temporal columns.

Autosized

Autosized

MariaDB and MySQL have different autosizing algorithms.

OFF

-

When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

ON

-

Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

NULL

-

A system variable as well as an option in MariaDB 11.

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

NULL

-

A system variable as well as an option in MariaDB 11.

binlog_encryption

-

OFF

MySQL name for .

binlog_error_action

ABORT_SERVER

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

binlog_expire_logs_auto_purge

-

ON

Enables or disables automatic purging of binary log files.

0

2592000

Sets the binary log expiration period in seconds

16184

-

For setting the size of the file cache for the .

MIXED

ROW

MariaDB and MySQL have differing .

binlog_group_commit_sync_delay

0

MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

binlog_group_commit_sync_no_delay_count

0

MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

binlog_gtid_simple_recovery

-

ON

MySQL-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

Determines whether transactions may be committed in parallel.

binlog_rotate_encryption_master_key_at_startup

-

OFF

Specifically for use with MySQL binary key encryption.

NO_LOG

MINIMAL

Determines the amount of table metadata added to the binary log with row-based logging.

binlog_row_value_options

-

(empty)

Permits an alternative binlog format for JSON document updates.

binlog_rows_query_log_events

-

OFF

MySQL-only variable for logging extra information in row-based logging.

binlog_transaction_compression*

-

*

MySQL variables relating to binary log compression.

binlog_transaction_dependency_history_size

-

25000

Maximum number of row hashes kept for looking up transactions that last modified a given row.

binlog_transaction_dependency_tracking

-

COMMIT_ORDER

For determining how to best use the slave's multithreaded applier.

caching_sha2_password*

-

*

For use with MySQL's SHA-256 authentication with caching.

latin1 or utf8

utf8mb4

MySQL 8.0 defaults to the utf8mb4 .

Empty

-

Overrides for character set default collations.

ON

-

Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

check_proxy_users

OFF

MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

latin1_swedish_ci or utf8_general_ci

utf8mb4_0900_ai_ci

MySQL 8.0 defaults to the utf8mb4 .

100

-

MariaDB supports .

6

-

MariaDB supports .

DEFAULT_STRATEGY

-

MariaDB supports .

OFF

-

MariaDB supports .

connection_memory_chunk_size

-

8192

Chunk size for updates to the Global_connection_memory counter.

connection_memory_limit

-

18446744073709551615

Maximum memory for a single user connection.

create_admin_listener_thread

-

OFF

MySQL-only variable for whether to use a dedicated listening thread for admin network interface connections.

cte_max_recursion_depth

-

1000

When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

default_authentication_plugin

-

caching_sha2_password

MySQL 8 introduced a new authentication plugin.

default_collation_for_utf8mb4

-

utf8mb4_0900_ai_ci

For internal use in MySQL 8 replication.

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disabled_storage_engines

empty

MySQL-only variable for disabling specific storage engines.

OFF

ON

MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL-only variable for adding end markers to JSON output.

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

0

200

Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

OFF

ON

MySQL enables the event scheduler by default.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

1048576

1024

MariaDB increases the maximum length for a result from 1K to 1M.

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

64

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

gtid_executed_compression_period

-

1000

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

YES

-

MySQL has removed the function.

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

YES

-

MySQL has removed the .

have_statement_timeout

-

Whether MySQL's statement execution timeout feature is available.

YES

DISABLED

MySQL has removed symlink support.

histogram_generation_max_mem_size

-

20000000

Added when MySQL 8 introduced . MariaDB uses

0

-

MariaDB introduced .

JSON_HB

-

MariaDB introduced .

0

-

Time in seconds that the server waits for idle read-only transactions.

0

-

Time in seconds that the server waits for idle transactions.

0

-

Time in seconds that the server waits for idle write transactions.

OFF

-

Ignored and removed in MySQL 8.

1000

-

Controls the optimization.

0

-

Set to 1 if you are in a transaction, and 0 if not.

information_schema_stats_expiry

-

86400

Time until MySQL Information Schema cached statistics expire.

10.000000

10

Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

OFF

ON

Defaulting to OFF is a performance improvement especially for , , , or operations

-

150000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

innodb_api_*

-

*

Specific to MySQL's memcached, removed in MariaDB 10.2.

1

2

MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

innodb_change*

*

The was removed in MariaDB 11.0.

full_crc32

crc32

fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

*

-

Introduced with MariaDB's .

-

5000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

Full

-

How to report deadlocks.

innodb_dedicated_server

-

OFF

MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

1

-

Default encryption key id used for table encryption. See .

innodb_directories

-

(empty)

Used to search for tablespace files when moving or restoring a new location.

OFF

-

Tell InnoDB to stop any writes to disk.

1

-

See MariaDB's .

600

-

MariaDB's fatal semaphore timeout is configurable.

O_DIRECT

fsync

MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

1

0

MySQL 8 by default now assumes the use of an SSD device.

OFF

-

If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

OFF

-

MariaDB has support for .

add_drop_reorder

-

See .

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

-

2

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

innodb_log_spin_*

-

*

MySQL variables for constraining CPU usage while waiting for flushed redo.

innodb_log_wait_for_flush_spin_hwm

-

*

MySQL variable for constraining CPU usage while waiting for flushed redo.

75

90

MySQL 8 increased the default to 90.

0

10

MySQL 8 increased the default to 10.

10485760

1073741824

MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

Autosized (2000)

Autosized (4000)

In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

OFF

-

MariaDB includes the Facebook prefix index queries optimization.

innodb_print_ddl_logs

-

OFF

MySQL option for writing DDL logs to stderr.

1000

300

Increased to 1000 in MariaDB after benchmarking found this value to help reduce purge lag without having a significant impact on workload throughput.

ON

-

Whether to set tables to read-only.

innodb_redo_log_encrypt

-

OFF

MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

128

Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

4

6

MariaDB changed the default from 6 to 4 based on extensive benchmarking.

0

-

MariaDB option to control the calculation of new statistics.

ON

-

Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

10000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

OFF

-

MariaDB option for shrinking the temporary tablespace.

innodb_undo_log_encrypt

-

OFF

MySQL option for encrypting undo logs residing in separate undo tablespaces.

OFF

ON

MySQL 8 changes the default to ON, marking larger undo logs for truncation.

3

2

Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

ON

-

are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

internal_tmp_disk_storage_engine

-

INNODB

MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

internal_tmp_mem_storage_engine

-

TEMPTABLE

MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

keyring_operations

-

ON

Whether MySQL 8's keyring operations are enabled.

-

empty

MariaDB and MySQL have different .

ON

OFF

MySQL no longer supports LOAD DATA LOCAL by default.

86400

31536000

MariaDB has reduced the timeout for acquiring metadata locks.

OFF

ON

MySQL 8 enables the by default.

OFF

-

MariaDB setting for whether or not the can be compressed.

256

-

Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

sp

-

Disable logging of certain statements to the .

log_error_services

-

log_filter_internal; log_sink_internal

Components to enable for MySQL error logging.

log_error_verbosity

-

3

MySQL variable for setting verbosity of error, warning, and note messages in the error log.

OFF

ON

MySQL 8 has by default enabled of updates a slave receives from a master.

ON

OFF

MariaDB logs slow admin statements to the by default.

admin,call,slave,sp

-

Disable logging of certain statements to the .

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

0

-

Previously named (still an alias).

0

-

Previously named (still an alias).

host_name-slow.log

-

Previously named (still an alias).

10.000000

-

Previously named (still an alias).

10

-

Max numbers of warnings printed to slow query log per statement.

ON

OFF

MariaDB logs slow slave statements to the by default.

empty

-

Controls information to be added to the . See also .

log_statements_unsafe_for_binlog

-

ON

MySQL setting for controlling whether binlog warnings are written to the error log.

log_syslog*

platform-dependent

-

MySQL variables with settings for writing to syslog.

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

log_timestamps

-

UTC

MySQL-only variable controlling the timezone for certain logging conditions.

2

-

MySQL 8 has replaced with log_error_verbosity.

mandatory_roles

-

(empty)

MySQL variable for assigning to all users.

master_info_repository

-

TABLE

Whether slave logs master status and connection info to a table or a file.

16M

64M

64

1024

Specifies the maximum number of messages stored for display by and statements.

max_execution_time

-

0

MySQL renamed the max_statement_time variable.

64

1024

Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

4294967295

-

Maximum number of failed connections attempts before no more are permitted.

max_points_in_geometry

-

65536

Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

4294967295

-

Maximum number of iterations when executing recursive queries.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

9223372036854775807

-

Amount of memory a single user session is allowed to allocate.

0

-

Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

BACKUP,QUICK

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

mysql_native_password_proxy_users

-

OFF

Whether MySQL's authentication plugin supports proxy users. I

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

mysqlx+*

-

*

MySQL's X plugin related variables.

basic,explain

-

Verbosity level for note-warnings given to the user.

ngram_token_size

-

2

Sets the n-gram token size for MySQL's n-gram full-text parser.

offline_mode

-

OFF

MySQL settting for specifying whether the server should run in offline mode.

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

OFF

-

MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

8

-

If the optimizer needs to enumerate a join prefix of this size or larger, then it will try aggressively prune away the search space.

32000

-

The maximum weight of the SEL_ARG graph.

16000

-

Maximum number of SEL_ARG objects created when optimizing a range.

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace_*

-

*

MySQL has more settings for optimizer tracing.

4

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

original_commit_timestamp

-

*

Used by MySQL 8 for .

parser_max_mem_size

-

4294967295 (32-bit) or 18446744073709547520 (64-bit)

MySQL variable for limiting memory available to the parser.

password_*

-

*

Controls reuse of previous passwords in MySQL.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

One less than the server maturity

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

(empty)

-

Enable for these source networks.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

*

-

MySQL has removed the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

range_optimizer_max_mem_size

-

8388608

MySQL-only variable setting a limit on the range optimizer's memory usage.

rbr_exec_mode

-

STRICT

MySQL-only variable for determining the handling of certain key errors.

0

-

Permits restricting the speed at which the slave reads the binlog from the master.

regexp_*

-

*

Memory and time limits for regular expression matching operations.

relay_log_info_repository

-

TABLE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

ON

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

Only available as an option in MySQL.

empty string

-

See .

empty string

-

See .

result_metadata

-

FULL

Determine whether the server returns result set metadata for connections where this is optional.

8388608

-

See .

rpl_read_size

-

8192

Minimum data in bytes read from the binary and relay log files.

-

-

MariaDB includes without the need to install a plugin.

rpl_stop_slave_timeout

-

31536000

Controls the time that waits before timing out.

*

-

The S3 storage engine is only available in MariaDB.

schema_definition_cache

-

256

Limits the number of schema definition objects kept in the dictionary object cache.

ON

-

Removed in MySQL.

NO

-

MariaDB-only option permitting the restricting of direct setting of a session timestamp..

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

session_track_gtids

-

OFF

MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

autocommit, character_set_client, character_set_connection, character_set_results, redirect_url, time_zone

time_zone, autocommit, character_set_client, character_set_results, character_set_connection

MariaDB supports .

sha256_password_proxy_users

-

OFF

MySQL-only variable determining whether the sha256_password plugin supports proxy users.

show_create_table_verbosity

-

OFF

Option to cause to display ROW_FORMAT in all cases.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

3600

60

MySQL reduced the timeout to 60s.

131072

-

For configuring .

0

-

Only available as an option in MySQL.

0.000000

-

MariaDB setting to abort a query that has taken more than this in seconds to run on the replica.

optimistic

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_parallel_type

-

DATABASE

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_preserve_commit_order

-

OFF

MySQL-only replication variable.

slave_rows_search_algorithms

-

INDEX_SCAN, HASH_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

1213,1205

-

When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

0

-

Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

OFF

-

Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

See .

ssl_fips_mode

-

OFF

Whether FIPS mode is enabled on the server side. Deprecated in MySQL.

ON

-

See .

InnoDB

-

Alias for , removed in MySQL.

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

stored_program_definition_cache

-

256

Limits the number of stored program definition objects kept in the dictionary object cache.

super_read_only

-

OFF

MySQL variable for prohibiting client updates from users with the SUPER privilege.

0

1

MySQL synchronizes all actions to the binary log before they are committed.

1

-

.frm files have been removed in MySQL.

ERROR

-

MariaDB has

DEFAULT

-

MariaDB has

OFF

-

MariaDB has

400

-1 (autosized)

Number of table definitions that can be cached.

8

16

Maximum number of table cache instances.

tablespace_definition_cache

-

256

Limits the number of tablespace definition objects kept in the dictionary object cache.

0

-

Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

0

-

Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

0

-

Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

1

-

Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

temptable_max_ram

-

1GB

Limits the RAM used by MySQL's TempTable storage engine.

Autosized

-1 (autosized)

MariaDB uses an .

0

-

Better precision for the data in the .

0

-

Better precision for the data in the .

60

-

See .

65536

-

See .

1

-

Windows-only. See .

3

-

See .

auto

-

See .

auto

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

299008

Varies

See .

18446744073709551615

-

Max size for data for an internal temporary on-disk MyISAM or Aria table.

16777216

-

Alias for .

transaction_allow_batching

-

OFF

Variable for enabling batching of statements within the same transaction in MySQL Cluster.

transaction_write_set_extraction

-

OFF

Unused MySQL-only variable.

REPEATABLE-READ

-

A MariaDB-only variable, replaced with .

OFF

-

A MariaDB-only variable, replaced with .

preferably_for_queries

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

version_compile_zlib

-

*

Version of the zlib library compiled in.

*

-

Version of the used malloc library.

Varies

-

Permits seeing exactly which version of the source was used for a build.

*

-

Version of the used TLS library.

windowing_high_use_precision

-

*

MySQL option allowing safety to be sacrificed for speed in calculations.

*

-

Galera cluster is only available in MariaDB.

Variable

MariaDB 11.3

MySQL 8.0

Notes

System Variable Differences Between MariaDB 11.2 and MySQL 8.0
Incompatibilities and Feature Differences Between MariaDB 11.3 and MySQL 8.0
Function Differences Between MariaDB 11.3 and MySQL 8.0

System Variable Differences Between MariaDB 5.5 and MySQL 5.5

The following is a comparison of variables that either appear only in MariaDB 5.5, or have different default settings in MariaDB 5.5, and MySQL 5.5. MariaDB and MySQL 5.5.38, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine, uses , and has a different . For this reason, a default implementation of MariaDB 5.5 will use more memory than MySQL 5.5. This can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

    • Set to something very low (16K) as it's not used.

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

See Also

0

-

The Aria storage engine is only available in MariaDB

none

-

The Aria storage engine is only available in MariaDB

0

-

The Aria storage engine is only available in MariaDB

1073741824

-

The Aria storage engine is only available in MariaDB

immediate

-

The Aria storage engine is only available in MariaDB

9223372036853727232

-

The Aria storage engine is only available in MariaDB

ON

-

The Aria storage engine is only available in MariaDB

300

-

The Aria storage engine is only available in MariaDB

134217720

-

The Aria storage engine is only available in MariaDB

100

-

The Aria storage engine is only available in MariaDB

NORMAL

-

The Aria storage engine is only available in MariaDB

1

-

The Aria storage engine is only available in MariaDB

134217728

-

The Aria storage engine is only available in MariaDB

nulls-unequal

-

The Aria storage engine is only available in MariaDB

NEWFILE

-

The Aria storage engine is only available in MariaDB

ON

-

The Aria storage engine is only available in MariaDB

OFF

-

Introduced in for between and MySQL/.

NONE

-

Specifies the type of BINLOG_CHECKSUM_ALG for log events in the .

ON

-

For optimized kernel thread scheduling.

15

-

The Aria storage engine is only available in MariaDB

4

-

The Aria storage engine is only available in MariaDB

50000000

-

The Aria storage engine is only available in MariaDB

10000

-

The Aria storage engine is only available in MariaDB

OFF

-

Disable system thread alarm calls, for debugging or testing

OFF

ON

Controlled by

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

-

Comma-delimited list of directories in the data directory that are not considered as database directories. Only introduced in MySQL 5.6

0

-

Set to 1 if you are in a transaction, and 0 if not.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See .

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

0

-

The number of segments in a key cache. See .

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

''

-

Controls information to be added to the . See also .

OFF

-

Verify binlog checksums when reading events from the binlog on the master.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

DEFAULT

OFF

MyISAM recovery mode.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

unknown

-

Minimum acceptable plugin maturity.

5

-

See .

OFF

-

Whether to strip any comments from the query before searching to see if it exists in the .

OFF

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

8388608

-

See .

OFF

-

See .

ON

-

Verify binlog checksums when the slave SQL thread reads events from the relay log.

60

-

See .

60

-

See .

60

-

Windows-only. See .

3

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

294912

196608 or 262144

See .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

Variable

MySQL 5.5

Notes

Variable

MariaDB 5.5

MySQL 5.5

Notes

8192

-

The Aria storage engine is only available in MariaDB

30

-

The Aria storage engine is only available in MariaDB

1048576

-

The Aria storage engine is only available in MariaDB

MariaDB versus MySQL - Compatibility
System Variable Differences Between MariaDB 10.1 and MySQL 5.7
System Variable Differences Between MariaDB 10.1 and MySQL 5.6
System Variable Differences Between MariaDB 10.0 and MySQL 5.6
MariaDB 5.3
replicating
MariaDB 5.3
MariaDB 5.1
Progress reporting
MariaDB 5.5
wsrep_*

System Variable Differences Between MariaDB 11.2 and MySQL 8.0

The following is a comparison of variables that either appear only in MariaDB 11.2 or MySQL 8.0, or have different default settings in MariaDB 11.2, and MySQL 8.0. The releases MariaDB 11.2.2 and MySQL 8.0.34, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 11.2 and MySQL 8.0 and Function Differences Between MariaDB 11.2 and MySQL 8.0

Comparison Table

Variable

See Also

System Variable Differences Between MariaDB 11.0 and MySQL 8.0

The following is a comparison of variables that either appear only in MariaDB 11.0 or MySQL 8.0, or have different default settings in MariaDB 11.0, and MySQL 8.0. The releases MariaDB 11.0.2 and MySQL 8.0.34, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 11.0 and MySQL 8.0 and Function Differences Between MariaDB 11.0 and MySQL 8.0

Comparison Table

Variable

See Also

MariaDB 11.2 Default

MySQL 8.0 Default

Notes

activate_all_roles_on_login

-

OFF

Determines whether to automatically activate on login.

admin*

-

*

MySQL admin connections.

0

-

Only available as an option in MySQL.

DEFAULT

-

MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

100.0000

-

Percentage of rows from the table will sample to collect table statistics.

*

-

The Aria storage engine is only available in MariaDB.

authentication_policy

-

*,,

MySQL authentication policy.

auto_generate_certs

-

ON

Whether to automatically generate SSL key and certificate files.

avoid_temporal_upgrade

-

OFF

Determines whether ALTER TABLE implicitly upgrades temporal columns.

Autosized

Autosized

MariaDB and MySQL have different autosizing algorithms.

OFF

-

When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

ON

-

Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

NULL

-

A system variable as well as an option in MariaDB 11.

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

NULL

-

A system variable as well as an option in MariaDB 11.

binlog_encryption

-

OFF

MySQL name for .

binlog_error_action

ABORT_SERVER

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

binlog_expire_logs_auto_purge

-

ON

Enables or disables automatic purging of binary log files.

0

2592000

Sets the binary log expiration period in seconds

16184

-

For setting the size of the file cache for the .

MIXED

ROW

MariaDB and MySQL have differing .

binlog_group_commit_sync_delay

0

MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

binlog_group_commit_sync_no_delay_count

0

MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

binlog_gtid_simple_recovery

-

ON

MySQL-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

Determines whether transactions may be committed in parallel.

binlog_rotate_encryption_master_key_at_startup

-

OFF

Specifically for use with MySQL binary key encryption.

NO_LOG

MINIMAL

Determines the amount of table metadata added to the binary log with row-based logging.

binlog_row_value_options

-

(empty)

Permits an alternative binlog format for JSON document updates.

binlog_rows_query_log_events

-

OFF

MySQL-only variable for logging extra information in row-based logging.

binlog_transaction_compression*

-

*

MySQL variables relating to binary log compression.

binlog_transaction_dependency_history_size

-

25000

Maximum number of row hashes kept for looking up transactions that last modified a given row.

binlog_transaction_dependency_tracking

-

COMMIT_ORDER

For determining how to best use the slave's multithreaded applier.

caching_sha2_password*

-

*

For use with MySQL's SHA-256 authentication with caching.

latin1 or utf8

utf8mb4

MySQL 8.0 defaults to the utf8mb4 .

Empty

-

Overrides for character set default collations.

ON

-

Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

check_proxy_users

OFF

MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

latin1_swedish_ci or utf8_general_ci

utf8mb4_0900_ai_ci

MySQL 8.0 defaults to the utf8mb4 .

100

-

MariaDB supports .

6

-

MariaDB supports .

DEFAULT_STRATEGY

-

MariaDB supports .

OFF

-

MariaDB supports .

connection_memory_chunk_size

-

8192

Chunk size for updates to the Global_connection_memory counter.

connection_memory_limit

-

18446744073709551615

Maximum memory for a single user connection.

create_admin_listener_thread

-

OFF

MySQL-only variable for whether to use a dedicated listening thread for admin network interface connections.

cte_max_recursion_depth

-

1000

When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

%Y-%m-%d

-

Unused variable removed in MySQL 8.0

%Y-%m-%d

-

Unused variable removed in MySQL 8.0

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

default_authentication_plugin

-

caching_sha2_password

MySQL 8 introduced a new authentication plugin.

default_collation_for_utf8mb4

-

utf8mb4_0900_ai_ci

For internal use in MySQL 8 replication.

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disabled_storage_engines

empty

MySQL-only variable for disabling specific storage engines.

OFF

ON

MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL-only variable for adding end markers to JSON output.

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

0

200

Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

OFF

ON

MySQL enables the event scheduler by default.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

1048576

1024

MariaDB increases the maximum length for a result from 1K to 1M.

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

64

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

gtid_executed_compression_period

-

1000

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

YES

-

MySQL has removed the function.

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

YES

-

MySQL has removed the .

have_statement_timeout

-

Whether MySQL's statement execution timeout feature is available.

YES

DISABLED

MySQL has removed symlink support.

histogram_generation_max_mem_size

-

20000000

Added when MySQL 8 introduced . MariaDB uses

0

-

MariaDB introduced .

JSON_HB

-

MariaDB introduced .

0

-

Time in seconds that the server waits for idle read-only transactions.

0

-

Time in seconds that the server waits for idle transactions.

0

-

Time in seconds that the server waits for idle write transactions.

OFF

-

Ignored and removed in MySQL 8.

1000

-

Controls the optimization.

0

-

Set to 1 if you are in a transaction, and 0 if not.

information_schema_stats_expiry

-

86400

Time until MySQL Information Schema cached statistics expire.

10.000000

10

Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

OFF

ON

Defaulting to OFF is a performance improvement especially for , , , or operations

-

150000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

innodb_api_*

-

*

Specific to MySQL's memcached, removed in MariaDB 10.2.

1

2

MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

innodb_change*

*

The was removed in MariaDB 11.0.

full_crc32

crc32

fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

*

-

Introduced with MariaDB's .

-

5000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

Full

-

How to report deadlocks.

innodb_dedicated_server

-

OFF

MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

1

-

Default encryption key id used for table encryption. See .

innodb_directories

-

(empty)

Used to search for tablespace files when moving or restoring a new location.

OFF

-

Tell InnoDB to stop any writes to disk.

1

-

See MariaDB's .

600

-

MariaDB's fatal semaphore timeout is configurable.

O_DIRECT

fsync

MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

1

0

MySQL 8 by default now assumes the use of an SSD device.

OFF

-

If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

OFF

-

MariaDB has support for .

add_drop_reorder

-

See .

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

-

2

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

innodb_log_spin_*

-

*

MySQL variables for constraining CPU usage while waiting for flushed redo.

innodb_log_wait_for_flush_spin_hwm

-

*

MySQL variable for constraining CPU usage while waiting for flushed redo.

75

90

MySQL 8 increased the default to 90.

0

10

MySQL 8 increased the default to 10.

10485760

1073741824

MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

Autosized (2000)

Autosized (4000)

In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

OFF

-

MariaDB includes the Facebook prefix index queries optimization.

innodb_print_ddl_logs

-

OFF

MySQL option for writing DDL logs to stderr.

1000

300

Increased to 1000 in MariaDB after benchmarking found this value to help reduce purge lag without having a significant impact on workload throughput.

ON

-

Whether to set tables to read-only.

innodb_redo_log_encrypt

-

OFF

MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

128

Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

4

6

MariaDB changed the default from 6 to 4 based on extensive benchmarking.

0

-

MariaDB option to control the calculation of new statistics.

ON

-

Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

10000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

innodb_undo_log_encrypt

-

OFF

MySQL option for encrypting undo logs residing in separate undo tablespaces.

OFF

ON

MySQL 8 changes the default to ON, marking larger undo logs for truncation.

3

2

Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

ON

-

are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

internal_tmp_disk_storage_engine

-

INNODB

MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

internal_tmp_mem_storage_engine

-

TEMPTABLE

MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

keyring_operations

-

ON

Whether MySQL 8's keyring operations are enabled.

-

empty

MariaDB and MySQL have different .

ON

OFF

MySQL no longer supports LOAD DATA LOCAL by default.

86400

31536000

MariaDB has reduced the timeout for acquiring metadata locks.

OFF

ON

MySQL 8 enables the by default.

OFF

-

MariaDB setting for whether or not the can be compressed.

256

-

Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

sp

-

Disable logging of certain statements to the .

log_error_services

-

log_filter_internal; log_sink_internal

Components to enable for MySQL error logging.

log_error_verbosity

-

3

MySQL variable for setting verbosity of error, warning, and note messages in the error log.

OFF

ON

MySQL 8 has by default enabled of updates a slave receives from a master.

ON

OFF

MariaDB logs slow admin statements to the by default.

admin,call,slave,sp

-

Disable logging of certain statements to the .

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

0

-

Previously named (still an alias).

0

-

Previously named (still an alias).

host_name-slow.log

-

Previously named (still an alias).

10.000000

-

Previously named (still an alias).

10

-

Max numbers of warnings printed to slow query log per statement.

ON

OFF

MariaDB logs slow slave statements to the by default.

empty

-

Controls information to be added to the . See also .

log_statements_unsafe_for_binlog

-

ON

MySQL setting for controlling whether binlog warnings are written to the error log.

log_syslog*

platform-dependent

-

MySQL variables with settings for writing to syslog.

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

log_timestamps

-

UTC

MySQL-only variable controlling the timezone for certain logging conditions.

2

-

MySQL 8 has replaced with log_error_verbosity.

mandatory_roles

-

(empty)

MySQL variable for assigning to all users.

master_info_repository

-

TABLE

Whether slave logs master status and connection info to a table or a file.

16M

64M

64

1024

Specifies the maximum number of messages stored for display by and statements.

max_execution_time

-

0

MySQL renamed the max_statement_time variable.

64

1024

Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

4294967295

-

Maximum number of failed connections attempts before no more are permitted.

max_points_in_geometry

-

65536

Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

4294967295

-

Maximum number of iterations when executing recursive queries.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

9223372036854775807

-

Amount of memory a single user session is allowed to allocate.

0

-

Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

32

-

Unused variable removed in MySQL.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

BACKUP,QUICK

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

mysql_native_password_proxy_users

-

OFF

Whether MySQL's authentication plugin supports proxy users. I

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

mysqlx+*

-

*

MySQL's X plugin related variables.

basic,explain

-

Verbosity level for note-warnings given to the user.

ngram_token_size

-

2

Sets the n-gram token size for MySQL's n-gram full-text parser.

offline_mode

-

OFF

MySQL settting for specifying whether the server should run in offline mode.

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

OFF

-

MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

8

-

If the optimizer needs to enumerate a join prefix of this size or larger, then it will try aggressively prune away the search space.

32000

-

The maximum weight of the SEL_ARG graph.

16000

-

Maximum number of SEL_ARG objects created when optimizing a range.

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace_*

-

*

MySQL has more settings for optimizer tracing.

4

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

original_commit_timestamp

-

*

Used by MySQL 8 for .

parser_max_mem_size

-

4294967295 (32-bit) or 18446744073709547520 (64-bit)

MySQL variable for limiting memory available to the parser.

password_*

-

*

Controls reuse of previous passwords in MySQL.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

One less than the server maturity

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

(empty)

-

Enable for these source networks.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

*

-

MySQL has removed the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

range_optimizer_max_mem_size

-

8388608

MySQL-only variable setting a limit on the range optimizer's memory usage.

rbr_exec_mode

-

STRICT

MySQL-only variable for determining the handling of certain key errors.

0

-

Permits restricting the speed at which the slave reads the binlog from the master.

regexp_*

-

*

Memory and time limits for regular expression matching operations.

relay_log_info_repository

-

TABLE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

ON

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

Only available as an option in MySQL.

empty string

-

See .

empty string

-

See .

result_metadata

-

FULL

Determine whether the server returns result set metadata for connections where this is optional.

8388608

-

See .

rpl_read_size

-

8192

Minimum data in bytes read from the binary and relay log files.

-

-

MariaDB includes without the need to install a plugin.

rpl_stop_slave_timeout

-

31536000

Controls the time that waits before timing out.

*

-

The S3 storage engine is only available in MariaDB.

schema_definition_cache

-

256

Limits the number of schema definition objects kept in the dictionary object cache.

ON

-

Removed in MySQL.

NO

-

MariaDB-only option permitting the restricting of direct setting of a session timestamp..

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

session_track_gtids

-

OFF

MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

sha256_password_proxy_users

-

OFF

MySQL-only variable determining whether the sha256_password plugin supports proxy users.

show_create_table_verbosity

-

OFF

Option to cause to display ROW_FORMAT in all cases.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

3600

60

MySQL reduced the timeout to 60s.

131072

-

For configuring .

0

-

Only available as an option in MySQL.

0.000000

-

MariaDB setting to abort a query that has taken more than this in seconds to run on the replica.

optimistic

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_parallel_type

-

DATABASE

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_preserve_commit_order

-

OFF

MySQL-only replication variable.

slave_rows_search_algorithms

-

INDEX_SCAN, HASH_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

1213,1205

-

When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

0

-

Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

OFF

-

Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

See .

ssl_fips_mode

-

OFF

Whether FIPS mode is enabled on the server side. Deprecated in MySQL.

ON

-

See .

InnoDB

-

Alias for , removed in MySQL.

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

stored_program_definition_cache

-

256

Limits the number of stored program definition objects kept in the dictionary object cache.

super_read_only

-

OFF

MySQL variable for prohibiting client updates from users with the SUPER privilege.

0

1

MySQL synchronizes all actions to the binary log before they are committed.

1

-

.frm files have been removed in MySQL.

ERROR

-

MariaDB has

DEFAULT

-

MariaDB has

OFF

-

MariaDB has

400

-1 (autosized)

Number of table definitions that can be cached.

8

16

Maximum number of table cache instances.

tablespace_definition_cache

-

256

Limits the number of tablespace definition objects kept in the dictionary object cache.

0

-

Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

0

-

Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

0

-

Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

1

-

Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

temptable_max_ram

-

1GB

Limits the RAM used by MySQL's TempTable storage engine.

Autosized

-1 (autosized)

MariaDB uses an .

0

-

Better precision for the data in the .

0

-

Better precision for the data in the .

60

-

See .

65536

-

See .

1

-

Windows-only. See .

3

-

See .

auto

-

See .

auto

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

299008

Varies

See .

%H:%i:%s

-

Removed in MySQL.

18446744073709551615

-

Max size for data for an internal temporary on-disk MyISAM or Aria table.

16777216

-

Alias for .

transaction_allow_batching

-

OFF

Variable for enabling batching of statements within the same transaction in MySQL Cluster.

transaction_write_set_extraction

-

OFF

Unused MySQL-only variable.

REPEATABLE-READ

-

A MariaDB-only variable, replaced with .

OFF

-

A MariaDB-only variable, replaced with .

preferably_for_queries

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

version_compile_zlib

-

*

Version of the zlib library compiled in.

*

-

Version of the used malloc library.

Varies

-

Permits seeing exactly which version of the source was used for a build.

*

-

Version of the used TLS library.

windowing_high_use_precision

-

*

MySQL option allowing safety to be sacrificed for speed in calculations.

wsrep_*

*

-

Galera cluster is only available in MariaDB.

Variable

MariaDB 11.2

MySQL 8.0

Notes

System Variable Differences Between MariaDB 11.0 and MySQL 8.0
Incompatibilities and Feature Differences Between MariaDB 11.1 and MySQL 8.0
Function Differences Between MariaDB 11.2 and MySQL 8.0

MariaDB 11.0 Default

MySQL 8.0 Default

Notes

activate_all_roles_on_login

-

OFF

Determines whether to automatically activate on login.

admin*

-

*

MySQL admin connections.

0

-

Only available as an option in MySQL.

DEFAULT

-

MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

100.0000

-

Percentage of rows from the table will sample to collect table statistics.

*

-

The Aria storage engine is only available in MariaDB.

authentication_policy

-

*,,

MySQL authentication policy.

auto_generate_certs

-

ON

Whether to automatically generate SSL key and certificate files.

avoid_temporal_upgrade

-

OFF

Determines whether ALTER TABLE implicitly upgrades temporal columns.

Autosized

Autosized

MariaDB and MySQL have different autosizing algorithms.

OFF

-

When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

ON

-

Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

binlog_encryption

-

OFF

MySQL name for .

binlog_error_action

ABORT_SERVER

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

binlog_expire_logs_auto_purge

-

ON

Enables or disables automatic purging of binary log files.

0

2592000

Sets the binary log expiration period in seconds

16184

-

For setting the size of the file cache for the .

MIXED

ROW

MariaDB and MySQL have differing .

binlog_group_commit_sync_delay

0

MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

binlog_group_commit_sync_no_delay_count

0

MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

binlog_gtid_simple_recovery

-

ON

MySQL-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

Determines whether transactions may be committed in parallel.

binlog_rotate_encryption_master_key_at_startup

-

OFF

Specifically for use with MySQL binary key encryption.

-

8192

Only available as a system variable in MariaDB 11.2.

NO_LOG

MINIMAL

Determines the amount of table metadata added to the binary log with row-based logging.

binlog_row_value_options

-

(empty)

Permits an alternative binlog format for JSON document updates.

binlog_rows_query_log_events

-

OFF

MySQL-only variable for logging extra information in row-based logging.

binlog_transaction_compression*

-

*

MySQL variables relating to binary log compression.

binlog_transaction_dependency_history_size

-

25000

Maximum number of row hashes kept for looking up transactions that last modified a given row.

binlog_transaction_dependency_tracking

-

COMMIT_ORDER

For determining how to best use the slave's multithreaded applier.

block_encryption_mode

-

aes-128-ecb

MySQL-only variable for controlling the block encryption mode for block-based algorithms.

caching_sha2_password*

-

*

For use with MySQL's SHA-256 authentication with caching.

latin1 or utf8

utf8mb4

MySQL 8.0 defaults to the utf8mb4 .

ON

-

Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

check_proxy_users

OFF

MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

latin1_swedish_ci or utf8_general_ci

utf8mb4_0900_ai_ci

MySQL 8.0 defaults to the utf8mb4 .

100

-

MariaDB supports .

6

-

MariaDB supports .

DEFAULT_STRATEGY

-

MariaDB supports .

OFF

-

MariaDB supports .

connection_memory_chunk_size

-

8192

Chunk size for updates to the Global_connection_memory counter.

connection_memory_limit

-

18446744073709551615

Maximum memory for a single user connection.

create_admin_listener_thread

-

OFF

MySQL-only variable for whether to use a dedicated listening thread for admin network interface connections.

cte_max_recursion_depth

-

1000

When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

%Y-%m-%d

-

Unused variable removed in MySQL 8.0

%Y-%m-%d

-

Unused variable removed in MySQL 8.0

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

default_authentication_plugin

-

caching_sha2_password

MySQL 8 introduced a new authentication plugin.

default_collation_for_utf8mb4

-

utf8mb4_0900_ai_ci

For internal use in MySQL 8 replication.

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disabled_storage_engines

empty

MySQL-only variable for disabling specific storage engines.

OFF

ON

MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL-only variable for adding end markers to JSON output.

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

0

200

Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

OFF

ON

MySQL enables the event scheduler by default.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

1048576

1024

MariaDB increases the maximum length for a result from 1K to 1M.

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

64

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

gtid_executed_compression_period

-

1000

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

YES

-

MySQL has removed the function.

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

YES

-

MySQL has removed the .

have_statement_timeout

-

Whether MySQL's statement execution timeout feature is available.

YES

DISABLED

MySQL has removed symlink support.

histogram_generation_max_mem_size

-

20000000

Added when MySQL 8 introduced . MariaDB uses

0

-

MariaDB introduced .

JSON_HB

-

MariaDB introduced .

0

-

Time in seconds that the server waits for idle read-only transactions.

0

-

Time in seconds that the server waits for idle transactions.

0

-

Time in seconds that the server waits for idle write transactions.

OFF

-

Ignored and removed in MySQL 8.

1000

-

Controls the optimization.

0

-

Set to 1 if you are in a transaction, and 0 if not.

information_schema_stats_expiry

-

86400

Time until MySQL Information Schema cached statistics expire.

10.000000

10

Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

OFF

ON

Defaulting to OFF is a performance improvement especially for , , , or operations

-

150000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

innodb_api_*

-

*

Specific to MySQL's memcached, removed in MariaDB 10.2.

1

2

MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

innodb_change*

*

The was removed in MariaDB 11.0.

full_crc32

crc32

fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

*

-

Introduced with MariaDB's .

-

5000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

Full

-

How to report deadlocks.

innodb_dedicated_server

-

OFF

MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

1

-

Default encryption key id used for table encryption. See .

*

-

MariaDB can .

innodb_directories

-

(empty)

Used to search for tablespace files when moving or restoring a new location.

OFF

-

Tell InnoDB to stop any writes to disk.

1

-

See MariaDB's .

600

-

MariaDB's fatal semaphore timeout is configurable.

O_DIRECT

fsync

MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

1

0

MySQL 8 by default now assumes the use of an SSD device.

OFF

-

If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

OFF

-

MariaDB has support for .

add_drop_reorder

-

See .

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

-

ON

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

-

2

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

innodb_log_spin_*

-

*

MySQL variables for constraining CPU usage while waiting for flushed redo.

innodb_log_wait_for_flush_spin_hwm

-

*

MySQL variable for constraining CPU usage while waiting for flushed redo.

75

90

MySQL 8 increased the default to 90.

0

10

MySQL 8 increased the default to 10.

10485760

1073741824

MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

Autosized (2000)

Autosized (4000)

In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

OFF

-

MariaDB includes the Facebook prefix index queries optimization.

innodb_print_ddl_logs

-

OFF

MySQL option for writing DDL logs to stderr.

ON

-

Whether to set tables to read-only.

innodb_redo_log_encrypt

-

OFF

MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

128

Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

4

6

MariaDB changed the default from 6 to 4 based on extensive benchmarking.

0

-

MariaDB option to control the calculation of new statistics.

ON

-

Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

-

1

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

0

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

-

10000

Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

innodb_undo_log_encrypt

-

OFF

MySQL option for encrypting undo logs residing in separate undo tablespaces.

OFF

ON

MySQL 8 changes the default to ON, marking larger undo logs for truncation.

3

2

Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

ON

-

are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

internal_tmp_disk_storage_engine

-

INNODB

MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

internal_tmp_mem_storage_engine

-

TEMPTABLE

MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

keyring_operations

-

ON

Whether MySQL 8's keyring operations are enabled.

-

empty

MariaDB and MySQL have different .

ON

OFF

MySQL no longer supports LOAD DATA LOCAL by default.

86400

31536000

MariaDB has reduced the timeout for acquiring metadata locks.

OFF

ON

MySQL 8 enables the by default.

OFF

-

MariaDB setting for whether or not the can be compressed.

256

-

Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

sp

-

Disable logging of certain statements to the .

log_error_services

-

log_filter_internal; log_sink_internal

Components to enable for MySQL error logging.

log_error_verbosity

-

3

MySQL variable for setting verbosity of error, warning, and note messages in the error log.

OFF

ON

MySQL 8 has by default enabled of updates a slave receives from a master.

ON

OFF

MariaDB logs slow admin statements to the by default.

admin,call,slave,sp

-

Disable logging of certain statements to the .

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

0

-

Previously named (still an alias).

0

-

Previously named (still an alias).

host_name-slow.log

-

Previously named (still an alias).

10.000000

-

Previously named (still an alias).

ON

OFF

MariaDB logs slow slave statements to the by default.

empty

-

Controls information to be added to the . See also .

log_statements_unsafe_for_binlog

-

ON

MySQL setting for controlling whether binlog warnings are written to the error log.

log_syslog*

platform-dependent

-

MySQL variables with settings for writing to syslog.

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

log_timestamps

-

UTC

MySQL-only variable controlling the timezone for certain logging conditions.

2

-

MySQL 8 has replaced with log_error_verbosity.

mandatory_roles

-

(empty)

MySQL variable for assigning to all users.

master_info_repository

-

TABLE

Whether slave logs master status and connection info to a table or a file.

16M

64M

64

1024

Specifies the maximum number of messages stored for display by and statements.

max_execution_time

-

0

MySQL renamed the max_statement_time variable.

64

1024

Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

4294967295

-

Maximum number of failed connections attempts before no more are permitted.

max_points_in_geometry

-

65536

Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

4294967295

-

Maximum number of iterations when executing recursive queries.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

9223372036854775807

-

Amount of memory a single user session is allowed to allocate.

0

-

Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

32

-

Unused variable removed in MySQL.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

BACKUP,QUICK

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

mysql_native_password_proxy_users

-

OFF

Whether MySQL's authentication plugin supports proxy users. I

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

mysqlx+*

-

*

MySQL's X plugin related variables.

ngram_token_size

-

2

Sets the n-gram token size for MySQL's n-gram full-text parser.

offline_mode

-

OFF

MySQL settting for specifying whether the server should run in offline mode.

DEFAULT

OFF

An alias for .

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

OFF

-

MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

8

-

If the optimizer needs to enumerate a join prefix of this size or larger, then it will try aggressively prune away the search space.

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace_*

-

*

MySQL has more settings for optimizer tracing.

4

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

original_commit_timestamp

-

*

Used by MySQL 8 for .

parser_max_mem_size

-

4294967295 (32-bit) or 18446744073709547520 (64-bit)

MySQL variable for limiting memory available to the parser.

password_*

-

*

Controls reuse of previous passwords in MySQL.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

One less than the server maturity

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

(empty)

-

Enable for these source networks.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

*

-

MySQL has removed the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

range_optimizer_max_mem_size

-

8388608

MySQL-only variable setting a limit on the range optimizer's memory usage.

rbr_exec_mode

-

STRICT

MySQL-only variable for determining the handling of certain key errors.

0

-

Permits restricting the speed at which the slave reads the binlog from the master.

regexp_*

-

*

Memory and time limits for regular expression matching operations.

relay_log_info_repository

-

TABLE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

ON

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

Only available as an option in MySQL.

empty string

-

See .

empty string

-

See .

result_metadata

-

FULL

Determine whether the server returns result set metadata for connections where this is optional.

8388608

-

See .

rpl_read_size

-

8192

Minimum data in bytes read from the binary and relay log files.

-

-

MariaDB includes without the need to install a plugin.

rpl_stop_slave_timeout

-

31536000

Controls the time that waits before timing out.

*

-

The S3 storage engine is only available in MariaDB.

schema_definition_cache

-

256

Limits the number of schema definition objects kept in the dictionary object cache.

ON

-

Removed in MySQL.

NO

-

MariaDB-only option permitting the restricting of direct setting of a session timestamp..

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

session_track_gtids

-

OFF

MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

sha256_password_proxy_users

-

OFF

MySQL-only variable determining whether the sha256_password plugin supports proxy users.

show_create_table_verbosity

-

OFF

Option to cause to display ROW_FORMAT in all cases.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

3600

60

MySQL reduced the timeout to 60s.

131072

-

For configuring .

0

-

Only available as an option in MySQL.

0.000000

-

MariaDB setting to abort a query that has taken more than this in seconds to run on the replica.

optimistic

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_parallel_type

-

DATABASE

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_preserve_commit_order

-

OFF

MySQL-only replication variable.

slave_rows_search_algorithms

-

INDEX_SCAN, HASH_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

1213,1205

-

When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

0

-

Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

OFF

-

Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

See .

ssl_fips_mode

-

OFF

Whether FIPS mode is enabled on the server side. Deprecated in MySQL.

ON

-

See .

InnoDB

-

Alias for , removed in MySQL.

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

stored_program_definition_cache

-

256

Limits the number of stored program definition objects kept in the dictionary object cache.

super_read_only

-

OFF

MySQL variable for prohibiting client updates from users with the SUPER privilege.

0

1

MySQL synchronizes all actions to the binary log before they are committed.

1

-

.frm files have been removed in MySQL.

ERROR

-

MariaDB has

DEFAULT

-

MariaDB has

OFF

-

MariaDB has

400

-1 (autosized)

Number of table definitions that can be cached.

8

16

Maximum number of table cache instances.

tablespace_definition_cache

-

256

Limits the number of tablespace definition objects kept in the dictionary object cache.

0

-

Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

0

-

Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

0

-

Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

1

-

Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

temptable_max_ram

-

1GB

Limits the RAM used by MySQL's TempTable storage engine.

Autosized

-1 (autosized)

MariaDB uses an .

0

-

Better precision for the data in the .

0

-

Better precision for the data in the .

60

-

See .

65536

-

See .

1

-

Windows-only. See .

3

-

See .

auto

-

See .

auto

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

299008

Varies

See .

%H:%i:%s

-

Removed in MySQL.

18446744073709551615

-

Max size for data for an internal temporary on-disk MyISAM or Aria table.

16777216

-

Alias for .

transaction_allow_batching

-

OFF

Variable for enabling batching of statements within the same transaction in MySQL Cluster.

transaction_isolation

-

REPEATABLE-READ

The MariaDB equivalent is .

transaction_read_only

-

OFF

The MariaDB equivalent is .

transaction_write_set_extraction

-

OFF

Unused MySQL-only variable.

REPEATABLE-READ

-

The MySQL equivalent is transaction_isolation.

OFF

-

The MySQL equivalent is transaction_read_only.

preferably_for_queries

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

version_compile_zlib

-

*

Version of the zlib library compiled in.

*

-

Version of the used malloc library.

Varies

-

Permits seeing exactly which version of the source was used for a build.

*

-

Version of the used TLS library.

windowing_high_use_precision

-

*

MySQL option allowing safety to be sacrificed for speed in calculations.

wsrep_*

*

-

Galera cluster is only available in MariaDB.

Variable

MariaDB 11.01

MySQL 8.0

Notes

System Variable Differences Between MariaDB 10.11 and MySQL 8.0
Incompatibilities and Feature Differences Between MariaDB 11.0 and MySQL 8.0
Function Differences Between MariaDB 11.0 and MySQL 8.0

System Variable Differences Between MariaDB 10.0 and MySQL 5.6

The following is a comparison of variables that either appear only in MariaDB 10.0 or MySQL 5.6, or have different default settings in MariaDB 10.0, and MySQL 5.6. MariaDB 10.0.12 and MySQL 5.6.20, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), uses , and has a different . For this reason, a default implementation of MariaDB 10.0 will use more memory than MySQL 5.6. MariaDB 10 and MySQL 5.6 also have different .

MariaDB's extra memory usage can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

    • Set to something very low (16K) as it's not used.

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

Comparison Table

See Also

NONE

CRC32

Specifies the type of BINLOG_CHECKSUM_ALG for log events in the .

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

binlog_max_flush_queue_time

-

0

MySQL 5.6-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

MySQL 5.6-only variable for determining whether transactions may be committed in parallel.

binlog_row_image

-

ON

MySQL 5.6-only variable permitting partial logging.

binlog_rows_query_log_events

-

OFF

MySQL 5.6-only variable for logging extra information in row-based logging.

binlogging_impossible_mode

-

IGNORE_ERROR

MySQL 5.6-only variable, determines what happens if a write to binlog fails.

block_encryption_mode

-

aes-128-ecb

MySQL 5.6-only variable for controlling the block encryption mode for block-based algorithms.

core_file

-

OFF

MySQL 5.6-only variable indicating whether a core file will be written in case of a crash.

15

-

The Aria storage engine is only available in MariaDB

4

-

The Aria storage engine is only available in MariaDB

50000000

-

The Aria storage engine is only available in MariaDB

10000

-

The Aria storage engine is only available in MariaDB

OFF

-

Disable system thread alarm calls, for debugging or testing

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

-

InnoDB

Available from

disconnect_on_expired_password

-

ON

MySQL 5.6 permits passwords to be expired.

end_markers_in_json

-

OFF

MySQL 5.6-only variable for adding end markers to JSON output

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

eq_range_index_dive_limit

-

10

MySQL 5.6-only variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

100

-

Used for determining expensive queries for optimization.

explicit_defaults_for_timestamp

-

FALSE

MySQL 5.6-only variable for handling TIMESTAMP defaults in a standard way.

1

-

Introduced in the .

0

-

Introduced in the .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

0

-

MariaDB introduced .

SINGLE_PREC_HB

-

MariaDB introduced .

128

279 (autosized)

MySQL increments the value based on the size of .

0

-

Set to 1 if you are in a transaction, and 0 if not.

*

*

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

131072 (128KB)

262144 (256KB)

Minimum size of the buffer used for queries that cannot use an index, and instead perform a full table scan. MariaDB's default is sufficient for most users.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

0

-

The number of segments in a key cache. See .

-

empty

MariaDB and MySQL have different .

log_bin_basename

-

empty

MySQL-only variable containing the complete path to the binary log file.

log_bin_index

-

empty

MySQL-only variable containing the index file for binary log file names.

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

log_slow_admin_statements

-

OFF

MySQL-only variable determining whether or not to include slow admin statements in the slow query log.

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

log_slow_slave_statements

-

OFF

MySQL-only variable determining whether or not to include slow slave statements in the slow query log.

empty

-

Controls information to be added to the . See also .

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

master_info_repository

-

FILE

MySQL-only variable determining whether the slaves log info to file or table.

1048576

4194304

Maximum size in bytes of a packet or a generated/intermediate string. Increased in MySQL 5.6.6 to 4MB.

1048576

-

Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

DEFAULT

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_features

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_limit

-

1

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_max_mem_size

-

16384

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_offset

-

-1

MySQL 5.6-only variable for optimizer tracing.

1

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL.

unknown

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

0

1048576

MySQL and MariaDB disable the query cache by default in different manners.

OFF

-

Whether to strip any comments from the query before searching to see if it exists in the .

ON

OFF

MySQL and MariaDB disable the query cache by default in different manners.

relay_log_basename

-

empty

MySQL-only variable containing the complete path to the relay log file.

relay_log_info_repository

-

FILE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

OFF

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

8388608

-

See .

0

-

Unused, removed in MySQL 5.6.

rpl_stop_slave_timeout

-

31536000

MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

OFF

ON

MySQL 5.6 prohibits connections from clients using the old (pre-MySQL 4.1) password format.

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

131072

-

For configuring .

0

-

For configuring .

slave_parallel_workers

-

0

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_rows_search_algorithms

-

TABLE_SCAN, INDEX_SCAN

MySQL-only replication variable.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

empty

NO_ENGINE_SUBSTITUTION

MySQL 5.6 does not permit tables to be created in the default storage engine if the original is not available. See .

0

10000

MariaDB relies upon the operating system to flush the master.info file to disk.

0

10000

MariaDB relies upon the operating system to flush the relay log to disk.

0

10000

MariaDB relies upon the operating system to flush the relay-log.info file to disk.

400

-1 (autosized)

Number of table definitions that can be cached.

400

-1 (autosized)

Number of open tables for all threads. See .

-

1

Removed in MariaDB as similar results achieved in a different way.

0

-1 (autosized)

MariaDB uses an .

60

-

See .

500

-

See .

1

-

Windows-only. See .

3

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

294912

196608 or 262144

See .

transaction_allow_batching

-

OFF

MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

NEVER

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

bundled_jemalloc

-

Version of the used malloc library.

Variable

MySQL 5.6

Notes

Variable

MariaDB 10.0

MySQL 5.6

Notes

*

-

The storage engine is only available in MariaDB.

-

127.0.0.1

MySQL has the value of the bind-address option as a variable.

OFF

-

Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

MariaDB versus MySQL - Compatibility
System Variable Differences Between MariaDB 10.2 and MySQL 5.6
System Variable Differences Between MariaDB 10.1 and MySQL 5.6

System Variable Differences Between MariaDB 10.1 and MySQL 5.6

The following is a comparison of variables that either appear only in MariaDB 10.1 or MySQL 5.6, or have different default settings in MariaDB 10.1, and MySQL 5.6. MariaDB 10.1.13 and MySQL 5.6.27, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), Galera Cluster, uses , and has a different . For this reason, a default implementation of MariaDB 10.1 will use more memory than MySQL 5.6. MariaDB 10.1 and MySQL 5.6 also have different .

MariaDB's extra memory usage can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

    • Set to something very low (16K) as it's not used.

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

Comparison Table

See Also

OFF

-

Introduced in for between and MySQL/.

NONE

CRC32

Specifies the type of BINLOG_CHECKSUM_ALG for log events in the .

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

binlog_error_action

IGNORE_ERROR

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

binlog_gtid_simple_recovery

-

OFF

MySQL 5.6-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

MySQL 5.6-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

MySQL 5.6-only variable for determining whether transactions may be committed in parallel.

binlog_rows_query_log_events

-

OFF

MySQL 5.6-only variable for logging extra information in row-based logging.

binlogging_impossible_mode

-

IGNORE_ERROR

MySQL 5.6-only variable, determines what happens if a write to binlog fails.

block_encryption_mode

-

aes-128-ecb

MySQL 5.6-only variable for controlling the block encryption mode for block-based algorithms.

core_file

-

OFF

MySQL 5.6-only variable indicating whether a core file will be written in case of a crash.

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disconnect_on_expired_password

-

ON

MySQL 5.6 permits passwords to be expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL 5.6-only variable for adding end markers to JSON output

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

eq_range_index_dive_limit

-

10

MySQL 5.6-only variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

0

-

MariaDB introduced .

SINGLE_PREC_HB

-

MariaDB introduced .

0

-

Set to 1 if you are in a transaction, and 0 if not.

*

*

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

-

empty

MariaDB and MySQL have different .

log_bin_index

-

empty

MySQL-only variable containing the index file for binary log file names.

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

empty

-

Controls information to be added to the . See also .

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

master_info_repository

-

FILE

MySQL-only variable determining whether the slaves log info to file or table.

1048576

4194304

Maximum size in bytes of a packet or a generated/intermediate string. Increased in MySQL 5.6.6 to 4MB.

4194304

-

Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

0

-

Maximum time in seconds that a query can execute before being aborted.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

DEFAULT

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_features

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_limit

-

1

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_max_mem_size

-

16384

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_offset

-

-1

MySQL 5.6-only variable for optimizer tracing.

1

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL.

unknown

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up). The MariaDB default was increased to 16384 in 10.1.2.

OFF

-

Whether to strip any comments from the query before searching to see if it exists in the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect. The MariaDB default was increased to 24576 in 10.1.2.

relay_log_info_repository

-

FILE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

OFF

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

8388608

-

See .

rpl_stop_slave_timeout

-

31536000

MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

OFF

ON

MySQL 5.6 prohibits connections from clients using the old (pre-MySQL 4.1) password format.

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

simplified_binlog_gtid_recovery

-

OFF

MySQL-only variable, deprecated shortly after it appeared.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

131072

-

For configuring .

conservative

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_parallel_workers

-

0

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_rows_search_algorithms

-

TABLE_SCAN, INDEX_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

NO_ENGINE_SUBSTITUTION

MariaDB does not automatically create users with . See .

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

400

-1 (autosized)

Number of table definitions that can be cached.

400

-1 (autosized)

Number of open tables for all threads. See .

-

1

Removed in MariaDB as similar results achieved in a different way.

0

-1 (autosized)

MariaDB uses an .

60

-

See .

1000

-

See .

1

-

Windows-only. See .

3

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

295936

196608 or 262144

See .

transaction_allow_batching

-

OFF

MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

NEVER

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

bundled_jemalloc

-

Version of the used malloc library.

-

is only available in MariaDB.

Variable

MySQL 5.6

Notes

Variable

MariaDB 10.1

MySQL 5.6

Notes

*

-

The Aria storage engine is only available in MariaDB.

avoid_temporal_upgrade

-

OFF

MySQL 5.6-only variable for determining whether ALTER TABLE implicitly upgrades temporal columns.

-

127.0.0.1

MySQL has the value of the bind-address option as a variable.

MariaDB versus MySQL - Compatibility
System Variable Differences Between MariaDB 10.2 and MySQL 5.6
System Variable Differences Between MariaDB 10.1 and MySQL 5.7
System Variable Differences Between MariaDB 10.0 and MySQL 5.6
MariaDB 10.1
MariaDB versus MySQL - Compatibility
MariaDB 10.0
MariaDB 5.3
replicating
MariaDB 5.3
MariaDB 5.1
MariaDB versus MySQL - Compatibility
MariaDB 5.3
Galera cluster
MariaDB 10.1
wsrep_*

System Variable Differences Between MariaDB 10.1 and MySQL 5.7

The following is a comparison of variables that either appear only in MariaDB 10.1 or MySQL 5.7, or have different default settings in MariaDB 10.1, and MySQL 5.7. MariaDB 10.1.13 and MySQL 5.7.9, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), Galera Cluster, uses , and has a different . For this reason, a default implementation of MariaDB 10.1 will use more memory than MySQL 5.7. MariaDB 10.1 and MySQL 5.7 also have different .

MariaDB's extra memory usage can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

    • Set to something very low (16K) as it's not used.

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

Comparison Table

See Also

block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms
block-based join algorithms

OFF

-

Introduced in for between and MySQL/.

NONE

CRC32

Specifies the type of BINLOG_CHECKSUM_ALG for log events in the .

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

binlog_error_action

ABORT_SERVER

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

STATEMENT

ROW

MySQL 5.7 has changed the default binary log format.

binlog_group_commit_sync_delay

0

MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

binlog_group_commit_sync_no_delay_count

0

MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

binlog_gtid_simple_recovery

-

ON

MySQL-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

MySQL-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

MySQL-only variable for determining whether transactions may be committed in parallel.

binlog_rows_query_log_events

-

OFF

MySQL-only variable for logging extra information in row-based logging.

block_encryption_mode

-

aes-128-ecb

MySQL-only variable for controlling the block encryption mode for block-based algorithms.

check_proxy_users

OFF

MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

core_file

-

OFF

MySQL-only variable indicating whether a core file will be written in case of a crash.

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

default_authentication_plugin

mysql_native_password

MySQL's default authentication plugin.

empty

-

For use with MariaDB's .

default_password_lifetime

360

MySQL-only variable determining how long passwords are valid for before expiring.

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disabled_storage_engines

empty

MySQL-only variable for disabling specific storage engines.

disconnect_on_expired_password

-

ON

MySQL permits passwords to be expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL-only variable for adding end markers to JSON output.

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

eq_range_index_dive_limit

-

200

MySQL-only variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

gtid_executed_compression_period

-

1000

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

have_statement_timeout

-

MySQL's statement execution timeout feature is available.

0

-

MariaDB introduced .

SINGLE_PREC_HB

-

MariaDB introduced .

0

-

Set to 1 if you are in a transaction, and 0 if not.

*

*

The large number of differences between MySQL's and MariaDB's default innodb* variables (based upon InnoDB/XtraDB differences) are not listed here. Details can be found on the page.

internal_tmp_disk_storage_engine

-

INNODB

MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

2097152

-

Maximum size in bytes of the query buffer. See .

2

-

For determining the join algorithms. See .

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

-

empty

MariaDB and MySQL have different .

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

log_builtin_as_identified_by_password

-

OFF

MySQL variable for use with binary logging of user-management statements,

log_error_verbosity

-

3

MySQL variable for setting verbosity of error, warning, and note messages in the error log.

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

empty

-

Controls information to be added to the . See also .

log_syslog*

platform-dependent

-

MySQL variables with settings for writing to syslog.

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

log_timestamps

-

UTC

MySQL-only variable controlling the timezone for certain logging conditions.

1

2

MySQL's version is deprecated and has a new default.

master_info_repository

-

FILE

MySQL-only variable determining whether the slaves log info to file or table.

max_execution_time

-

0

MySQL renamed the max_statement_time variable.

4194304

-

Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

max_points_in_geometry

-

65536

Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

0

-

Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

DEFAULT

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

mysql_native_password_proxy_users

-

OFF

Whether MySQL's authentication plugin supports proxy users. I

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

ngram_token_size

-

2

Sets the n-gram token size for MySQL's n-gram full-text parser.

offline_mode

-

OFF

MySQL settting for specifying whether the server should run in offline mode.

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace

-

Off by default

MySQL-only variable for optimizer tracing.

optimizer_trace_features

-

Off by default

MySQL-only variable for optimizer tracing.

optimizer_trace_limit

-

1

MySQL-only variable for optimizer tracing.

optimizer_trace_max_mem_size

-

16384

MySQL-only variable for optimizer tracing.

optimizer_trace_offset

-

-1

MySQL-only variable for optimizer tracing.

1

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL.

unknown

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up). The MariaDB default was increased to 16384 in 10.1.2.

OFF

-

Whether to strip any comments from the query before searching to see if it exists in the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect. The MariaDB default was increased to 24576 in 10.1.2.

range_optimizer_max_mem_size

-

1536000

MySQL-only variable setting a limit on the range optimizer's memory usage.

rbr_exec_mode

-

STRICT

MySQL-only variable for determining the handling of certain key errors.

relay_log_info_repository

-

FILE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

OFF

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

require_secure_transport

-

OFF

MySQL-only variable determining whether client to server connections need to be secure.

8388608

-

See .

rpl_stop_slave_timeout

-

31536000

MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

session_track_*

-

*

MySQL-only variables for tracking changes within a session.

sha256_password_proxy_users

-

OFF

MySQL-only variable determining whether the sha256_password plugin supports proxy users.

show_compatibility_56

-

OFF

MySQL variable for indicating status of certain compatibility traits between MySQL 5.6 and MySQL 5.7.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

3600

60

MySQL 5.7 has reduced the timeout to 60s.

131072

-

For configuring .

conservative

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_parallel_type

-

DATABASE

MySQL-only replication variable.

slave_parallel_workers

-

0

MySQL-only replication variable.

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_preserve_commit_order

-

OFF

MySQL-only replication variable.

slave_rows_search_algorithms

-

TABLE_SCAN, INDEX_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

See .

InnoDB

-

Alias for , removed in MySQL.

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

super_read_only

-

OFF

MySQL variable for prohibiting client updates from users with the SUPER privilege.

0

1

MySQL 5.7 synchronizes all actions to the binary log before they are committed.

400

-1 (autosized)

Number of table definitions that can be cached.

2000

-1 (autosized)

Number of open tables for all threads. See .

-

16

Removed in MariaDB as similar results achieved in a different way.

0

-1 (autosized)

MariaDB uses an .

10

-

Removed in MySQL 5.7.

60

-

See .

1000

-

See .

1

-

Windows-only. See .

3

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

295936

196608 or 262144

See .

OFF

-

Removed in MySQL 5.7.

tls_version

-

Varies

MySQL-only variable showing the permitted tls protocols.

transaction_allow_batching

-

OFF

MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

transaction_write_set_extraction

-

OFF

Unused MySQL-only variable.

NEVER

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

*

-

Version of the used malloc library.

*

-

Version of the used TLS library.

*

-

is only available in MariaDB.

Variable

MySQL 5.7

Notes

Variable

MariaDB 10.1

MySQL 5.7

Notes

*

-

The Aria storage engine is only available in MariaDB.

avoid_temporal_upgrade

-

OFF

MySQL-only variable for determining whether ALTER TABLE implicitly upgrades temporal columns.

-

127.0.0.1

MySQL has the value of the bind-address option as a variable.

MariaDB versus MySQL - Compatibility
System Variable Differences Between MariaDB 10.3 and MySQL 5.7
System Variable Differences Between MariaDB 10.2 and MySQL 5.7
System Variable Differences Between MariaDB 10.1 and MySQL 5.6
MariaDB 5.3
replicating
MariaDB 5.3
MariaDB 5.1
MariaDB versus MySQL - Compatibility
MariaDB 5.3
Galera cluster
MariaDB 10.1
block-based join algorithms
block-based join algorithms
wsrep_*

System Variable Differences Between MariaDB 10.2 and MySQL 5.6

The following is a comparison of variables that either appear only in MariaDB 10.2 or MySQL 5.6, or have different default settings in MariaDB 10.2, and MySQL 5.6. MariaDB 10.2.19 and MySQL 5.6.27, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), Galera Cluster and has a different . For this reason, a default implementation of MariaDB 10.2 will use more memory than MySQL 5.6. MariaDB 10.2 and MySQL 5.6 also have different .

MariaDB's extra memory usage can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

    • Set to something very low (16K) as it's not used.

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

Comparison Table

See Also

System Variable Differences Between MariaDB 10.2 and MySQL 5.7

The following is a comparison of variables that either appear only in or MySQL 5.7, or have different default settings in , and MySQL 5.7. and MySQL 5.7.13, with only default plugins enabled, were used for the comparison.

The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), , and has a different . For this reason, a default implementation of will use more memory than MySQL 5.7. and MySQL 5.7 also have different .

MariaDB's extra memory usage can be handled with the following rules of thumb:

  • If you are not using and don't plan to use :

OFF

-

Introduced in for between and MySQL/.

NONE

CRC32

Specifies the type of BINLOG_CHECKSUM_ALG for log events in the .

0

-

For use in MariaDB's .

100000

-

For use in MariaDB's .

binlog_error_action

IGNORE_ERROR

MySQL-only variable for controlling what happens when the server cannot write to the binary log.

binlog_gtid_simple_recovery

-

OFF

MySQL 5.6-only GTID variable. MariaDB's implementation is different.

binlog_max_flush_queue_time

-

0

MySQL 5.6-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

ON

-

For optimized kernel thread scheduling.

binlog_order_commits

-

ON

MySQL 5.6-only variable for determining whether transactions may be committed in parallel.

binlog_rows_query_log_events

-

OFF

MySQL 5.6-only variable for logging extra information in row-based logging.

binlogging_impossible_mode

-

IGNORE_ERROR

MySQL 5.6-only variable, determines what happens if a write to binlog fails.

block_encryption_mode

-

aes-128-ecb

MySQL 5.6-only variable for controlling the block encryption mode for block-based algorithms.

15

-

The Aria storage engine is only available in MariaDB.

4

-

The Aria storage engine is only available in MariaDB.

50000000

-

The Aria storage engine is only available in MariaDB.

10000

-

The Aria storage engine is only available in MariaDB.

OFF

-

Disable system thread alarm calls, for debugging or testing.

empty

-

For use with MariaDB's .

empty

-

For handling incompatibilities between MariaDB's and the old regex library.

empty

InnoDB

Default storage engine used for tables created with .

disconnect_on_expired_password

-

ON

MySQL 5.6 permits passwords to be expired.

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

OFF

-

MariaDB enables .

end_markers_in_json

-

OFF

MySQL 5.6-only variable for adding end markers to JSON output

enforce_gtid_consistency

-

OFF

MariaDB and MySQL have different .

none

Forces the use of a particular storage engine for new tables.

0

10

Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

100

-

Used for determining expensive queries for optimization.

1

-

Introduced in the .

0

-

Introduced in the .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

gtid_executed

-

empty

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

gtid_mode

-

OFF

MariaDB and MySQL have different .

gtid_next

-

AUTOMATIC

MariaDB and MySQL have different .

gtid_owned

-

empty

MariaDB and MySQL have different .

gtid_purged

-

empty

MariaDB and MySQL have different .

0

-

MariaDB and MySQL have different .

empty

-

MariaDB and MySQL have different .

OFF

-

MariaDB and MySQL have different .

MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

0

-

MariaDB introduced .

SINGLE_PREC_HB

-

MariaDB introduced .

0

-

Set to 1 if you are in a transaction, and 0 if not.

*

*

The list of differences between and MySQL 5.6 Innodb variables is currently incomplete.

ON

-

Whether redo logging should be reduced when natively creating indexes or rebuilding tables

ON

-

Use a backup-safe implementation and crash-safe rename operations inside InnoDB.

2097152

-

Maximum size in bytes of the query buffer. See ..

2

-

For determining the join algorithms. See .

134217728

8388608

Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

512

-

Number of hash buckets for open and changed files.

0

-

The number of segments in a key cache. See .

-

empty

MariaDB and MySQL have different .

OFF

-

MariaDB setting for whether or not the can be compressed.

256

-

Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

log_bin_index

-

empty

MySQL-only variable containing the index file for binary log file names.

log_bin_use_v1_row_events

-

OFF

MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

-

For slow query log filtering.

1

-

Limits the number of queries logged to the .

empty

-

Controls information to be added to the . See also .

24576

-

Size in bytes of the transaction coordinator log, defined in multiples of 4096.

log_throttle_queries_not_using_indexes

-

0

MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

master_info_repository

-

FILE

MySQL-only variable determining whether the slaves log info to file or table.

1048576

4194304

Maximum size in bytes of a packet or a generated/intermediate string. Increased in MySQL 5.6.6 to 4MB.

4194304

-

Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

4294967295

-

Maximum number of iterations when executing recursive queries.

1073741824

0

Can be set by session in MariaDB.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

0

-

Maximum time in seconds that a query can execute before being aborted.

4294967295

4294967295 (32-bit) or 18446744073709547520 (64-bit)

Read lock requests will be permitted for processing after this many write locks.

262144

-

Size of buffer to use when using multi-range read with range access. See .

1024

-

Block size used for index pages.

DEFAULT

OFF

MyISAM recovery mode.

134216704

8388608

Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

ON

Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

new

-

OFF

Used for backward-compatibility with MySQL 4.1, not present in MariaDB

Empty string

-

Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

100

-

Controls number of record samples to check condition selectivity.

A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

optimizer_trace

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_features

-

Off by default

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_limit

-

1

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_max_mem_size

-

16384

MySQL 5.6-only variable for optimizer tracing.

optimizer_trace_offset

-

-1

MySQL 5.6-only variable for optimizer tracing.

1

-

Controls which statistics can be used by the optimizer when looking for the best query execution plan.

OFF

ON

The is off by default in MariaDB.

Many performance schema variables are autoset in MySQL.

unknown

-

Minimum acceptable plugin maturity.

5

-

Time in seconds between sending progress reports to the client for time-consuming statements.

16384

8192

Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up). The MariaDB default was increased to 16384 in 10.1.2.

OFF

-

Whether to strip any comments from the query before searching to see if it exists in the .

24576

8192

Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect. The MariaDB default was increased to 24576 in 10.1.2.

relay_log_info_repository

-

FILE

MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

OFF

-

Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

empty string

-

See .

empty string

-

See .

replicate

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

empty string

-

See .

8388608

-

See .

rpl_stop_slave_timeout

-

31536000

MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

OFF

ON

MySQL 5.6 prohibits connections from clients using the old (pre-MySQL 4.1) password format.

server_id_bits

-

server_id

MySQL-only variable for use in MySQL Cluster.

server_uuid

-

UUID

MySQL-only variable containing the UUID.

ON

-

Whether to track changes to the default schema within the current session.

OFF

-

Whether to track changes to the session state.

(empty)

-

Comma-separated list of session system variables for which to track changes.

OFF

-

Whether to track changes to the transaction attributes.

show_old_temporals

-

OFF

MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

simplified_binlog_gtid_recovery

-

OFF

MySQL-only variable, deprecated shortly after it appeared.

OFF

-

See .

OFF

-

See .

slave_allow_batching

-

OFF

MySQL-only replication variable.

slave_checkpoint_group

-

512

MySQL-only replication variable.

slave_checkpoint_period

-

300

MySQL-only replication variable.

0

-

Permits restricting the speed at which the slave reads the binlog from the master.

IDEMPOTENT

-

Modes for how replication of DDL events should be executed.

0

-

For configuring .

131072

-

For configuring .

conservative

-

Controls what transactions are applied in parallel when using .

0

-

For configuring .

slave_pending_jobs_size_max

-

16777216

MySQL-only replication variable.

slave_rows_search_algorithms

-

TABLE_SCAN, INDEX_SCAN

MySQL-only replication variable.

NO

See for a description and use-case for this setting.

2097152

262144

The default sort buffer allocated has been reduced in MySQL.

NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

NO_ENGINE_SUBSTITUTION

MariaDB does not automatically create users with . See .

ON

-

In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

400

-1 (autosized)

Number of table definitions that can be cached.

400

-1 (autosized)

Number of open tables for all threads. See .

8

1

Maximum number of table cache instances in MariaDB. This is different to the MySQL version which specifies the number of table cache instances.

0

-1 (autosized)

MariaDB uses an .

60

-

See .

1000

-

See .

1

-

Windows-only. See .

3

-

See .

auto

-

See .

auto

-

See .

Number of processors

16*

See . *Only available in MySQL with a commercial plugin.

500

6*

See . *Only available in MySQL with a commercial plugin.

295936

196608 or 262144

See .

18446744073709551615

-

Max size for data for an internal temporary on-disk MyISAM or Aria table.

16777216

-

Alias for .

transaction_allow_batching

-

OFF

MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

NEVER

-

Controls the use of .

OFF

-

Whether to activate MariaDB's implementation, not available in MySQL.

bundled_jemalloc

-

Version of the used malloc library.

-

is only available in MariaDB.

Variable

MySQL 5.6

Notes

Variable

MariaDB 10.1

MySQL 5.6

Notes

*

-

The Aria storage engine is only available in MariaDB.

avoid_temporal_upgrade

-

OFF

MySQL 5.6-only variable for determining whether ALTER TABLE implicitly upgrades temporal columns.

-

127.0.0.1

MySQL has the value of the bind-address option as a variable.

System Variable Differences Between MariaDB 10.2 and MySQL 5.7
System Variable Differences Between MariaDB 10.1 and MySQL 5.6
System Variable Differences Between MariaDB 10.0 and MySQL 5.6

Set to something very low (16K) as it's not used.

  • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

  • Comparison Table

    Variable

    MySQL 5.7

    Notes

    *

    -

    The Aria storage engine is only available in MariaDB.

    avoid_temporal_upgrade

    -

    OFF

    MySQL-only variable for determining whether ALTER TABLE implicitly upgrades temporal columns.

    -

    127.0.0.1

    MySQL has the value of the bind-address option as a variable.

    See Also

    • System Variable Differences Between MariaDB 10.3 and MySQL 5.7

    • System Variable Differences Between MariaDB 10.2 and MySQL 5.6

    • System Variable Differences Between MariaDB 10.1 and MySQL 5.7

    MariaDB 10.2
    MariaDB 10.2
    MariaDB 10.2.19
    Galera Cluster
    MariaDB 10.2
    MariaDB 10.2

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    MySQL-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    MySQL-only variable for determining whether transactions may be committed in parallel.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    mysql_native_password

    MySQL's default authentication plugin.

    empty

    -

    For use with MariaDB's .

    default_password_lifetime

    0

    MySQL-only variable determining how long passwords are valid for before expiring.

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    disconnect_on_expired_password

    -

    ON

    MySQL permits passwords to be expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    For tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    100

    -

    Used for determining expensive queries for optimization.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    have_statement_timeout

    -

    MySQL's statement execution timeout feature is available.

    0

    -

    MariaDB introduced .

    SINGLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    *

    *

    The list of differences between MariaDB 10.2 and MySQL 5.7 Innodb variables is currently incomplete.

    ON

    -

    Whether redo logging should be reduced when natively creating indexes or rebuilding tables

    ON

    -

    Use a backup-safe implementation and crash-safe rename operations inside InnoDB.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables. In MariaDB, the storage engine for on-disk internal temporary tables is not configurable at run-time. Instead, it is set at compile time, and the two options are Aria or MyISAM. If Aria is used, then the value of the system variable will be ON.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms.

    2

    -

    For determining the join algorithms. See block-based join algorithms

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    -

    empty

    MariaDB and MySQL have different .

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    log_builtin_as_identified_by_password

    -

    OFF

    MySQL variable for use with binary logging of user-management statements,

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    master_info_repository

    -

    FILE

    MySQL-only variable determining whether the slaves log info to file or table.

    16M

    4M

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    16777216

    -

    Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace

    -

    Off by default

    MySQL-only variable for optimizer tracing.

    optimizer_trace_features

    -

    Off by default

    MySQL-only variable for optimizer tracing.

    optimizer_trace_limit

    -

    1

    MySQL-only variable for optimizer tracing.

    optimizer_trace_max_mem_size

    -

    16384

    MySQL-only variable for optimizer tracing.

    optimizer_trace_offset

    -

    -1

    MySQL-only variable for optimizer tracing.

    1

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL.

    unknown

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    OFF

    -

    Whether to strip any comments from the query before searching to see if it exists in the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    1536000

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    relay_log_info_repository

    -

    FILE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    require_secure_transport

    -

    OFF

    MySQL-only variable determining whether client to server connections need to be secure.

    8388608

    -

    See .

    rpl_stop_slave_timeout

    -

    31536000

    MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

    1

    0

    0 is no longer valid in MariaDB.

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    Empty

    *

    MySQL's version tracks a number of system variable by default.

    OFF

    *

    For tracking changes to the transaction attributes.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_compatibility_56

    -

    OFF

    MySQL variable for indicating status of certain compatibility traits between MySQL 5.6 and MySQL 5.7.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL 5.7 has reduced the timeout to 60s.

    131072

    -

    For configuring .

    conservative

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    TABLE_SCAN, INDEX_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    See .

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL 5.7 synchronizes all actions to the binary log before they are committed.

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    10

    -

    Removed in MySQL 5.7.

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    196608 or 262144

    See .

    OFF

    -

    Removed in MySQL 5.7.

    tls_version

    -

    Varies

    MySQL-only variable showing the permitted tls protocols.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    NEVER

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    *

    -

    Version of the used malloc library.

    *

    -

    Version of the used TLS library.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.2

    MySQL 5.7

    Notes

    MariaDB 10.2
    MariaDB 5.3
    replicating
    MariaDB 5.3
    MariaDB 5.1
    MariaDB 10.2
    MariaDB 5.3
    Galera cluster
    MariaDB 10.2
    block-based join algorithms
    block-based join algorithms
    wsrep_*

    System Variable Differences Between MariaDB 10.3 and MySQL 5.7

    The following is a comparison of variables that either appear only in or MySQL 5.7, or have different default settings in , and MySQL 5.7. and MySQL 5.7.13, with only default plugins enabled, were used for the comparison.

    The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), , and has a different . For this reason, a default implementation of will use more memory than MySQL 5.7. and MySQL 5.7 also have different .

    MariaDB's extra memory usage can be handled with the following rules of thumb:

    • If you are not using and don't plan to use :

    Set to something very low (16K) as it's not used.

  • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

  • Comparison Table

    Variable

    Default

    MySQL 5.7 Default

    Notes

    DEFAULT

    -

    introduces new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified. .

    *

    -

    The Aria storage engine is only available in MariaDB.

    avoid_temporal_upgrade

    -

    OFF

    MySQL-only variable for determining whether ALTER TABLE implicitly upgrades temporal columns.

    See Also

    • System Variable Differences Between MariaDB 10.3 and MySQL 8.0

    • System Variable Differences Between MariaDB 10.2 and MySQL 5.7

    • System Variable Differences Between MariaDB 10.1 and MySQL 5.7

    MariaDB 10.3
    MariaDB 10.3
    MariaDB 10.3.10
    Galera Cluster
    MariaDB 10.3
    MariaDB 10.3

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    MySQL-only variable specifying a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    MySQL-only variable for determining whether transactions may be committed in parallel.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    mysql_native_password

    MySQL's default authentication plugin.

    empty

    -

    For use with MariaDB's .

    default_password_lifetime

    0

    MySQL-only variable determining how long passwords are valid for before expiring.

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    disconnect_on_expired_password

    -

    ON

    MySQL permits passwords to be expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    100

    -

    Used for determining expensive queries for optimization.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    have_statement_timeout

    -

    MySQL's statement execution timeout feature is available.

    0

    -

    MariaDB introduced .

    SINGLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    *

    *

    The list of differences between MariaDB 10.3 and MySQL 5.7 Innodb variables is currently incomplete.

    1

    1

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions.

    ON

    -

    Whether redo logging should be reduced when natively creating indexes or rebuilding tables

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms..

    2

    -

    For determining the join algorithms. See block-based join algorithms.

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    -

    empty

    MariaDB and MySQL have different .

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    log_builtin_as_identified_by_password

    -

    OFF

    MySQL variable for use with binary logging of user-management statements,

    sp

    -

    Disable logging of certain statements to the .

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    master_info_repository

    -

    FILE

    MySQL-only variable determining whether the slaves log info to file or table.

    16M

    4M

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    16777216

    -

    Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace

    -

    Off by default

    MySQL-only variable for optimizer tracing.

    optimizer_trace_features

    -

    Off by default

    MySQL-only variable for optimizer tracing.

    optimizer_trace_limit

    -

    1

    MySQL-only variable for optimizer tracing.

    optimizer_trace_max_mem_size

    -

    16384

    MySQL-only variable for optimizer tracing.

    optimizer_trace_offset

    -

    -1

    MySQL-only variable for optimizer tracing.

    1

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    OFF

    -

    Whether to strip any comments from the query before searching to see if it exists in the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    1536000

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    relay_log_info_repository

    -

    FILE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    require_secure_transport

    -

    OFF

    MySQL-only variable determining whether client to server connections need to be secure.

    8388608

    -

    See .

    -

    -

    MariaDB 10.3 includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    MySQL-only variable for controlling the time that STOP SLAVE waits before timing out.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    1

    0

    0 is no longer valid in MariaDB.

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    OFF

    *

    For tracking changes to the transaction attributes.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_compatibility_56

    -

    OFF

    MySQL variable for indicating status of certain compatibility traits between MySQL 5.6 and MySQL 5.7.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL 5.7 has reduced the timeout to 60s.

    131072

    -

    For configuring .

    conservative

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    TABLE_SCAN, INDEX_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    See .

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL 5.7 synchronizes all actions to the binary log before they are committed.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    10

    -

    Removed in MySQL 5.7.

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    196608 or 262144

    See .

    OFF

    -

    Removed in MySQL 5.7.

    tls_version

    -

    Varies

    MySQL-only variable showing the permitted tls protocols.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    MySQL-only variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    NEVER

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.3

    MySQL 5.7

    Notes

    MariaDB 10.3
    MariaDB 10.3

    System Variable Differences Between MariaDB 11.1 and MySQL 8.0

    The following is a comparison of variables that either appear only in MariaDB 11.1 or MySQL 8.0, or have different default settings in MariaDB 11.1, and MySQL 8.0. The releases MariaDB 11.1.2 and MySQL 8.0.34, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 11.1 and MySQL 8.0 and Function Differences Between MariaDB 11.1 and MySQL 8.0

    Comparison Table

    Variable

    See Also

    System Variable Differences Between MariaDB 10.5 and MySQL 8.0

    The following is a comparison of variables that either appear only in or MySQL 8.0, or have different default settings in , and MySQL 8.0. The RC release and the stable MySQL 8.0.11, with only default plugins enabled, were used for the comparison.

    For a more complete list of differences, see and

    The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), , and has a different . For this reason, a default implementation of will use more memory than MySQL 8.0. and MySQL 8.0 also have different .

    MariaDB's extra memory usage can be handled with the following rules of thumb:

    • If you are not using and don't plan to use :

    System Variable Differences Between MariaDB 10.3 and MySQL 8.0

    The following is a comparison of variables that either appear only in or MySQL 8.0, or have different default settings in , and MySQL 8.0. and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), , and has a different . For this reason, a default implementation of will use more memory than MySQL 8.0. and MySQL 8.0 also have different .

    MariaDB's extra memory usage can be handled with the following rules of thumb:

    • If you are not using and don't plan to use :

  • Set to something very low (16K) as it's not used.

  • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

  • Comparison Table

    Variable

    Default

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    See Also

    • System Variable Differences Between MariaDB 10.4 and MySQL 8.0

    • Incompatibilities and Feature Differences Between MariaDB 10.5 and MySQL 8.0

    • Function Differences Between MariaDB 10.5 and MySQL 8.0

    MariaDB 10.5
    MariaDB 10.5
    MariaDB 10.5.3
    Incompatibilities and Feature Differences Between MariaDB 10.5 and MySQL 8.0
    Function Differences Between MariaDB 10.5 and MySQL 8.0
    MariaDB 10.5
    MariaDB 10.5
    Galera Cluster

    Set to something very low (16K) as it's not used.

  • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • Normally this is what before you had set for (at least 1M).

  • If you are using and not planning to use :

    • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

  • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

  • Comparison Table

    Variable

    Default

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    introduces new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    *

    -

    The Aria storage engine is only available in MariaDB.

    See Also

    • System Variable Differences Between MariaDB 10.3 and MySQL 5.7

    MariaDB 10.3
    MariaDB 10.3
    MariaDB 10.3.10
    Galera Cluster
    MariaDB 10.3
    MariaDB 10.3

    MariaDB 11.1 Default

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    admin*

    -

    *

    MySQL admin connections.

    0

    -

    Only available as an option in MySQL.

    DEFAULT

    -

    MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    *

    -

    The Aria storage engine is only available in MariaDB.

    authentication_policy

    -

    *,,

    MySQL authentication policy.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    OFF

    -

    When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_encryption

    -

    OFF

    MySQL name for .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    binlog_expire_logs_auto_purge

    -

    ON

    Enables or disables automatic purging of binary log files.

    0

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    binlog_rotate_encryption_master_key_at_startup

    -

    OFF

    Specifically for use with MySQL binary key encryption.

    -

    8192

    Only available as a system variable in MariaDB 11.2.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_compression*

    -

    *

    MySQL variables relating to binary log compression.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    connection_memory_chunk_size

    -

    8192

    Chunk size for updates to the Global_connection_memory counter.

    connection_memory_limit

    -

    18446744073709551615

    Maximum memory for a single user connection.

    create_admin_listener_thread

    -

    OFF

    MySQL-only variable for whether to use a dedicated listening thread for admin network interface connections.

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    JSON_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    -

    150000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in MariaDB 10.2.

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

    innodb_change*

    *

    The was removed in MariaDB 11.0.

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    *

    -

    Introduced with MariaDB's .

    -

    5000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    Full

    -

    How to report deadlocks.

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    O_DIRECT

    fsync

    MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    -

    2

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    ON

    -

    Whether to set tables to read-only.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    10000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    3

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms.

    2

    -

    For determining the join algorithms. See block-based join algorithms

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    0

    -

    Previously named (still an alias).

    0

    -

    Previously named (still an alias).

    host_name-slow.log

    -

    Previously named (still an alias).

    10.000000

    -

    Previously named (still an alias).

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    8

    -

    If the optimizer needs to enumerate a join prefix of this size or larger, then it will try aggressively prune away the search space.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    Only available as an option in MySQL.

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    0

    -

    Only available as an option in MySQL.

    0.000000

    -

    MariaDB setting to abort a query that has taken more than this in seconds to run on the replica.

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side. Deprecated in MySQL.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    OFF

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    A MariaDB-only variable, replaced with .

    OFF

    -

    A MariaDB-only variable, replaced with .

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 11.1

    MySQL 8.0

    Notes

    System Variable Differences Between MariaDB 11.0 and MySQL 8.0
    Incompatibilities and Feature Differences Between MariaDB 11.1 and MySQL 8.0
    Function Differences Between MariaDB 11.1 and MySQL 8.0

    System Variable Differences Between MariaDB 10.4 and MySQL 8.0

    The following is a comparison of variables that either appear only in MariaDB 10.4 or MySQL 8.0, or have different default settings in MariaDB 10.4 and MySQL 8.0. The stable releases MariaDB 10.4.6 and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 10.4 and MySQL 8.0 and Function Differences Between MariaDB 10.4 and MySQL 8.0

    The most notable differences are that MariaDB includes, by default, the storage engine (resulting in extra memory allocation), Galera Cluster, and has a different . For this reason, a default implementation of MariaDB 10.4 will use more memory than MySQL 8.0. MariaDB 10.4 and MySQL 8.0 also have different .

    MariaDB's extra memory usage can be handled with the following rules of thumb:

    • If you are not using and don't plan to use :

      • Set to something very low (16K) as it's not used.

      • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

      • Normally this is what before you had set for (at least 1M).

    • If you are using and not planning to use :

      • Set to what you think you need for handling internal tmp tables that didn't fit in memory.

    • If you are planning to use , you should set to something that fits a big part of your normal data + overflow temporary tables.

    Comparison Table

    See Also

    System Variable Differences Between MariaDB 10.10 and MySQL 8.0

    The following is a comparison of variables that either appear only in or MySQL 8.0, or have different default settings in , and MySQL 8.0. The releases and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    For a more complete list of differences, see and

    Comparison Table

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    ON

    -

    Introduced in for between and MySQL/.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    binlog_expire_logs_seconds

    -

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    binlog_row_metadata

    -

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    SINGLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in .

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    *

    -

    MariaDB has support for .

    ON

    -

    Deprecated option removed in MySQL.

    *

    -

    Introduced with MariaDB's .

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    (empty)

    -

    has restored this unused, deprecated variable for compatibility reasons.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    100

    -

    Up to what percentage of dirty pages in MariaDB should be flushed when InnoDB finds it has spare resources to do so.

    OFF

    -

    MariaDB has support for .

    (empty)

    -

    has restored this unused, deprecated variable for compatibility reasons.

    VATS

    -

    MariaDB has an improved algorithm for deciding which of the waiting transactions should be granted a lock once it has been released.

    OFF

    -

    Deprecated option in MariaDB for disabling gap locking for searches and index scans. Deprecated in MariaDB, use instead.

    ON

    -

    Whether redo logging should be reduced when natively creating indexes or rebuilding tables

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    *

    -

    MariaDB includes options to .

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    8

    -

    Deprecated MariaDB option for control over index distribution statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    128

    -

    Removed in MySQL 8.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See ..

    2

    -

    For determining the join algorithms. See .

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    16777216

    -

    Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Unused variable removed in MySQL.

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    require_secure_transport

    -

    OFF

    MySQL-only variable determining whether client to server connections need to be secure.

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    conservative

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    10

    -

    Removed in MySQL 5.7.

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    OFF

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    *

    -

    is only available in MariaDB.

    Variable

    MySQL 8.0

    Notes

    Variable

    MariaDB 10.4 Default

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    System Variable Differences Between MariaDB 10.3 and MySQL 8.0
    Incompatibilities and Feature Differences Between MariaDB 10.4 and MySQL 8.0
    Function Differences Between MariaDB 10.4 and MySQL 8.0

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    0

    -

    Only available as an option in MySQL.

    DEFAULT

    -

    introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    OFF

    -

    When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

    ON

    -

    Introduced in for between and MySQL/.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    0

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    SINGLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    -

    150000

    Deprecated and ignored in and removed in .

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in .

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    -

    1

    Deprecated and ignored in and removed in since the original reasons for introducing no longer apply.

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    -

    0

    Deprecated and ignored in and removed in .

    *

    -

    Introduced with MariaDB's .

    -

    5000

    Deprecated and ignored in and removed in .

    Full

    -

    How to report deadlocks.

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    O_DIRECT

    fsync

    MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    -

    ON

    Deprecated and ignored in and removed in , as there is no reason to allow checksums to be disabled on the redo log.

    -

    ON

    Deprecated and ignored in and removed in as part of the InnoDB redo log performance improvements.

    -

    2

    Deprecated and ignored in and removed in as part of the InnoDB redo log performance improvements.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    -

    1

    Deprecated and ignored in and removed in as the original reasons for splitting the buffer pool have mostly gone away.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    ON

    -

    Whether to set tables to read-only.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    0

    Deprecated and ignored in and removed in .

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    -

    1

    Deprecated and ignored in and removed in .

    -

    10000

    Deprecated and ignored in and removed in .

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See .

    2

    -

    For determining the join algorithms. See .

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    8

    -

    If the optimizer needs to enumerate a join prefix of this size or larger, then it will try aggressively prune away the search space.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    0

    -

    Only available as an option in MySQL.

    0.000000

    -

    MariaDB setting to abort a query that has taken more than this in seconds to run on the replica.

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    10

    -

    Removed in MySQL 5.7.

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    *

    -

    is only available in MariaDB.

    Variable

    MySQL 8.0

    Notes

    See Also

    • System Variable Differences Between MariaDB 10.9 and MySQL 8.0

    • Incompatibilities and Feature Differences Between MariaDB 10.10 and MySQL 8.0

    • Function Differences Between MariaDB 10.10 and MySQL 8.0

    Variable

    MariaDB 10.10
    MariaDB 10.10
    MariaDB 10.10.3
    Incompatibilities and Feature Differences Between MariaDB 10.10 and MySQL 8.0
    Function Differences Between MariaDB 10.10 and MySQL 8.0

    Default

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    binlog_expire_logs_seconds

    -

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    DOUBLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in MariaDB 10.2.

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    *

    -

    Earlier versions of MariaDB had support for background .

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    *

    -

    Introduced with MariaDB's .

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    (empty)

    -

    MariaDB 10.4 has restored this unused, deprecated variable for compatibility reasons.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    100

    -

    Up to what percentage of dirty pages in MariaDB should be flushed when InnoDB finds it has spare resources to do so.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    (empty)

    -

    MariaDB 10.4 has restored this unused, deprecated variable for compatibility reasons.

    VATS

    -

    MariaDB has an improved algorithm for deciding which of the waiting transactions should be granted a lock once it has been released.

    OFF

    -

    Deprecated and ignored in MariaDB. Previously determined whether redo logging should be reduced when natively creating indexes or rebuilding tables.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    *

    -

    Earlier version of MariaDB included options to .

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    128

    -

    Removed in MySQL 8.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms.

    2

    -

    For determining the join algorithms. See block-based join algorithms

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.5

    MySQL 8.0

    Notes

    MariaDB 10.5
    MariaDB 10.3

    MySQL 8.0 has been a bugfix release for years, but this still means features & behavior may change over time.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    binlog_expire_logs_seconds

    -

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    binlog_row_metadata

    -

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    default_password_lifetime

    0

    MySQL-only variable determining how long passwords are valid for before expiring.

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    disconnect_on_expired_password

    -

    ON

    MySQL permits passwords to be expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    SINGLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in MariaDB 10.2.

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    *

    -

    MariaDB has support for .

    ON

    -

    Deprecated option removed in MySQL.

    *

    -

    Introduced with MariaDB's .

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    100

    -

    Up to what percentage of dirty pages in MariaDB should be flushed when InnoDB finds it has spare resources to do so.

    OFF

    -

    MariaDB has support for .

    VATS

    -

    MariaDB has an improved algorithm for deciding which of the waiting transactions should be granted a lock once it has been released.

    OFF

    -

    Deprecated option in MariaDB for disabling gap locking for searches and index scans. Deprecated in MariaDB, use instead.

    ON

    -

    Whether redo logging should be reduced when natively creating indexes or rebuilding tables

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    *

    -

    MariaDB includes options to .

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    8

    -

    Deprecated MariaDB option for control over index distribution statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    128

    -

    Removed in MySQL 8.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms.

    2

    -

    For determining the join algorithms. See block-based join algorithms.

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    16777216

    -

    Maximum size for parameter values sent with mysql_stmt_send_long_data(). Removed in MySQL 5.6.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Unused variable removed in MySQL.

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    From MariaDB 10.3, an alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    O*

    MySQL-only variables for optimizer tracing.

    1

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    require_secure_transport

    -

    OFF

    MySQL-only variable determining whether client to server connections need to be secure.

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB 10.3 includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    conservative

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    10

    -

    Removed in MySQL 5.7.

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    OFF

    -

    Removed in MySQL.

    tls_version

    -

    Varies

    MySQL-only variable showing the permitted tls protocols.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    NEVER

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.3

    MySQL 8.0

    Notes

    MariaDB 10.3
    MariaDB 10.3

    System Variable Differences Between MariaDB 10.9 and MySQL 8.0

    The following is a comparison of variables that either appear only in MariaDB 10.9 or MySQL 8.0, or have different default settings in MariaDB 10.9, and MySQL 8.0. The releases MariaDB 10.9.1 and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    For a more complete list of differences, see Incompatibilities and Feature Differences Between MariaDB 10.9 and MySQL 8.0 and Function Differences Between MariaDB 10.9 and MySQL 8.0

    Comparison Table

    Variable

    See Also

    System Variable Differences Between MariaDB 10.8 and MySQL 8.0

    The following is a comparison of variables that either appear only in or MySQL 8.0, or have different default settings in , and MySQL 8.0. The releases and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    Comparison Table

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    OFF

    -

    When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

    ON

    -

    Introduced in for between and MySQL/.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    0

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    DOUBLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    -

    150000

    Deprecated and ignored in and removed in .

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in .

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    -

    1

    Deprecated and ignored in and removed in since the original reasons for introducing no longer apply.

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    -

    0

    Deprecated and ignored in and removed in .

    *

    -

    Introduced with MariaDB's .

    -

    5000

    Deprecated and ignored in and removed in .

    Full

    -

    How to report deadlocks.

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    O_DIRECT

    fsync

    MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    -

    ON

    Deprecated and ignored in and removed in , as there is no reason to allow checksums to be disabled on the redo log.

    -

    ON

    Deprecated and ignored in and removed in as part of the InnoDB redo log performance improvements.

    -

    2

    Deprecated and ignored in and removed in as part of the InnoDB redo log performance improvements.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    -

    1

    Deprecated and ignored in and removed in as the original reasons for splitting the buffer pool have mostly gone away.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    ON

    -

    Whether to set tables to read-only.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    0

    Deprecated and ignored in and removed in .

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    -

    1

    Deprecated and ignored in and removed in .

    -

    0

    Deprecated and ignored in and removed in .

    -

    10000

    Deprecated and ignored in and removed in .

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See ..

    2

    -

    For determining the join algorithms. See .

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the + version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    *

    -

    is only available in MariaDB.

    Variable

    MySQL 8.0

    Notes

    See Also

    • System Variable Differences Between MariaDB 10.7 and MySQL 8.0

    Variable

    MariaDB 10.8 Default

    MySQL 8.0 Default

    MariaDB 10.8
    MariaDB 10.8
    MariaDB 10.8.3

    Notes

    MariaDB 10.9 Default

    MySQL 8.0 Default

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    OFF

    -

    When set, split ALTER at binary logging into two statements: START ALTER and COMMIT/ROLLBACK ALTER.

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    0

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    DOUBLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    -

    150000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in MariaDB 10.2.

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    *

    -

    Introduced with MariaDB's .

    -

    5000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    Full

    -

    How to report deadlocks.

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    O_DIRECT

    fsync

    MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    -

    2

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    ON

    -

    Whether to set tables to read-only.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    10000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms.

    2

    -

    For determining the join algorithms. See block-based join algorithms

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.9

    MySQL 8.0

    Notes

    System Variable Differences Between MariaDB 10.8 and MySQL 8.0
    Incompatibilities and Feature Differences Between MariaDB 10.9 and MySQL 8.0
    Function Differences Between MariaDB 10.4 and MySQL 8.0
    MariaDB 5.3
    replicating
    MariaDB 5.3
    MariaDB 5.1
    MariaDB 10.2
    MariaDB 10.4
    MariaDB 10.4
    MariaDB 10.2
    MariaDB 5.3
    Galera cluster
    MariaDB 10.4
    block-based join algorithms
    block-based join algorithms
    wsrep_*
    MariaDB 10.10
    MariaDB 10.3
    MariaDB 5.3
    replicating
    MariaDB 5.3
    MariaDB 5.1
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.2
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.2
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 5.3
    Galera cluster
    MariaDB 10.10
    block-based join algorithms
    block-based join algorithms
    wsrep_*
    MariaDB 10.3
    MariaDB 5.3
    replicating
    MariaDB 5.3
    MariaDB 5.1
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.2
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.2
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 10.5
    MariaDB 10.6
    MariaDB 5.3
    Galera cluster
    MariaDB 10.8
    block-based join algorithms
    block-based join algorithms
    wsrep_*

    System Variable Differences Between MariaDB 10.7 and MySQL 8.0

    The following is a comparison of variables that either appear only in MariaDB 10.7 or MySQL 8.0, or have different default settings in MariaDB 10.7, and MySQL 8.0. The releases MariaDB 10.7.0 and MySQL 8.0.11, with only default plugins enabled, were used for the comparison. Note that MySQL 8 is an 'evergreen' release, so features may be added or removed in later releases.

    Comparison Table

    Variable

    Default

    MySQL 8.0 Default

    See Also

    Notes

    activate_all_roles_on_login

    -

    OFF

    Determines whether to automatically activate on login.

    DEFAULT

    -

    MariaDB 10.3 introduced new clauses to avoid slow copies in certain instances. This variable allows setting this if no ALGORITHM clause is specified.

    100.0000

    -

    Percentage of rows from the table will sample to collect table statistics.

    *

    -

    The Aria storage engine is only available in MariaDB.

    auto_generate_certs

    -

    ON

    Whether to automatically generate SSL key and certificate files.

    avoid_temporal_upgrade

    -

    OFF

    Determines whether ALTER TABLE implicitly upgrades temporal columns.

    Autosized

    Autosized

    MariaDB and MySQL have different autosizing algorithms.

    ON

    -

    Introduced in MariaDB 5.3 for replicating between MariaDB 5.3 and MySQL/MariaDB 5.1.

    0

    -

    For use in MariaDB's .

    100000

    -

    For use in MariaDB's .

    binlog_error_action

    ABORT_SERVER

    MySQL-only variable for controlling what happens when the server cannot write to the binary log.

    0

    2592000

    Sets the binary log expiration period in seconds

    16184

    -

    For setting the size of the file cache for the .

    MIXED

    ROW

    MariaDB and MySQL have differing .

    binlog_group_commit_sync_delay

    0

    MySQL-only variable for controlling the wait time before synchronizing the binary log file to disk.

    binlog_group_commit_sync_no_delay_count

    0

    MySQL-only variable for setting the maximum number of transactions to wait for before aborting the current binlog_group_commit_sync_delay delay.

    binlog_gtid_simple_recovery

    -

    ON

    MySQL-only GTID variable. MariaDB's implementation is different.

    binlog_max_flush_queue_time

    -

    0

    Specifies a timeout for reading transactions from the flush queue before continuing with group commit and syncing log to disk.

    ON

    -

    For optimized kernel thread scheduling.

    binlog_order_commits

    -

    ON

    Determines whether transactions may be committed in parallel.

    NO_LOG

    MINIMAL

    Determines the amount of table metadata added to the binary log with row-based logging.

    binlog_row_value_options

    -

    (empty)

    Permits an alternative binlog format for JSON document updates.

    binlog_rows_query_log_events

    -

    OFF

    MySQL-only variable for logging extra information in row-based logging.

    binlog_transaction_dependency_history_size

    -

    25000

    Maximum number of row hashes kept for looking up transactions that last modified a given row.

    binlog_transaction_dependency_tracking

    -

    COMMIT_ORDER

    For determining how to best use the slave's multithreaded applier.

    block_encryption_mode

    -

    aes-128-ecb

    MySQL-only variable for controlling the block encryption mode for block-based algorithms.

    caching_sha2_password*

    -

    *

    For use with MySQL's SHA-256 authentication with caching.

    latin1 or utf8

    utf8mb4

    MySQL 8.0 defaults to the utf8mb4 .

    ON

    -

    Permits disabling constraint checks, for example when loading a table that violates some constraints that you plan to fix later.

    check_proxy_users

    OFF

    MySQL-only variable for controlling whether the server performs proxy user mapping for authentication plugins.

    latin1_swedish_ci or utf8_general_ci

    utf8mb4_0900_ai_ci

    MySQL 8.0 defaults to the utf8mb4 .

    100

    -

    MariaDB supports .

    6

    -

    MariaDB supports .

    DEFAULT_STRATEGY

    -

    MariaDB supports .

    OFF

    -

    MariaDB supports .

    cte_max_recursion_depth

    -

    1000

    When MySQL 8.0 introduced they used a different name. MariaDB's variable is called .

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    %Y-%m-%d

    -

    Unused variable removed in MySQL 8.0

    15

    -

    The Aria storage engine is only available in MariaDB.

    4

    -

    The Aria storage engine is only available in MariaDB.

    50000000

    -

    The Aria storage engine is only available in MariaDB.

    10000

    -

    The Aria storage engine is only available in MariaDB.

    OFF

    -

    Disable system thread alarm calls, for debugging or testing.

    default_authentication_plugin

    -

    caching_sha2_password

    MySQL 8 introduced a new authentication plugin.

    default_collation_for_utf8mb4

    -

    utf8mb4_0900_ai_ci

    For internal use in MySQL 8 replication.

    empty

    -

    For use with MariaDB's .

    empty

    -

    For handling incompatibilities between MariaDB's and the old regex library.

    empty

    InnoDB

    Default storage engine used for tables created with .

    disabled_storage_engines

    empty

    MySQL-only variable for disabling specific storage engines.

    OFF

    ON

    MariaDB password expiration is off by default, and by default does not disconnect a client when a password has expired.

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    OFF

    -

    MariaDB enables .

    end_markers_in_json

    -

    OFF

    MySQL-only variable for adding end markers to JSON output.

    enforce_gtid_consistency

    -

    OFF

    MariaDB and MySQL have different .

    none

    Forces the use of a particular storage engine for new tables.

    0

    200

    Variable for tuning when the optimizer should switch from using index dives to index statistics for qualifying rows estimation.

    OFF

    ON

    MySQL enables the event scheduler by default.

    100

    -

    Used for determining expensive queries for optimization.

    OFF

    ON

    MySQL 8 disables the old timestamp behavior.

    1

    -

    Introduced in the .

    0

    -

    Introduced in the .

    1048576

    1024

    MariaDB increases the maximum length for a result from 1K to 1M.

    empty

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    64

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    gtid_executed

    -

    empty

    MariaDB and MySQL have different .

    gtid_executed_compression_period

    -

    1000

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    gtid_mode

    -

    OFF

    MariaDB and MySQL have different .

    gtid_next

    -

    AUTOMATIC

    MariaDB and MySQL have different .

    gtid_owned

    -

    empty

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    gtid_purged

    -

    empty

    MariaDB and MySQL have different .

    0

    -

    MariaDB and MySQL have different .

    empty

    -

    MariaDB and MySQL have different .

    OFF

    -

    MariaDB and MySQL have different .

    YES

    -

    MySQL has removed the function.

    MariaDB's version indicates whether YaSSL or openssl was used. MySQL's is a synonym for have_ssl.

    YES

    -

    MySQL has removed the .

    have_statement_timeout

    -

    Whether MySQL's statement execution timeout feature is available.

    YES

    DISABLED

    MySQL has removed symlink support.

    histogram_generation_max_mem_size

    -

    20000000

    Added when MySQL 8 introduced . MariaDB uses

    0

    -

    MariaDB introduced .

    DOUBLE_PREC_HB

    -

    MariaDB introduced .

    0

    -

    Time in seconds that the server waits for idle read-only transactions.

    0

    -

    Time in seconds that the server waits for idle transactions.

    0

    -

    Time in seconds that the server waits for idle write transactions.

    OFF

    -

    Ignored and removed in MySQL 8.

    1000

    -

    Controls the optimization.

    0

    -

    Set to 1 if you are in a transaction, and 0 if not.

    information_schema_stats_expiry

    -

    86400

    Time until MySQL Information Schema cached statistics expire.

    10.000000

    10

    Adaptive flushing is enabled when this low water mark percentage of the redo log capacity is reached. MariaDB's variable is a , MySQL's an .

    OFF

    ON

    Defaulting to OFF is a performance improvement especially for , , , or operations

    -

    150000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_api_*

    -

    *

    Specific to MySQL's memcached, removed in MariaDB 10.2.

    1

    2

    MariaDB has an extra mode, 3, for skipping the rollback of connected transactions. MySQL defaults to row-based replication, so can safely use 2.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 since the original reasons for introducing no longer apply.

    full_crc32

    crc32

    fullcrc32 permits encryption to be supported over a SPATIAL INDEX, which crc32 does not support.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    *

    -

    Introduced with MariaDB's .

    -

    5000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    Full

    -

    How to report deadlocks.

    innodb_dedicated_server

    -

    OFF

    MySQL option that automatically configures various settings if the server is a dedicated InnoDB database server.

    1

    -

    Default encryption key id used for table encryption. See .

    *

    -

    MariaDB can .

    innodb_directories

    -

    (empty)

    Used to search for tablespace files when moving or restoring a new location.

    OFF

    -

    Tell InnoDB to stop any writes to disk.

    1

    -

    See MariaDB's .

    600

    -

    MariaDB's fatal semaphore timeout is configurable.

    O_DIRECT

    fsync

    MariaDB InnoDB flushing method by default on Unix systems bypasses the file system cache for improved performance in most cases.

    1

    0

    MySQL 8 by default now assumes the use of an SSD device.

    OFF

    -

    If set to 1 in MariaDB (0 is default) CREATE TABLEs without a primary or unique key where all keyparts are NOT NULL will not be accepted, and will return an error.

    OFF

    -

    MariaDB has support for .

    add_drop_reorder

    -

    See .

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6, as there is no reason to allow checksums to be disabled on the redo log.

    -

    ON

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    -

    2

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as part of the InnoDB redo log performance improvements.

    innodb_log_spin_*

    -

    *

    MySQL variables for constraining CPU usage while waiting for flushed redo.

    innodb_log_wait_for_flush_spin_hwm

    -

    *

    MySQL variable for constraining CPU usage while waiting for flushed redo.

    75

    90

    MySQL 8 increased the default to 90.

    0

    10

    MySQL 8 increased the default to 10.

    10485760

    1073741824

    MariaDB 10.2 reduced the limit for when an undo tablespace is marked for truncation.

    Autosized (2000)

    Autosized (4000)

    In most systems, autosized based on the setting, which differs between MariaDB and MySQL.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6 as the original reasons for splitting the buffer pool have mostly gone away.

    OFF

    -

    MariaDB includes the Facebook prefix index queries optimization.

    innodb_print_ddl_logs

    -

    OFF

    MySQL option for writing DDL logs to stderr.

    ON

    -

    Whether to set tables to read-only.

    innodb_redo_log_encrypt

    -

    OFF

    MySQL 8 has also now introduced redo log encryption, but used a different name. The equivalent option in MariaDB is .

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    128

    Removed in MariaDB as part of the InnoDB cleanup. It makes sense to always create and use the maximum number of rollback segments.

    4

    6

    MariaDB changed the default from 6 to 4 based on extensive benchmarking.

    0

    -

    MariaDB option to control the calculation of new statistics.

    ON

    -

    Enabling gives a larger sample of pages for larger tables for the purposes of index statistics calculation.

    -

    1

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    0

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    -

    10000

    Deprecated and ignored in MariaDB 10.5 and removed in MariaDB 10.6.

    innodb_undo_log_encrypt

    -

    OFF

    MySQL option for encrypting undo logs residing in separate undo tablespaces.

    OFF

    ON

    MySQL 8 changes the default to ON, marking larger undo logs for truncation.

    0

    2

    Number of tablespace files used for dividing up the undo logs. MySQL 8 has deprecated this setting, and increased the default (and minimum) to 2.

    ON

    -

    are a faster alternative to innodb_doublewrite and MariaDB automatically detects when supporting SSD cards are used.

    internal_tmp_disk_storage_engine

    -

    INNODB

    MySQL uses this variable to set the storage engine for on-disk internal temporary tables.

    internal_tmp_mem_storage_engine

    -

    TEMPTABLE

    MySQL and MariaDB use different formats for temporary tables. In MariaDB, the performs a similar function.

    2097152

    -

    Maximum size in bytes of the query buffer. See block-based join algorithms..

    2

    -

    For determining the join algorithms. See block-based join algorithms.

    134217728

    8388608

    Size of the buffer for the index blocks used by MyISAM tables and shared for all threads.

    512

    -

    Number of hash buckets for open and changed files.

    0

    -

    The number of segments in a key cache. See .

    keyring_operations

    -

    ON

    Whether MySQL 8's keyring operations are enabled.

    -

    empty

    MariaDB and MySQL have different .

    ON

    OFF

    MySQL no longer supports LOAD DATA LOCAL by default.

    86400

    31536000

    MariaDB has reduced the timeout for acquiring metadata locks.

    OFF

    ON

    MySQL 8 enables the by default.

    OFF

    -

    MariaDB setting for whether or not the can be compressed.

    256

    -

    Minimum length of sql statement (in statement mode) or record (in row mode) that can be compressed. See .

    log_bin_use_v1_row_events

    -

    OFF

    MySQL-only variable showing whether or not MySQL's version 2 binary logging format is being used.

    sp

    -

    Disable logging of certain statements to the .

    log_error_services

    -

    log_filter_internal; log_sink_internal

    Components to enable for MySQL error logging.

    log_error_verbosity

    -

    3

    MySQL variable for setting verbosity of error, warning, and note messages in the error log.

    OFF

    ON

    MySQL 8 has by default enabled of updates a slave receives from a master.

    ON

    OFF

    MariaDB logs slow admin statements to the by default.

    admin,call,slave,sp

    -

    Disable logging of certain statements to the .

    admin, filesort, filesort_on_disk, full_join, full_scan, query_cache, query_cache_miss, tmp_table, tmp_table_on_disk

    -

    For slow query log filtering.

    1

    -

    Limits the number of queries logged to the .

    ON

    OFF

    MariaDB logs slow slave statements to the by default.

    empty

    -

    Controls information to be added to the . See also .

    log_statements_unsafe_for_binlog

    -

    ON

    MySQL setting for controlling whether binlog warnings are written to the error log.

    log_syslog*

    platform-dependent

    -

    MySQL variables with settings for writing to syslog.

    24576

    -

    Size in bytes of the transaction coordinator log, defined in multiples of 4096.

    log_throttle_queries_not_using_indexes

    -

    0

    MySQL-only variable for limiting the number of statements without indexes written to the slow query log.

    log_timestamps

    -

    UTC

    MySQL-only variable controlling the timezone for certain logging conditions.

    2

    -

    MySQL 8 has replaced with log_error_verbosity.

    mandatory_roles

    -

    (empty)

    MySQL variable for assigning to all users.

    master_info_repository

    -

    TABLE

    Whether slave logs master status and connection info to a table or a file.

    16M

    64M

    64

    1024

    Specifies the maximum number of messages stored for display by and statements.

    max_execution_time

    -

    0

    MySQL renamed the max_statement_time variable.

    64

    1024

    Used to decide which algorithm to choose when sorting rows. If the total size of the column data, not including columns that are part of the sort, is less than max_length_for_sort_data, then these are added to the sort key. This can speed up the sort as there's no need to re-read the same row again later. Setting the value too high can slow things down as there will be a higher disk activity for doing the sort.

    4294967295

    -

    Maximum number of failed connections attempts before no more are permitted.

    max_points_in_geometry

    -

    65536

    Maximum points_per_circle for MySQL's ST_Buffer_Strategy() function.

    4294967295

    -

    Maximum number of iterations when executing recursive queries.

    1073741824

    0

    Can be set by session in MariaDB.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    The most key seeks required when searching with an index, regardless of the actual index cardinality. If this value is set lower than its default and maximum, indexes will tend to be preferred over table scans.

    9223372036854775807

    -

    Amount of memory a single user session is allowed to allocate.

    0

    -

    Maximum time in seconds that a query can execute before being aborted. MySQL used to have a variable of this name before renaming it max_execution_time.

    32

    -

    Unused variable removed in MySQL.

    4294967295

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    Read lock requests will be permitted for processing after this many write locks.

    262144

    -

    Size of buffer to use when using multi-range read with range access. See .

    1024

    -

    Block size used for index pages.

    BACKUP,QUICK

    OFF

    MyISAM recovery mode.

    134216704

    8388608

    Size in bytes of the buffer allocated when creating or sorting indexes on a MyISAM table.

    mysql_native_password_proxy_users

    -

    OFF

    Whether MySQL's authentication plugin supports proxy users. I

    ON

    Causes MariaDB to use the MySQL-5.6 low level formats for , and instead of the MariaDB 5.3+ version.

    new

    -

    OFF

    Used for backward-compatibility with MySQL 4.1, not present in MariaDB.

    mysqlx+*

    -

    *

    MySQL's X plugin related variables.

    ngram_token_size

    -

    2

    Sets the n-gram token size for MySQL's n-gram full-text parser.

    offline_mode

    -

    OFF

    MySQL settting for specifying whether the server should run in offline mode.

    DEFAULT

    OFF

    An alias for .

    Empty string

    -

    Used for getting MariaDB to emulate behavior from an old version of MySQL or MariaDB. See .

    OFF

    -

    MySQL 8 is no longer compatible with the old pre-MySQL 4.1 form of password hashing.

    100

    -

    Controls number of record samples to check condition selectivity.

    A series of flags for controlling the query optimizer. MariaDB has introduced a number of new settings.

    optimizer_trace_*

    -

    *

    MySQL has more settings for optimizer tracing.

    4

    -

    Controls which statistics can be used by the optimizer when looking for the best query execution plan.

    original_commit_timestamp

    -

    *

    Used by MySQL 8 for .

    parser_max_mem_size

    -

    4294967295 (32-bit) or 18446744073709547520 (64-bit)

    MySQL variable for limiting memory available to the parser.

    password_*

    -

    *

    Controls reuse of previous passwords in MySQL.

    OFF

    ON

    The is off by default in MariaDB.

    Many performance schema variables are autoset in MySQL, and MySQL has a different version, with additional variables.

    One less than the server maturity

    -

    Minimum acceptable plugin maturity.

    5

    -

    Time in seconds between sending progress reports to the client for time-consuming statements.

    (empty)

    -

    Enable for these source networks.

    16384

    8192

    Size in bytes of the extra blocks allocated during query parsing and execution (after query_prealloc_size is used up).

    *

    -

    MySQL has removed the .

    24576

    8192

    Size in bytes of the persistent buffer for query parsing and execution, allocated on connect and freed on disconnect.

    range_optimizer_max_mem_size

    -

    8388608

    MySQL-only variable setting a limit on the range optimizer's memory usage.

    rbr_exec_mode

    -

    STRICT

    MySQL-only variable for determining the handling of certain key errors.

    0

    -

    Permits restricting the speed at which the slave reads the binlog from the master.

    regexp_*

    -

    *

    Memory and time limits for regular expression matching operations.

    relay_log_info_repository

    -

    TABLE

    MySQL-only variable determining whether the slave's position in the relay logs is written to a file or table.

    ON

    -

    Tells the slave to reproduce annotate_rows_events received from the master in its own binary log.

    empty string

    -

    See .

    empty string

    -

    See .

    replicate

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    empty string

    -

    See .

    result_metadata

    -

    FULL

    Determine whether the server returns result set metadata for connections where this is optional.

    8388608

    -

    See .

    rpl_read_size

    -

    8192

    Minimum data in bytes read from the binary and relay log files.

    -

    -

    MariaDB includes without the need to install a plugin.

    rpl_stop_slave_timeout

    -

    31536000

    Controls the time that waits before timing out.

    *

    -

    The S3 storage engine is only available in MariaDB.

    schema_definition_cache

    -

    256

    Limits the number of schema definition objects kept in the dictionary object cache.

    ON

    -

    Removed in MySQL.

    NO

    -

    MariaDB-only option permitting the restricting of direct setting of a session timestamp..

    server_id_bits

    -

    server_id

    MySQL-only variable for use in MySQL Cluster.

    server_uuid

    -

    UUID

    MySQL-only variable containing the UUID.

    session_track_gtids

    -

    OFF

    MySQL-only variables for tracking gtid changes. MariaDB and MySQL's gtid implementation is different.

    sha256_password_proxy_users

    -

    OFF

    MySQL-only variable determining whether the sha256_password plugin supports proxy users.

    show_create_table_verbosity

    -

    OFF

    Option to cause to display ROW_FORMAT in all cases.

    show_old_temporals

    -

    OFF

    MySQL-only variable for determining whether SHOW CREATE TABLE output should include comments for old format temporal columns.

    OFF

    -

    See .

    OFF

    -

    See .

    slave_allow_batching

    -

    OFF

    MySQL-only replication variable.

    slave_checkpoint_group

    -

    512

    MySQL-only replication variable.

    slave_checkpoint_period

    -

    300

    MySQL-only replication variable.

    IDEMPOTENT

    -

    Modes for how replication of DDL events should be executed.

    0

    -

    For configuring .

    3600

    60

    MySQL reduced the timeout to 60s.

    131072

    -

    For configuring .

    optimistic

    -

    Controls what transactions are applied in parallel when using .

    0

    -

    For configuring .

    slave_parallel_type

    -

    DATABASE

    MySQL-only replication variable.

    slave_pending_jobs_size_max

    -

    16777216

    MySQL-only replication variable.

    slave_preserve_commit_order

    -

    OFF

    MySQL-only replication variable.

    slave_rows_search_algorithms

    -

    INDEX_SCAN, HASH_SCAN

    MySQL-only replication variable.

    NO

    See for a description and use-case for this setting.

    1213,1205

    -

    When an error occurs during a transaction on the slave, replication usually halts. By default, transactions that caused a deadlock or elapsed lock wait timeout will be retried. One can add other errors to the list of errors that should be retried by adding a comma-separated list of error numbers to this variable.

    0

    -

    Interval in seconds for the slave SQL thread to retry a failed transaction due to a deadlock, elapsed lock wait timeout or an error listed in slave_transaction_retry_errors.

    2097152

    262144

    The default sort buffer allocated has been reduced in MySQL.

    OFF

    -

    Adds an implicit IF EXISTS to ALTER, RENAME and DROP of TABLES, VIEWS, FUNCTIONS and PACKAGES

    STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION

    ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

    See .

    ssl_fips_mode

    -

    OFF

    Whether FIPS mode is enabled on the server side.

    ON

    -

    See .

    InnoDB

    -

    Alias for , removed in MySQL.

    ON

    -

    In MariaDB, when password validation plugins are enabled, reject passwords that cannot be validated (passwords specified as a hash).

    stored_program_definition_cache

    -

    256

    Limits the number of stored program definition objects kept in the dictionary object cache.

    super_read_only

    -

    OFF

    MySQL variable for prohibiting client updates from users with the SUPER privilege.

    0

    1

    MySQL synchronizes all actions to the binary log before they are committed.

    1

    -

    .frm files have been removed in MySQL.

    ERROR

    -

    MariaDB has

    DEFAULT

    -

    MariaDB has

    400

    -1 (autosized)

    Number of table definitions that can be cached.

    8

    16

    Maximum number of table cache instances.

    tablespace_definition_cache

    -

    256

    Limits the number of tablespace definition objects kept in the dictionary object cache.

    0

    -

    Interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received.

    0

    -

    Number of unacknowledged probes to send before considering the connection dead and notifying the application layer.

    0

    -

    Set the TCP_NODELAY option (disable Nagle's algorithm) on socket.

    1

    -

    Timeout, in milliseconds, with no activity until the first TCP keep-alive packet is sent.

    temptable_max_ram

    -

    1GB

    Limits the RAM used by MySQL's TempTable storage engine.

    Autosized

    -1 (autosized)

    MariaDB uses an .

    0

    -

    Better precision for the data in the .

    0

    -

    Better precision for the data in the .

    60

    -

    See .

    65536

    -

    See .

    1

    -

    Windows-only. See .

    3

    -

    See .

    auto

    -

    See .

    auto

    -

    See .

    Number of processors

    16*

    See . *Only available in MySQL with a commercial plugin.

    500

    6*

    See . *Only available in MySQL with a commercial plugin.

    299008

    Varies

    See .

    %H:%i:%s

    -

    Removed in MySQL.

    18446744073709551615

    -

    Max size for data for an internal temporary on-disk MyISAM or Aria table.

    16777216

    -

    Alias for .

    transaction_allow_batching

    -

    OFF

    Variable for enabling batching of statements within the same transaction in MySQL Cluster.

    transaction_isolation

    -

    REPEATABLE-READ

    The MariaDB equivalent is .

    transaction_read_only

    -

    OFF

    The MariaDB equivalent is .

    transaction_write_set_extraction

    -

    OFF

    Unused MySQL-only variable.

    REPEATABLE-READ

    -

    The MySQL equivalent is transaction_isolation.

    OFF

    -

    The MySQL equivalent is transaction_read_only.

    preferably_for_queries

    -

    Controls the use of .

    OFF

    -

    Whether to activate MariaDB's implementation, not available in MySQL.

    version_compile_zlib

    -

    *

    Version of the zlib library compiled in.

    *

    -

    Version of the used malloc library.

    Varies

    -

    Permits seeing exactly which version of the source was used for a build.

    *

    -

    Version of the used TLS library.

    windowing_high_use_precision

    -

    *

    MySQL option allowing safety to be sacrificed for speed in calculations.

    wsrep_*

    *

    -

    Galera cluster is only available in MariaDB.

    Variable

    MariaDB 10.7

    MySQL 8.0

    Notes

    System Variable Differences Between MariaDB 10.6 and MySQL 8.0
    MariaDB 10.7
    roles
    allow_suspicious_udfs
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_do_db
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_ignore_db
    encrypt_binlog
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    character_set_collations
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    InnoDB Change Buffer
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_purge_batch_size
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_truncate_temporary_tablespace_now
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_min_examined_row_limit
    min_examined_row_limit
    log_slow_query
    log_slow_query
    log_slow_query_file
    slow_query_log_file
    log_slow_query_time
    long_query_time
    log_slow_max_warnings
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    note_verbosity
    old_mode
    OLD Mode
    old_passwords
    optimizer_extra_pruning_depth
    optimizer_max_sel_arg_weight
    optimizer_max_sel_args
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_rewrite_db
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    session_track_system_variables
    connection redirection
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    skip_grant_tables
    slave_max_statement_time
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    system_versioning_insert_history
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    transaction_isolation
    tx_read_only
    transaction_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    Aria
    Percona's XtraDB instead of Oracle's InnoDB
    thread pool implementation
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_block_size
    aria_checkpoint_interval
    aria_checkpoint_log_activity
    aria_force_start_after_recovery_failures
    aria_group_commit
    aria_group_commit_interval
    aria_log_file_size
    aria_log_purge_type
    aria_max_sort_file_size
    aria_page_checksum
    aria_pagecache_age_threshold
    aria_pagecache_buffer_size
    aria_pagecache_division_limit
    aria_recover
    aria_repair_threads
    aria_sort_buffer_size
    aria_stats_method
    aria_sync_log_dir
    aria_used_for_temp_tables
    binlog-annotate-row-events
    binlog_checksum
    binary log
    binlog_optimize_thread_scheduling
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    engine_condition_pushdown
    optimizer_switch
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    ignore_db_dirs
    in_transaction
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_segments
    Segmented Key Cache
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    master_verify_checksum
    max_seeks_for_key
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    old_mode
    OLD Mode
    optimizer_switch
    See details
    plugin_maturity
    progress_report_time
    query_cache_strip_comments
    query cache
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    skip_replication
    Selectively skipping replication of binlog events
    slave_sql_verify_checksum
    thread_pool_idle_timeout
    Using the Thread Pool in MariaDB 5.5
    thread_pool_max_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_min_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_oversubscribe
    Using the Thread Pool in MariaDB 5.5
    thread_pool_size
    Using the Thread Pool in MariaDB 5.5
    thread_pool_stall_limit
    Using the Thread Pool in MariaDB 5.5
    thread_stack
    Using the Thread Pool in MariaDB 5.5
    userstat
    User Statistics
    roles
    allow_suspicious_udfs
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_do_db
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_ignore_db
    encrypt_binlog
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    character_set_collations
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    InnoDB Change Buffer
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_purge_batch_size
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_min_examined_row_limit
    min_examined_row_limit
    log_slow_query
    log_slow_query
    log_slow_query_file
    slow_query_log_file
    log_slow_query_time
    long_query_time
    log_slow_max_warnings
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    note_verbosity
    old_mode
    OLD Mode
    old_passwords
    optimizer_extra_pruning_depth
    optimizer_max_sel_arg_weight
    optimizer_max_sel_args
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_rewrite_db
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    skip_grant_tables
    slave_max_statement_time
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    system_versioning_insert_history
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    transaction_isolation
    tx_read_only
    transaction_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    roles
    allow_suspicious_udfs
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    encrypt_binlog
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_event_max_size
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    InnoDB Change Buffer
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_min_examined_row_limit
    min_examined_row_limit
    log_slow_query
    log_slow_query
    log_slow_query_file
    slow_query_log_file
    log_slow_query_time
    long_query_time
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_extra_pruning_depth
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_rewrite_db
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    skip_grant_tables
    slave_max_statement_time
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    system_versioning_insert_history
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    Aria
    Percona's XtraDB instead of Oracle's InnoDB
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_*
    Aria
    bind_address
    binlog-annotate-row-events
    binlog_checksum
    binary log
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_optimize_thread_scheduling
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    GTID implementations
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    host_cache_size
    max_connections
    in_transaction
    innodb_*
    join_buffer_size
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    max_allowed_packet
    max_long_data_size
    max_relay_log_size
    max_seeks_for_key
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_cache_size
    query_cache_strip_comments
    query cache
    query_cache_type
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_recovery_rank
    secure_auth
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_parallel_max_queued
    parallel replication
    slave_parallel_threads
    parallel replication
    sort_buffer_size
    sql_mode
    SQL Mode
    sync_master_info
    sync_relay_log
    sync_relay_log_info
    table_definition_cache
    table_open_cache
    Optimizing table_open_cache
    table_open_cache_instances
    thread_cache_size
    improved thread pool
    thread_pool_idle_timeout
    Using the Thread Pool in MariaDB 5.5
    thread_pool_max_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_min_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_oversubscribe
    Using the Thread Pool in MariaDB 5.5
    thread_pool_size
    Using the Thread Pool in MariaDB 5.5
    thread_pool_stall_limit
    Using the Thread Pool in MariaDB 5.5
    thread_stack
    Using the Thread Pool in MariaDB 5.5
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    Aria
    Percona's XtraDB instead of Oracle's InnoDB
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_*
    bind_address
    binlog-annotate-row-events
    binlog_checksum
    binary log
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    GTID
    binlog_optimize_thread_scheduling
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    in_transaction
    innodb_*
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    max_allowed_packet
    max_long_data_size
    max_relay_log_size
    max_seeks_for_key
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_alloc_block_size
    query_cache_strip_comments
    query cache
    query_prealloc_size
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    secure_auth
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    sort_buffer_size
    sql_mode
    GRANT
    SQL Mode
    strict_password_validation
    table_definition_cache
    table_open_cache
    Optimizing table_open_cache
    table_open_cache_instances
    thread_cache_size
    improved thread pool
    thread_pool_idle_timeout
    Using the Thread Pool in MariaDB 5.5
    thread_pool_max_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_min_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_oversubscribe
    Using the Thread Pool in MariaDB 5.5
    thread_pool_size
    Using the Thread Pool in MariaDB 5.5
    thread_pool_stall_limit
    Using the Thread Pool in MariaDB 5.5
    thread_stack
    Using the Thread Pool in MariaDB 5.5
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    Aria
    Percona's XtraDB instead of Oracle's InnoDB
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_*
    bind_address
    binlog-annotate-row-events
    binlog_checksum
    binary log
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_format
    GTID
    binlog_optimize_thread_scheduling
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    in_transaction
    innodb_*
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    max_long_data_size
    max_relay_log_size
    max_seeks_for_key
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_alloc_block_size
    query_cache_strip_comments
    query cache
    query_prealloc_size
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    sort_buffer_size
    sql_mode
    SQL Mode
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    table_definition_cache
    table_open_cache
    Optimizing table_open_cache
    table_open_cache_instances
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_idle_timeout
    Using the Thread Pool in MariaDB 5.5
    thread_pool_max_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_min_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_oversubscribe
    Using the Thread Pool in MariaDB 5.5
    thread_pool_size
    Using the Thread Pool in MariaDB 5.5
    thread_pool_stall_limit
    Using the Thread Pool in MariaDB 5.5
    thread_stack
    Using the Thread Pool in MariaDB 5.5
    timed_mutexes
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_ssl_library
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_*
    bind_address
    binlog-annotate-row-events
    binlog_checksum
    binary log
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    GTID
    binlog_optimize_thread_scheduling
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    in_transaction
    innodb_*
    innodb_log_optimize_ddl
    innodb_safe_truncate
    TRUNCATE TABLE
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    max_allowed_packet
    max_long_data_size
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_alloc_block_size
    query_cache_strip_comments
    query cache
    query_prealloc_size
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    secure_auth
    session_track_schema
    session_track_state_change
    session_track_system_variables
    session_track_transaction_info
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    read_binlog_speed_limit
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    sort_buffer_size
    sql_mode
    GRANT
    SQL Mode
    strict_password_validation
    table_definition_cache
    table_open_cache
    Optimizing table_open_cache
    table_open_cache_instances
    thread_cache_size
    improved thread pool
    thread_pool_idle_timeout
    Using the Thread Pool in MariaDB 5.5
    thread_pool_max_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_min_threads
    Using the Thread Pool in MariaDB 5.5
    thread_pool_oversubscribe
    Using the Thread Pool in MariaDB 5.5
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool in MariaDB 5.5
    thread_pool_stall_limit
    Using the Thread Pool in MariaDB 5.5
    thread_stack
    Using the Thread Pool in MariaDB 5.5
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    aria_*
    bind_address
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    check_constraint_checks
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    in_transaction
    innodb_*
    innodb_log_optimize_ddl
    innodb_safe_truncate
    TRUNCATE TABLE
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    lock_wait_timeout
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_slow_admin_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    max_allowed_packet
    max_long_data_size
    max_session_mem_used
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_alloc_block_size
    query_cache_strip_comments
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    server_id
    session_track_system_variables
    session_track_transaction_info
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    sort_buffer_size
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    table_definition_cache
    table_open_cache_instances
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    timed_mutexes
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_ssl_library
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    alter_algorithm
    ALTER TABLE ALGORITHM
    aria_*
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    check_constraint_checks
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_openssl
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    in_transaction
    innodb_*
    innodb_fast_shutdown
    innodb_log_optimize_ddl
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    lock_wait_timeout
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slow_admin_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    max_allowed_packet
    max_long_data_size
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_mode
    OLD Mode
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    query_alloc_block_size
    query_cache_strip_comments
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    secure_timestamp
    server_id
    session_track_transaction_info
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    timed_mutexes
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    roles
    allow_suspicious_udfs
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    encrypt_binlog
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_event_max_size
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    InnoDB Change Buffer
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_min_examined_row_limit
    min_examined_row_limit
    log_slow_query
    log_slow_query
    log_slow_query_file
    slow_query_log_file
    log_slow_query_time
    long_query_time
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_extra_pruning_depth
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_rewrite_db
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    skip_grant_tables
    slave_max_statement_time
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    system_versioning_insert_history
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    transaction_isolation
    tx_read_only
    transaction_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_autoinc_lock_mode
    innodb_background_*
    data scrubbing
    innodb_checksum_algorithm
    innodb_compression_*
    InnoDB compression
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_file_format
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_idle_flush_pct
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_large_prefix
    innodb_lock_schedule_algorithm
    innodb_log_optimize_ddl
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_prefix_index_cluster_optimization
    innodb_encrypt_log
    innodb_rollback_segments
    innodb_scrub_*
    scrub the redo log
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_undo_log_truncate
    innodb_undo_logs
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    aria_*
    back_log
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_autoinc_lock_mode
    innodb_background_*
    data scrubbing
    innodb_checksums
    innodb_compression_*
    InnoDB compression
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_idle_flush_pct
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_lock_schedule_algorithm
    innodb_locks_unsafe_for_binlog
    READ COMMITTED transaction isolation
    innodb_log_optimize_ddl
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_prefix_index_cluster_optimization
    innodb_encrypt_log
    innodb_scrub_*
    scrub the redo log
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_sample_pages
    innodb_stats_traditional
    innodb_undo_log_truncate
    innodb_undo_logs
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_long_data_size
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    multi_range_count
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    timed_mutexes
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    Aria
    thread pool implementation
    GTID implementations
    MyISAM
    Aria
    key_buffer_size
    aria_pagecache_buffer_size
    key_buffer_size
    MyISAM
    Aria
    aria_pagecache_buffer_size
    Aria
    aria_pagecache_buffer_size
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_autoinc_lock_mode
    innodb_background_*
    data scrubbing
    innodb_checksums
    innodb_compression_*
    InnoDB compression
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_file_format
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_idle_flush_pct
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_large_prefix
    innodb_lock_schedule_algorithm
    innodb_locks_unsafe_for_binlog
    READ COMMITTED transaction isolation
    innodb_log_optimize_ddl
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_prefix_index_cluster_optimization
    innodb_encrypt_log
    innodb_scrub_*
    scrub the redo log
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_sample_pages
    innodb_stats_traditional
    innodb_undo_log_truncate
    innodb_undo_logs
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_long_data_size
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    multi_range_count
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    timed_mutexes
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    roles
    allow_suspicious_udfs
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_extra_pruning_depth
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    skip_grant_tables
    slave_max_statement_time
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_concurrency
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog_alter_two_phase
    binlog_annotate_row_events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function
    roles
    alter_algorithm
    ALTER TABLE ALGORITHM
    analyze_sample_percentage
    ANALYZE TABLE
    aria_*
    back_log
    binlog-annotate-row-events
    binlog_commit_wait_count
    parallel replication
    binlog_commit_wait_usec
    parallel replication
    binlog_expire_logs_seconds
    binlog_file_cache_size
    binary log
    binlog_format
    binary log formats
    GTID
    binlog_optimize_thread_scheduling
    binlog_row_metadata
    character_set_*
    character set
    check_constraint_checks
    collation_*
    character set
    column_compression_threshold
    Storage-engine Independent Column Compression
    column_compression_zlib_level
    Storage-engine Independent Column Compression
    column_compression_zlib_strategy
    Storage-engine Independent Column Compression
    column_compression_zlib_wrap
    Storage-engine Independent Column Compression
    common table expressions
    max_recursive_iterations
    date_format
    datetime_format
    deadlock_search_depth_long
    deadlock_search_depth_short
    deadlock_timeout_long
    deadlock_timeout_short
    debug_no_thread_alarm
    default_master_connection
    multi-source replication
    default_regex_flags
    PCRE
    default_tmp_storage_engine
    CREATE TEMPORARY TABLE
    disconnect_on_expired_password
    encrypt_binlog
    table and tablespace encryption
    encrypt_tmp_files
    table and tablespace encryption
    encrypt_tmp_disk_tables
    table and tablespace encryption
    GTID implementations
    enforce_storage_engine
    eq_range_index_dive_limit
    event_scheduler
    expensive_subquery_limit
    explicit_defaults_for_timestamp
    extra_max_connections
    MariaDB 5.1 threadpool
    extra_port
    MariaDB 5.1 threadpool
    group_concat_max_len
    GROUP_CONCAT()
    gtid_binlog_pos
    GTID implementations
    gtid_binlog_state
    GTID implementations
    gtid_cleanup_batch_size
    GTID implementations
    gtid_current_pos
    GTID implementations
    gtid_domain_id
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_ignore_duplicates
    GTID implementations
    GTID implementations
    GTID implementations
    GTID implementations
    gtid_pos_auto_engines
    GTID implementations
    GTID implementations
    gtid_seq_no
    GTID implementations
    gtid_slave_pos
    GTID implementations
    gtid_strict_mode
    GTID implementations
    have_crypt
    ENCRYPT
    have_openssl
    have_query_cache
    query cache
    have_symlink
    Histogram-based Statistics
    histogram_size
    histogram_size
    Histogram-based Statistics
    histogram_type
    Histogram-based Statistics
    idle_readonly_transaction_timeout
    idle_transaction_timeout
    idle_write_transaction_timeout
    ignore_builtin_innodb
    in_predicate_conversion_threshold
    Conversion of Big IN Predicates Into Subqueries
    in_transaction
    innodb_adaptive_flushing_lwm
    double
    integer
    innodb_adaptive_hash_index
    DROP TABLE
    TRUNCATE TABLE
    ALTER TABLE
    DROP INDEX
    innodb_adaptive_max_sleep_delay
    innodb_autoinc_lock_mode
    innodb_buffer_pool_instances
    innodb_checksum_algorithm
    innodb_commit_concurrency
    innodb_compression_*
    InnoDB compression
    innodb_concurrency_tickets
    innodb_deadlock_report
    innodb_default_encryption_key_id
    Data at Rest Encryption
    innodb_defragment
    defragment InnoDB tablespaces
    innodb_disallow_writes
    innodb_encrypt_*
    Data at Rest Encryption
    innodb_fatal_semaphore_wait_threshold
    innodb_flush_method
    innodb_flush_neighbors
    innodb_force_primary_key
    innodb_immediate_scrub_data_uncompressed
    data scrubbing
    innodb_instant_alter_column_allowed
    Instant ADD COLUMN for InnoDB
    innodb_log_checksums
    innodb_log_compressed_pages
    innodb_log_files_in_group
    innodb_max_dirty_pages_pct
    innodb_max_dirty_pages_pct_lwm
    innodb_max_undo_log_size
    innodb_open_files
    table_open_cache
    innodb_page_cleaners
    innodb_prefix_index_cluster_optimization
    innodb_read_only_compressed
    ROW_FORMAT=COMPRESSED
    innodb_encrypt_log
    innodb_replication_delay
    innodb_rollback_segments
    innodb_spin_wait_delay
    innodb_stats_modified_counter
    innodb_stats_traditional
    innodb_sync_array_size
    innodb_thread_concurrency
    innodb_thread_sleep_delay
    innodb_undo_log_truncate
    innodb_undo_tablespaces
    innodb_use_atomic_writes
    Atomic writes
    aria_used_for_temp_tables
    join_buffer_space_limit
    join_cache_level
    key_buffer_size
    key_cache_file_hash_size
    key_cache_segments
    Segmented Key Cache
    last_gtid
    GTID implementations
    local_infile
    lock_wait_timeout
    log_bin
    binary log
    log_bin_compress
    binary log
    log_bin_compress_min_len
    Compressing Events to Reduce Size of the Binary Log
    log_disabled_statements
    general log
    log_slave_updates
    binary logging
    log_slow_admin_statements
    slow query log
    log_slow_disabled_statements
    slow query log
    log_slow_filter
    log_slow_rate_limit
    slow query log
    log_slow_slave_statements
    slow query log
    log_slow_verbosity
    slow query log
    Slow Query Log Extended Statistics
    log_tc_size
    log_warnings
    roles
    max_allowed_packet
    max_error_count
    SHOW ERRORS
    SHOW WARNINGS
    max_length_for_sort_data
    max_password_errors
    max_recursive_iterations
    max_relay_log_size
    max_seeks_for_key
    max_session_mem_used
    max_statement_time
    max_tmp_tables
    max_write_lock_count
    mrr_buffer_size
    Multi Range Read optimization
    myisam_block_size
    MyISAM
    myisam_recover_options
    myisam_sort_buffer_size
    mysql56_temporal_format
    TIME
    DATETIME
    TIMESTAMP
    old_alter_table
    alter_algorithm
    old_mode
    OLD Mode
    old_passwords
    optimizer_selectivity_sampling_limit
    optimizer_switch
    See details
    optimizer_use_condition_selectivity
    delaying replication
    performance_schema
    Performance Schema
    performance_schema_*
    plugin_maturity
    progress_report_time
    proxy_protocol_networks
    proxy protocol
    query_alloc_block_size
    query_cache_*
    query cache
    query_prealloc_size
    read_binlog_speed_limit
    replicate_annotate_row_events
    replicate_do_db
    Dynamic Replication Variables
    replicate_do_table
    Dynamic Replication Variables
    replicate_events_marked_for_skip
    Selectively skipping replication of binlog events
    replicate_ignore_db
    Dynamic Replication Variables
    replicate_ignore_table
    Dynamic Replication Variables
    replicate_wild_do_table
    Dynamic Replication Variables
    replicate_wild_ignore_table
    Dynamic Replication Variables
    rowid_merge_buff_size
    Non-semi-join subquery optimizations
    rpl_semi_sync_*
    semisynchronous replication
    STOP SLAVE
    s3_*
    secure_auth
    secure_timestamp
    SHOW CREATE TABLE
    skip_parallel_replication
    parallel replication
    skip_replication
    Selectively skipping replication of binlog events
    slave_ddl_exec_mode
    slave_domain_parallel_threads
    parallel replication
    slave_net_timeout
    slave_parallel_max_queued
    parallel replication
    slave_parallel_mode
    parallel_replication
    slave_parallel_threads
    parallel replication
    slave_run_triggers_for_rbr
    Running triggers on the slave for Row-based events
    slave_transaction_retry_errors
    slave_transaction_retry_interval
    sort_buffer_size
    sql_if_exists
    sql_mode
    SQL Mode
    standard_compliant_cte
    Common Table Expressions
    storage_engine
    default_storage_engine
    strict_password_validation
    sync_binlog
    sync_frm
    system_versioning_alter_history
    System-Versioned Tables
    system_versioning_asof
    System-Versioned Tables
    table_definition_cache
    table_open_cache_instances
    tcp_keepalive_interval
    tcp_keepalive_probes
    tcp_keepalive_time
    tcp_nodelay
    thread_cache_size
    improved thread pool
    thread_pool_dedicated_listener
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_exact_stats
    Information Schema THREADPOOL_QUEUES Table
    thread_pool_idle_timeout
    Using the Thread Pool
    thread_pool_max_threads
    Using the Thread Pool
    thread_pool_min_threads
    Using the Thread Pool
    thread_pool_oversubscribe
    Using the Thread Pool
    thread_pool_prio_kickup
    Using the Thread Pool
    thread_pool_priority
    Using the Thread Pool
    thread_pool_size
    Using the Thread Pool
    thread_pool_stall_limit
    Using the Thread Pool
    thread_stack
    Using the Thread Pool
    time_format
    tmp_disk_table_size
    tmp_memory_table_size
    tmp_table_size
    tx_isolation
    tx_read_only
    tx_isolation
    tx_read_only
    use_stat_tables
    engine-independent table statistics
    userstat
    User Statistics
    version_malloc_library
    version_source_revision
    version_ssl_library
    window function