diff options
Diffstat (limited to '')
-rwxr-xr-x | debian/tests/configuration-tracing | 111 | ||||
-rw-r--r-- | debian/tests/control | 20 | ||||
-rw-r--r-- | debian/tests/smoke | 123 | ||||
-rw-r--r-- | debian/tests/traces/mariadb-print-defaults.expected | 2 | ||||
-rw-r--r-- | debian/tests/traces/mariadb-verbose-help.expected | 228 | ||||
-rw-r--r-- | debian/tests/traces/mariadbd-print-defaults.expected | 2 | ||||
-rw-r--r-- | debian/tests/traces/mariadbd-verbose-help.expected | 3110 | ||||
-rw-r--r-- | debian/tests/upstream | 74 |
8 files changed, 3670 insertions, 0 deletions
diff --git a/debian/tests/configuration-tracing b/debian/tests/configuration-tracing new file mode 100755 index 00000000..fc6dbbd1 --- /dev/null +++ b/debian/tests/configuration-tracing @@ -0,0 +1,111 @@ +#!/bin/sh +# dep8 smoke test for mariadbd +# Author: Otto Kekäläinen <otto@debian.org> +# +# This test should be declared in debian/tests/control with a dependency +# on the package that provides a configured MariaDB server (eg. +# mariadb-server). +# +# This test should be declared in debian/tests/control with the +# following restrictions: +# - needs-root (binaries in /usr/sbin need root to run) +# - allow-stderr (set -x always outputs to stderr, also if mariadbd was not +# launched as a service it will complain that mysql.plugin table is empty) +# +# This test prints out various configuration information from mariadbd and +# compares the result to expected values in original binary/build. +# + +normalize_value() { + VARIABLE="$1" + VALUE="$2" + # In sed the '\s.*' will match whitespace followed by any other chars until end of line + sed "s/^$VARIABLE\(\s\s*\).*$/$VARIABLE\1$VALUE/" -i "$TEMPFILE" +} + +trace() { + TRACE_NAME="$(echo "$*" | sed -E 's|/usr/(s?)bin/||' | sed 's/ //g' | sed 's/--/-/g')" + + # Show in test what was run + echo + echo "Tracing: $*" + + # shellcheck disable=SC2068 + $@ > "$TRACE_NAME.actual" + + # Normalize contents for know special case + if echo "$*" | grep -q verbose + then + TEMPFILE="$(mktemp)" + # Use 'tail' to skip first line that has version and architecture strings which + # we intentionally do not want to include in the trace file. + tail -n +2 "$TRACE_NAME.actual" > "$TEMPFILE" + + # Hostname varies one very machine + sed "s/$(hostname)/HOSTNAME/g" -i "$TEMPFILE" + + # Version/revision increases on every release + VERSION=$(mariadbd --help --verbose | grep -e "^version " | rev | cut -d ' ' -f 1 | rev) + sed "s/$VERSION/VERSION/g" -i "$TEMPFILE" + + # SSL library version inherited form dependency, not relevant for tracing + # the correctness of the MariaDB build itself + sed 's/OpenSSL 3.*/SSL-VERSION/' -i "$TEMPFILE" + + # Normalize values that depend on build environment + normalize_value system-time-zone UTC # depends on OS environment + normalize_value open-files-limit 32000 # depends on OS environment + normalize_value thread-pool-size 2 # depends on CPU cores available + normalize_value version-compile-machine ARCH # x86_64, aarch64, armv7l .. + + # armhf/armel might have: debian-linux-gnueabi, debian-linux-gnueabihf + normalize_value version-compile-os debian-linux-gnu + + # In Sid 'Debian n/a', in Bookworm 'Debian 12' + normalize_value version-comment "Debian RELEASE" + + # Inherits git commit id from latest upstream release and thus not constant + normalize_value version-source-revision - + + # 32-bit systems (i386, armel, armhf) have lower values + normalize_value innodb-io-capacity-max 18446744073709551615 # 32-bit: 4294967295 + normalize_value max-binlog-cache-size 18446744073709547520 # 32-bit: 4294963200 + normalize_value max-binlog-stmt-cache-size 18446744073709547520 # 32-bit: 4294963200 + normalize_value myisam-max-sort-file-size 18446744073709551615 # 32-bit: 2146435072 + normalize_value myisam-mmap-size 9223372036853727232 # 32-bit: 4294967295 + normalize_value tmp-disk-table-size 18446744073709551615 # 32-bit: 4294967295 + + # ppc64el has larger default value: 393216 + normalize_value log-tc-size 24576 + + mv "$TEMPFILE" "$TRACE_NAME.actual" + fi + + echo "diff --ignore-space-change -u $TRACE_NAME.expected $TRACE_NAME.actual" + # Validate that trace file in source code matches tested + if ! diff --ignore-space-change -u "$TRACE_NAME.expected" "$TRACE_NAME.actual" + then + echo "Error: Output from '$*' did NOT match what was expected" + echo + echo "If the change is intentional, update the debian/tests/traces to match" + echo "the new values and document change to users in mariadb-server.NEWS" + exit 1 + fi +} + +echo "Running test 'configuration-tracing'" +cd debian/tests/traces || exit 1 + +set -e + +# Dump out what parameters mariadb would be called with by default +trace /usr/bin/mariadb --print-defaults + +# Dump out all help texts, client variables and their default values +trace /usr/bin/mariadb --verbose --help + +# Dump out what parameters mariadbd would be called with by default on system +trace /usr/sbin/mariadbd --print-defaults + +# Dump out all help texts, server variables and their default values +trace /usr/sbin/mariadbd --verbose --help diff --git a/debian/tests/control b/debian/tests/control new file mode 100644 index 00000000..d91e3b11 --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,20 @@ +Tests: configuration-tracing +Depends: mariadb-server, diffutils +Restrictions: allow-stderr needs-root + +Tests: smoke +# RocksDB is not built for all archs. Rather than duplicating the condition +# for its existence (see the list in debian/control), install it if available +# and check in the test if it's functional when it should be. +# The plugin package also already depends on the other one. +Depends: mariadb-plugin-rocksdb | mariadb-server, + mariadb-plugin-provider-bzip2, + mariadb-plugin-provider-lz4, + mariadb-plugin-provider-lzma, + mariadb-plugin-provider-lzo, + mariadb-plugin-provider-snappy +Restrictions: allow-stderr needs-root isolation-container + +Tests: upstream +Depends: mariadb-test, eatmydata +Restrictions: allow-stderr breaks-testbed diff --git a/debian/tests/smoke b/debian/tests/smoke new file mode 100644 index 00000000..5c4facbb --- /dev/null +++ b/debian/tests/smoke @@ -0,0 +1,123 @@ +#!/bin/sh +# dep8 smoke test for mysql-server +# Author: Robie Basak <robie.basak at canonical.com> +# +# This test should be declared in debian/tests/control with a dependency +# on the package that provides a configured MariaDB server (eg. +# mariadb-server). +# +# This test should be declared in debian/tests/control with the +# following restrictions: +# - allow-stderr (set -x always outputs to stderr) +# - needs-root (to be able to log into the database) +# - isolation-container (to be able to start service) +# +# This test: +# +# 1) Creates a test database and test user as the root user. +# +# 2) Creates a test table and checks it appears to operate normally +# using the test user and test database. +# +# 3) Checks compression support for InnoDB & RocksDB engine. + +echo "Running test 'smoke'" +set -ex + +# Start the daemon if it was not running. For example in Docker testing +# environments there might not be any systemd et al and the service needs to +# be started manually. +if ! command -v systemctl +then + if ! /etc/init.d/mariadb status + then + echo "Did not find systemctl and daemon was not running, starting it.." + /etc/init.d/mariadb start + fi +else + # If systemd (and systemctl) is available, but the service did not start, then + # this smoke test is supposed to fail if next commands don't work. + echo "Found systemctl, continuing smoke test.." + # Compression plugins are separated from main server package + # to own packages (for example LZ4 package mariadb-plugin-provider-lz4) + # and they are installed after mariadb-server. + # which means that they don't exist if MariaDB is not restarted + systemctl restart mariadb +fi + +mysql <<EOT +CREATE DATABASE testdatabase; +CREATE USER 'testuser'@'localhost' identified by 'testpassword'; +GRANT ALL ON testdatabase.* TO 'testuser'@'localhost'; +EOT + +mysql testdatabase <<EOT +CREATE TABLE foo (bar INTEGER); +INSERT INTO foo (bar) VALUES (41); +EOT + +result=$(echo 'SELECT bar+1 FROM foo;'|mysql --batch --skip-column-names --user=testuser --password=testpassword testdatabase) +if [ "$result" != "42" ] +then + echo "Unexpected result" >&2 + exit 1 +fi + +mysql --user=testuser --password=testpassword testdatabase <<EOT +DROP TABLE foo; +EOT + +mysql <<EOT +DROP DATABASE testdatabase; +DROP USER 'testuser'@'localhost'; +EOT + +# This will never fail but exists purely for debugging purposes in case a later +# step would fail +mariadb <<EOT +SHOW GLOBAL STATUS WHERE Variable_name LIKE 'Innodb_have_%'; +EOT + +mariadb <<EOT +SET GLOBAL innodb_compression_algorithm=lz4; +SET GLOBAL innodb_compression_algorithm=lzo; +SET GLOBAL innodb_compression_algorithm=lzma; +SET GLOBAL innodb_compression_algorithm=bzip2; +SET GLOBAL innodb_compression_algorithm=snappy; +SET GLOBAL innodb_compression_algorithm=zlib; +SET GLOBAL innodb_compression_algorithm=none; +EOT + +# Check whether RocksDB should be installed or not +plugin=mariadb-plugin-rocksdb +if [ "$(dpkg-architecture -qDEB_HOST_ARCH_BITS)" != 32 ] && + [ "$(dpkg-architecture -qDEB_HOST_ARCH_ENDIAN)" = little ] +then + dpkg-query -W $plugin + + LOG=/var/lib/mysql/#rocksdb/LOG + # XXX: The server may only be started during the install of + # mariadb-server, which happens before that of the plugin. + [ -e $LOG ] || mariadb -e "INSTALL PLUGIN RocksDB SONAME 'ha_rocksdb';" + # XXX: rocksdb_supported_compression_types variable does not report ZSTD. + + # Print RocksDB supported items so test log is easier to debug + grep -F " supported:" $LOG + + # Check that the expected compression methods are supported + for a in LZ4 Snappy Zlib ZSTD + do + if ! grep -qE "k$a(Compression)? supported: 1" $LOG + then + # Fail with explicit error message + echo "Error: Compression method $a not supported by RocksDB!" >&2 + exit 1 + fi + done +else + if dpkg-query -W $plugin + then + echo "Error: Plugin $plugin was found even though it should not exist on a 32-bit and little-endian system" + exit 1 + fi +fi diff --git a/debian/tests/traces/mariadb-print-defaults.expected b/debian/tests/traces/mariadb-print-defaults.expected new file mode 100644 index 00000000..acb57953 --- /dev/null +++ b/debian/tests/traces/mariadb-print-defaults.expected @@ -0,0 +1,2 @@ +/usr/bin/mariadb would have been started with the following arguments: +--socket=/run/mysqld/mysqld.sock diff --git a/debian/tests/traces/mariadb-verbose-help.expected b/debian/tests/traces/mariadb-verbose-help.expected new file mode 100644 index 00000000..015a0430 --- /dev/null +++ b/debian/tests/traces/mariadb-verbose-help.expected @@ -0,0 +1,228 @@ +Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. + +Usage: /usr/bin/mariadb [OPTIONS] [database] + +Default options are read from the following files in the given order: +/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf +The following groups are read: mysql mariadb-client client client-server client-mariadb +The following options may be given as the first argument: +--print-defaults Print the program argument list and exit. +--no-defaults Don't read default options from any option file. +The following specify which files/extra groups are read (specified before remaining options): +--defaults-file=# Only read default options from the given file #. +--defaults-extra-file=# Read this file after the global files are read. +--defaults-group-suffix=# Additionally read default groups with # appended as a suffix. + + -?, --help Display this help and exit. + -I, --help Synonym for -? + --abort-source-on-error + Abort 'source filename' operations in case of errors + --auto-rehash Enable automatic rehashing. One doesn't need to use + 'rehash' to get table and field completion, but startup + and reconnecting may take a longer time. Disable with + --disable-auto-rehash. + (Defaults to on; use --skip-auto-rehash to disable.) + -A, --no-auto-rehash + No automatic rehashing. One has to use 'rehash' to get + table and field completion. This gives a quicker start of + mysql and disables rehashing on reconnect. + --auto-vertical-output + Automatically switch to vertical output mode if the + result is wider than the terminal width. + -B, --batch Don't use history file. Disable interactive behavior. + (Enables --silent.) + --binary-as-hex Print binary data as hex + --character-sets-dir=name + Directory for character set files. + --column-type-info Display column type information. + -c, --comments Preserve comments. Send comments to the server. The + default is --skip-comments (discard comments), enable + with --comments. + -C, --compress Use compression in server/client protocol. + -#, --debug[=#] This is a non-debug version. Catch this and exit. + --debug-check Check memory and open file usage at exit. + -T, --debug-info Print some debug info at exit. + -D, --database=name Database to use. + --default-character-set=name + Set the default character set. + --delimiter=name Delimiter to be used. + -e, --execute=name Execute command and quit. (Disables --force and history + file.) + --enable-cleartext-plugin + Obsolete option. Exists only for MySQL compatibility. + -E, --vertical Print the output of a query (rows) vertically. + -f, --force Continue even if we get an SQL error. Sets + abort-source-on-error to 0 + -G, --named-commands + Enable named commands. Named commands mean this program's + internal commands; see mysql> help . When enabled, the + named commands can be used from any line of the query, + otherwise only from the first line, before an enter. + Disable with --disable-named-commands. This option is + disabled by default. + -i, --ignore-spaces Ignore space after function names. + --init-command=name SQL Command to execute when connecting to MariaDB server. + Will automatically be re-executed when reconnecting. + --local-infile Enable/disable LOAD DATA LOCAL INFILE. + -b, --no-beep Turn off beep on error. + -h, --host=name Connect to host. + -H, --html Produce HTML output. + -X, --xml Produce XML output. + --line-numbers Write line numbers for errors. + (Defaults to on; use --skip-line-numbers to disable.) + -L, --skip-line-numbers + Don't write line number for errors. + -n, --unbuffered Flush buffer after each query. + --column-names Write column names in results. + (Defaults to on; use --skip-column-names to disable.) + -N, --skip-column-names + Don't write column names in results. + --sigint-ignore Ignore SIGINT (CTRL-C). + -o, --one-database Ignore statements except those that occur while the + default database is the one named at the command line. + --pager[=name] Pager to use to display results. If you don't supply an + option, the default pager is taken from your ENV variable + PAGER. Valid pagers are less, more, cat [> filename], + etc. See interactive help (\h) also. This option does not + work in batch mode. Disable with --disable-pager. This + option is disabled by default. + -p, --password[=name] + Password to use when connecting to server. If password is + not given it's asked from the tty. + -P, --port=# Port number to use for connection or 0 for default to, in + order of preference, my.cnf, $MYSQL_TCP_PORT, + /etc/services, built-in default (3306). + --progress-reports Get progress reports for long running commands (like + ALTER TABLE) + (Defaults to on; use --skip-progress-reports to disable.) + --prompt=name Set the command line prompt to this value. + --protocol=name The protocol to use for connection (tcp, socket, pipe). + -q, --quick Don't cache result, print it row by row. This may slow + down the server if the output is suspended. Doesn't use + history file. + -r, --raw Write fields without conversion. Used with --batch. + --reconnect Reconnect if the connection is lost. Disable with + --disable-reconnect. This option is enabled by default. + (Defaults to on; use --skip-reconnect to disable.) + -s, --silent Be more silent. Print results with a tab as separator, + each row on new line. + -S, --socket=name The socket file to use for connection. + --ssl Enable SSL for connection (automatically enabled with + other flags). + (Defaults to on; use --skip-ssl to disable.) + --ssl-ca=name CA file in PEM format (check OpenSSL docs, implies + --ssl). + --ssl-capath=name CA directory (check OpenSSL docs, implies --ssl). + --ssl-cert=name X509 cert in PEM format (implies --ssl). + --ssl-cipher=name SSL cipher to use (implies --ssl). + --ssl-key=name X509 key in PEM format (implies --ssl). + --ssl-crl=name Certificate revocation list (implies --ssl). + --ssl-crlpath=name Certificate revocation list path (implies --ssl). + --tls-version=name TLS protocol version for secure connection. + --ssl-verify-server-cert + Verify server's "Common Name" in its cert against + hostname used when connecting. This option is disabled by + default. + -t, --table Output in table format. + --tee=name Append everything into outfile. See interactive help (\h) + also. Does not work in batch mode. Disable with + --disable-tee. This option is disabled by default. + -u, --user=name User for login if not current user. + -U, --safe-updates Only allow UPDATE and DELETE that uses keys. + -U, --i-am-a-dummy Synonym for option --safe-updates, -U. + -v, --verbose Write more. (-v -v -v gives the table output format). + -V, --version Output version information and exit. + -w, --wait Wait and retry if connection is down. + --connect-timeout=# Number of seconds before connection timeout. + --max-allowed-packet=# + The maximum packet length to send to or receive from + server. + --net-buffer-length=# + The buffer size for TCP/IP and socket communication. + --select-limit=# Automatic limit for SELECT when using --safe-updates. + --max-join-size=# Automatic limit for rows in a join when using + --safe-updates. + --secure-auth Refuse client connecting to server if it uses old + (pre-4.1.1) protocol. + --server-arg=name Send embedded server this as a parameter. + --show-warnings Show warnings after every statement. + --plugin-dir=name Directory for client-side plugins. + --default-auth=name Default authentication client-side plugin to use. + --binary-mode Binary mode allows certain character sequences to be + processed as data that would otherwise be treated with a + special meaning by the parser. Specifically, this switch + turns off parsing of all client commands except \C and + DELIMITER in non-interactive mode (i.e., when binary mode + is combined with either 1) piped input, 2) the --batch + mysql option, or 3) the 'source' command). Also, in + binary mode, occurrences of '\r\n' and ASCII '\0' are + preserved within strings, whereas by default, '\r\n' is + translated to '\n' and '\0' is disallowed in user input. + --connect-expired-password + Notify the server that this client is prepared to handle + expired password sandbox mode even if --batch was + specified. + +Variables (--variable-name=value) +and boolean options {FALSE|TRUE} Value (after reading options) +--------------------------------- ---------------------------------------- +abort-source-on-error FALSE +auto-rehash TRUE +auto-vertical-output FALSE +binary-as-hex FALSE +character-sets-dir (No default value) +column-type-info FALSE +comments FALSE +compress FALSE +debug-check FALSE +debug-info FALSE +database (No default value) +default-character-set auto +delimiter ; +vertical FALSE +force FALSE +named-commands FALSE +ignore-spaces FALSE +init-command (No default value) +local-infile FALSE +no-beep FALSE +host (No default value) +html FALSE +xml FALSE +line-numbers TRUE +unbuffered FALSE +column-names TRUE +sigint-ignore FALSE +port 0 +progress-reports TRUE +prompt \N [\d]> +protocol +quick FALSE +raw FALSE +reconnect TRUE +socket /run/mysqld/mysqld.sock +ssl TRUE +ssl-ca (No default value) +ssl-capath (No default value) +ssl-cert (No default value) +ssl-cipher (No default value) +ssl-key (No default value) +ssl-crl (No default value) +ssl-crlpath (No default value) +tls-version (No default value) +ssl-verify-server-cert FALSE +table FALSE +user (No default value) +safe-updates FALSE +i-am-a-dummy FALSE +connect-timeout 0 +max-allowed-packet 16777216 +net-buffer-length 16384 +select-limit 1000 +max-join-size 1000000 +secure-auth FALSE +show-warnings FALSE +plugin-dir (No default value) +default-auth (No default value) +binary-mode FALSE +connect-expired-password FALSE diff --git a/debian/tests/traces/mariadbd-print-defaults.expected b/debian/tests/traces/mariadbd-print-defaults.expected new file mode 100644 index 00000000..b03f2573 --- /dev/null +++ b/debian/tests/traces/mariadbd-print-defaults.expected @@ -0,0 +1,2 @@ +/usr/sbin/mariadbd would have been started with the following arguments: +--socket=/run/mysqld/mysqld.sock --pid-file=/run/mysqld/mysqld.pid --basedir=/usr --bind-address=127.0.0.1 --expire_logs_days=10 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci diff --git a/debian/tests/traces/mariadbd-verbose-help.expected b/debian/tests/traces/mariadbd-verbose-help.expected new file mode 100644 index 00000000..c33bf2b2 --- /dev/null +++ b/debian/tests/traces/mariadbd-verbose-help.expected @@ -0,0 +1,3110 @@ +Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. + +Starts the MariaDB database server. + +Usage: /usr/sbin/mariadbd [OPTIONS] + +Default options are read from the following files in the given order: +/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf +The following groups are read: mysqld server mysqld-10.11 mariadb mariadb-10.11 mariadbd mariadbd-10.11 client-server galera +The following options may be given as the first argument: +--print-defaults Print the program argument list and exit. +--no-defaults Don't read default options from any option file. +The following specify which files/extra groups are read (specified before remaining options): +--defaults-file=# Only read default options from the given file #. +--defaults-extra-file=# Read this file after the global files are read. +--defaults-group-suffix=# Additionally read default groups with # appended as a suffix. + + --allow-suspicious-udfs + Allows use of user-defined functions (UDFs) consisting of + only one symbol xxx() without corresponding xxx_init() or + xxx_deinit(). That also means that one can load any + function from any library, for example exit() from + libc.so + --alter-algorithm[=name] + Specify the alter table algorithm. One of: DEFAULT, COPY, + INPLACE, NOCOPY, INSTANT + --analyze-sample-percentage=# + Percentage of rows from the table ANALYZE TABLE will + sample to collect table statistics. Set to 0 to let + MariaDB decide what percentage of rows to sample. + -a, --ansi Use ANSI SQL syntax instead of MySQL syntax. This mode + will also set transaction isolation level 'serializable'. + --aria-block-size=# Block size to be used for Aria index pages. + --aria-checkpoint-interval=# + Interval between tries to do an automatic checkpoints. In + seconds; 0 means 'no automatic checkpoints' which makes + sense only for testing. + --aria-checkpoint-log-activity=# + Number of bytes that the transaction log has to grow + between checkpoints before a new checkpoint is written to + the log. + --aria-encrypt-tables + Encrypt tables (only for tables with ROW_FORMAT=PAGE + (default) and not FIXED/DYNAMIC) + --aria-force-start-after-recovery-failures=# + Number of consecutive log recovery failures after which + logs will be automatically deleted to cure the problem; 0 + (the default) disables the feature. + --aria-group-commit=name + Specifies Aria group commit mode. Possible values are + "none" (no group commit), "hard" (with waiting to actual + commit), "soft" (no wait for commit (DANGEROUS!!!)) + --aria-group-commit-interval=# + Interval between commits in microseconds (1/1000000 sec). + 0 stands for no waiting for other threads to come and do + a commit in "hard" mode and no sync()/commit at all in + "soft" mode. Option has only an effect if + aria_group_commit is used + --aria-log-dir-path=name + Path to the directory where to store transactional log + --aria-log-file-size=# + Limit for transaction log size + --aria-log-purge-type=name + Specifies how Aria transactional log will be purged. One + of: immediate, external, at_flush + --aria-max-sort-file-size=# + Don't use the fast sort index method to created index if + the temporary file would get bigger than this. + --aria-page-checksum + Maintain page checksums (can be overridden per table with + PAGE_CHECKSUM clause in CREATE TABLE) + (Defaults to on; use --skip-aria-page-checksum to disable.) + --aria-pagecache-age-threshold=# + This characterizes the number of hits a hot block has to + be untouched until it is considered aged enough to be + downgraded to a warm block. This specifies the percentage + ratio of that number of hits to the total number of + blocks in the page cache. + --aria-pagecache-buffer-size=# + The size of the buffer used for index blocks for Aria + tables. Increase this to get better index handling (for + all reads and multiple writes) to as much as you can + afford. + --aria-pagecache-division-limit=# + The minimum percentage of warm blocks in key cache + --aria-pagecache-file-hash-size=# + Number of hash buckets for open and changed files. If + you have a lot of Aria files open you should increase + this for faster flush of changes. A good value is + probably 1/10 of number of possible open Aria files. + --aria-recover-options[=name] + Specifies how corrupted tables should be automatically + repaired. Any combination of: NORMAL, BACKUP, FORCE, + QUICK, OFF + Use 'ALL' to set all combinations. + --aria-repair-threads=# + Number of threads to use when repairing Aria tables. The + value of 1 disables parallel repair. + --aria-sort-buffer-size=# + The buffer that is allocated when sorting the index when + doing a REPAIR or when creating indexes with CREATE INDEX + or ALTER TABLE. + --aria-stats-method=name + Specifies how Aria index statistics collection code + should treat NULLs. One of: nulls_unequal, nulls_equal, + nulls_ignored + --aria-sync-log-dir=name + Controls syncing directory after log file growth and new + file creation. One of: NEVER, NEWFILE, ALWAYS + --auto-increment-increment[=#] + Auto-increment columns are incremented by this + --auto-increment-offset[=#] + Offset added to Auto-increment columns. Used when + auto-increment-increment != 1 + --autocommit Set default value for autocommit (0 or 1) + (Defaults to on; use --skip-autocommit to disable.) + --automatic-sp-privileges + Creating and dropping stored procedures alters ACLs + (Defaults to on; use --skip-automatic-sp-privileges to disable.) + --back-log=# The number of outstanding connection requests MariaDB can + have. This comes into play when the main MariaDB thread + gets very many connection requests in a very short time + (Automatically configured unless set explicitly) + -b, --basedir=name Path to installation directory. All paths are usually + resolved relative to this + --big-tables Old variable, which if set to 1, allows large result sets + by saving all temporary sets to disk, avoiding 'table + full' errors. No longer needed, as the server now handles + this automatically. + --bind-address=name IP address to bind to. Several addresses may be + specified, separated by a comma (,). + --binlog-alter-two-phase + When set, split ALTER at binary logging into 2 + statements: START ALTER and COMMIT/ROLLBACK ALTER + --binlog-annotate-row-events + Tells the master to annotate RBR events with the + statement that caused these events + (Defaults to on; use --skip-binlog-annotate-row-events to disable.) + --binlog-cache-size=# + The size of the transactional cache for updates to + transactional engines for the binary log. If you often + use transactions containing many statements, you can + increase this to get more performance + --binlog-checksum=name + Type of BINLOG_CHECKSUM_ALG. Include checksum for log + events in the binary log. One of: NONE, CRC32 + --binlog-commit-wait-count=# + If non-zero, binlog write will wait at most + binlog_commit_wait_usec microseconds for at least this + many commits to queue up for group commit to the binlog. + This can reduce I/O on the binlog and provide increased + opportunity for parallel apply on the slave, but too high + a value will decrease commit throughput. + --binlog-commit-wait-usec=# + Maximum time, in microseconds, to wait for more commits + to queue up for binlog group commit. Only takes effect if + the value of binlog_commit_wait_count is non-zero. + --binlog-direct-non-transactional-updates + Causes updates to non-transactional engines using + statement format to be written directly to binary log. + Before using this option make sure that there are no + dependencies between transactional and non-transactional + tables such as in the statement INSERT INTO t_myisam + SELECT * FROM t_innodb; otherwise, slaves may diverge + from the master. + --binlog-do-db=name Tells the master it should log updates for the specified + database, and exclude all others not explicitly + mentioned. + --binlog-expire-logs-seconds=# + If non-zero, binary logs will be purged after + binlog_expire_logs_seconds seconds; It and + expire_logs_days are linked, such that changes in one are + converted into the other. Possible purges happen at + startup and at binary log rotation. + --binlog-file-cache-size=# + The size of file cache for the binary log + --binlog-format=name + What form of binary logging the master will use: either + ROW for row-based binary logging, STATEMENT for + statement-based binary logging, or MIXED. MIXED is + statement-based binary logging except for those + statements where only row-based is correct: those which + involve user-defined functions (i.e. UDFs) or the UUID() + function; for those, row-based binary logging is + automatically used. + --binlog-ignore-db=name + Tells the master that updates to the given database + should not be logged to the binary log. + --binlog-optimize-thread-scheduling + Run fast part of group commit in a single thread, to + optimize kernel thread scheduling. On by default. Disable + to run each transaction in group commit in its own + thread, which can be slower at very high concurrency. + This option is mostly for testing one algorithm versus + the other, and it should not normally be necessary to + change it. + (Defaults to on; use --skip-binlog-optimize-thread-scheduling to disable.) + --binlog-row-event-max-size=# + The maximum size of a row-based binary log event in + bytes. Rows will be grouped into events smaller than this + size if possible. The value has to be a multiple of 256. + --binlog-row-image=name + Controls whether rows should be logged in 'FULL', + 'NOBLOB' or 'MINIMAL' formats. 'FULL', means that all + columns in the before and after image are logged. + 'NOBLOB', means that mysqld avoids logging blob columns + whenever possible (eg, blob column was not changed or is + not part of primary key). 'MINIMAL', means that a PK + equivalent (PK columns or full row if there is no PK in + the table) is logged in the before image, and only + changed columns are logged in the after image. (Default: + FULL). + --binlog-row-metadata=name + Controls whether metadata is logged using FULL , MINIMAL + format and NO_LOG.FULL causes all metadata to be logged; + MINIMAL means that only metadata actually required by + slave is logged; NO_LOG NO metadata will be + logged.Default: NO_LOG. + --binlog-stmt-cache-size=# + The size of the statement cache for updates to + non-transactional engines for the binary log. If you + often use statements updating a great number of rows, you + can increase this to get more performance. + --bootstrap Used by mysql installation scripts. + --bulk-insert-buffer-size=# + Size of tree cache used in bulk insert optimisation. Note + that this is a limit per thread! + --character-set-client-handshake + Don't ignore client side character set value sent during + handshake. + (Defaults to on; use --skip-character-set-client-handshake to disable.) + --character-set-filesystem=name + Set the filesystem character set. + -C, --character-set-server=name + Set the default character set. + --character-sets-dir=name + Directory where character sets are + -r, --chroot=name Chroot mysqld daemon during startup. + --collation-server=name + Set the default collation. + --column-compression-threshold=# + Minimum column data length eligible for compression + --column-compression-zlib-level=# + zlib compression level (1 gives best speed, 9 gives best + compression) + --column-compression-zlib-strategy=name + The strategy parameter is used to tune the compression + algorithm. Use the value DEFAULT_STRATEGY for normal + data, FILTERED for data produced by a filter (or + predictor), HUFFMAN_ONLY to force Huffman encoding only + (no string match), or RLE to limit match distances to one + (run-length encoding). Filtered data consists mostly of + small values with a somewhat random distribution. In this + case, the compression algorithm is tuned to compress them + better. The effect of FILTERED is to force more Huffman + coding and less string matching; it is somewhat + intermediate between DEFAULT_STRATEGY and HUFFMAN_ONLY. + RLE is designed to be almost as fast as HUFFMAN_ONLY, but + give better compression for PNG image data. The strategy + parameter only affects the compression ratio but not the + correctness of the compressed output even if it is not + set appropriately. FIXED prevents the use of dynamic + Huffman codes, allowing for a simpler decoder for special + applications. + --column-compression-zlib-wrap + Generate zlib header and trailer and compute adler32 + check value. It can be used with storage engines that + don't provide data integrity verification to detect data + corruption. + --completion-type=name + The transaction completion type. One of: NO_CHAIN, CHAIN, + RELEASE + --concurrent-insert[=name] + Use concurrent insert with MyISAM. One of: NEVER, AUTO, + ALWAYS + --connect-timeout=# The number of seconds the mysqld server is waiting for a + connect packet before responding with 'Bad handshake' + --console Write error output on screen; don't remove the console + window on windows. + --core-file Write core on crashes + -h, --datadir=name Path to the database root directory + --date-format=name The DATE format (ignored) + --datetime-format=name + The DATETIME format (ignored) + --deadlock-search-depth-long=# + Long search depth for the two-step deadlock detection + --deadlock-search-depth-short=# + Short search depth for the two-step deadlock detection + --deadlock-timeout-long=# + Long timeout for the two-step deadlock detection (in + microseconds) + --deadlock-timeout-short=# + Short timeout for the two-step deadlock detection (in + microseconds) + -#, --debug[=name] Built in DBUG debugger. Disabled in this build. + --debug-abort-slave-event-count=# + Option used by mysql-test for debugging and testing of + replication. + --debug-disconnect-slave-event-count=# + Option used by mysql-test for debugging and testing of + replication. + -T, --debug-exit-info[=#] + Used for debugging. Use at your own risk. + --debug-gdb Set up signals usable for debugging. + --debug-max-binlog-dump-events=# + Option used by mysql-test for debugging and testing of + replication. + --debug-no-sync Disables system sync calls. Only for running tests or + debugging! + --debug-no-thread-alarm + Disable system thread alarm calls. Disabling it may be + useful in debugging or testing, never do it in production + --debug-sporadic-binlog-dump-fail + Option used by mysql-test for debugging and testing of + replication. + --default-password-lifetime=# + This defines the global password expiration policy. 0 + means automatic password expiration is disabled. If the + value is a positive integer N, the passwords must be + changed every N days. This behavior can be overridden + using the password expiration options in ALTER USER. + --default-regex-flags=name + Default flags for the regex library. Any combination of: + DOTALL, DUPNAMES, EXTENDED, EXTENDED_MORE, EXTRA, + MULTILINE, UNGREEDY + Use 'ALL' to set all combinations. + --default-storage-engine=name + The default storage engine for new tables + --default-time-zone=name + Set the default time zone. + --default-tmp-storage-engine=name + The default storage engine for user-created temporary + tables + --default-week-format=# + The default week format used by WEEK() functions + --delay-key-write[=name] + Specifies how MyISAM tables handles CREATE TABLE + DELAY_KEY_WRITE. If set to ON, the default, any DELAY KEY + WRITEs are honored. The key buffer is then flushed only + when the table closes, speeding up writes. MyISAM tables + should be automatically checked upon startup in this + case, and --external locking should not be used, as it + can lead to index corruption. If set to OFF, DELAY KEY + WRITEs are ignored, while if set to ALL, all new opened + tables are treated as if created with DELAY KEY WRITEs + enabled. + --delayed-insert-limit=# + After inserting delayed_insert_limit rows, the INSERT + DELAYED handler will check if there are any SELECT + statements pending. If so, it allows these to execute + before continuing. + --delayed-insert-timeout=# + How long a INSERT DELAYED thread should wait for INSERT + statements before terminating + --delayed-queue-size=# + What size queue (in rows) should be allocated for + handling INSERT DELAYED. If the queue becomes full, any + client that does INSERT DELAYED will wait until there is + room in the queue again + --des-key-file=name Load keys for des_encrypt() and des_encrypt from given + file. + --disconnect-on-expired-password + This variable controls how the server handles clients + that are not aware of the sandbox mode. If enabled, the + server disconnects the client, otherwise the server puts + the client in a sandbox mode. + --div-precision-increment=# + Precision of the result of '/' operator will be increased + on that value + --encrypt-binlog Encrypt binary logs (including relay logs) + --encrypt-tmp-disk-tables + Encrypt temporary on-disk tables (created as part of + query execution) + --encrypt-tmp-files Encrypt temporary files (created for filesort, binary log + cache, etc) + --enforce-storage-engine=name + Force the use of a storage engine for new tables + --eq-range-index-dive-limit=# + The optimizer will use existing index statistics instead + of doing index dives for equality ranges if the number of + equality ranges for the index is larger than or equal to + this number. If set to 0, index dives are always used. + --event-scheduler[=name] + Enable the event scheduler. Possible values are ON, OFF, + and DISABLED (keep the event scheduler completely + deactivated, it cannot be activated run-time) + --expensive-subquery-limit=# + The maximum number of rows a subquery may examine in + order to be executed during optimization and used for + constant optimization + --expire-logs-days=# + If non-zero, binary logs will be purged after + expire_logs_days days; It and binlog_expire_logs_seconds + are linked, such that changes in one are converted into + the other, presentable as a decimal value with 1/1000000 + of the day precision; possible purges happen at startup + and at binary log rotation + --explicit-defaults-for-timestamp + This option causes CREATE TABLE to create all TIMESTAMP + columns as NULL with DEFAULT NULL attribute, Without this + option, TIMESTAMP columns are NOT NULL and have implicit + DEFAULT clauses. + (Defaults to on; use --skip-explicit-defaults-for-timestamp to disable.) + --external-locking Use system (external) locking (disabled by default). + With this option enabled you can run myisamchk to test + (not repair) tables while the MySQL server is running. + Disable with --skip-external-locking. + --extra-max-connections=# + The number of connections on extra-port + --extra-port=# Extra port number to use for tcp connections in a + one-thread-per-connection manner. 0 means don't use + another port + --feedback[=name] Enable or disable FEEDBACK plugin. One of: ON, OFF, FORCE + (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --feedback-http-proxy=name + Proxy server host:port. + --feedback-send-retry-wait=# + Wait this many seconds before retrying a failed send. + --feedback-send-timeout=# + Timeout (in seconds) for the sending the report. + --feedback-url=name Space separated URLs to send the feedback report to. + --feedback-user-info=name + User specified string that will be included in the + feedback report. + --flashback Setup the server to use flashback. This enables binary + log in row mode and will enable extra logging for DDL's + needed by flashback feature + --flush Flush MyISAM tables to disk between SQL commands + --flush-time=# A dedicated thread is created to flush all tables at the + given interval + --ft-boolean-syntax=name + List of operators for MATCH ... AGAINST ( ... IN BOOLEAN + MODE) + --ft-max-word-len=# The maximum length of the word to be included in a + FULLTEXT index. Note: FULLTEXT indexes must be rebuilt + after changing this variable + --ft-min-word-len=# The minimum length of the word to be included in a + FULLTEXT index. Note: FULLTEXT indexes must be rebuilt + after changing this variable + --ft-query-expansion-limit=# + Number of best matches to use for query expansion + --ft-stopword-file=name + Use stopwords from this file instead of built-in list + --gdb Set up signals usable for debugging. Deprecated, use + --debug-gdb instead. + --general-log Log connections and queries to a table or log file. + Defaults logging to a file 'hostname'.log or a table + mysql.general_logif --log-output=TABLE is used. + --general-log-file=name + Log connections and queries to given file + --getopt-prefix-matching + Recognize command-line options by their unambiguos + prefixes. + (Defaults to on; use --skip-getopt-prefix-matching to disable.) + --group-concat-max-len=# + The maximum length of the result of function + GROUP_CONCAT() + --gtid-cleanup-batch-size=# + Normally does not need tuning. How many old rows must + accumulate in the mysql.gtid_slave_pos table before a + background job will be run to delete them. Can be + increased to reduce number of commits if using many + different engines with --gtid_pos_auto_engines, or to + reduce CPU overhead if using a huge number of different + gtid_domain_ids. Can be decreased to reduce number of old + rows in the table. + --gtid-domain-id=# Used with global transaction ID to identify logically + independent replication streams. When events can + propagate through multiple parallel paths (for example + multiple masters), each independent source server must + use a distinct domain_id. For simple tree-shaped + replication topologies, it can be left at its default, 0. + --gtid-ignore-duplicates + When set, different master connections in multi-source + replication are allowed to receive and process event + groups with the same GTID (when using GTID mode). Only + one will be applied, any others will be ignored. Within a + given replication domain, just the sequence number will + be used to decide whether a given GTID has been already + applied; this means it is the responsibility of the user + to ensure that GTID sequence numbers are strictly + increasing. + --gtid-pos-auto-engines=name + List of engines for which to automatically create a + mysql.gtid_slave_pos_ENGINE table, if a transaction using + that engine is replicated. This can be used to avoid + introducing cross-engine transactions, if engines are + used different from that used by table + mysql.gtid_slave_pos + --gtid-strict-mode Enforce strict seq_no ordering of events in the binary + log. Slave stops with an error if it encounters an event + that would cause it to generate an out-of-order binlog if + executed. When ON the same server-id semisync-replicated + transactions that duplicate existing ones in binlog are + ignored without error and slave interruption. + -?, --help Display this help and exit. + --histogram-size=# Number of bytes used for a histogram. If set to 0, no + histograms are created by ANALYZE. + --histogram-type=name + Specifies type of the histograms created by ANALYZE. + Possible values are: SINGLE_PREC_HB - single precision + height-balanced, DOUBLE_PREC_HB - double precision + height-balanced, JSON_HB - height-balanced, stored as + JSON. + --host-cache-size=# How many host names should be cached to avoid resolving. + (Automatically configured unless set explicitly) + --idle-readonly-transaction-timeout=# + The number of seconds the server waits for read-only idle + transaction + --idle-transaction-timeout=# + The number of seconds the server waits for idle + transaction + --idle-write-transaction-timeout=# + The number of seconds the server waits for write idle + transaction + --ignore-builtin-innodb + Disable initialization of builtin InnoDB plugin + --ignore-db-dirs=name + Specifies a directory to add to the ignore list when + collecting database names from the datadir. Put a blank + argument to reset the list accumulated so far. + --in-predicate-conversion-threshold=# + The minimum number of scalar elements in the value list + of IN predicate that triggers its conversion to IN + subquery. Set to 0 to disable the conversion. + --init-connect=name Command(s) that are executed for each new connection + (unless the user has SUPER privilege) + --init-file=name Read SQL commands from this file at startup + --init-rpl-role=name + Set the replication role. One of: MASTER, SLAVE + --init-slave=name Command(s) that are executed by a slave server each time + the SQL thread starts + --innodb[=name] Enable or disable InnoDB plugin. One of: ON, OFF, FORCE + (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-adaptive-flushing + Attempt flushing dirty pages to avoid IO bursts at + checkpoints. + (Defaults to on; use --skip-innodb-adaptive-flushing to disable.) + --innodb-adaptive-flushing-lwm=# + Percentage of log capacity below which no adaptive + flushing happens. + --innodb-adaptive-hash-index + Enable InnoDB adaptive hash index (disabled by default). + --innodb-adaptive-hash-index-parts[=#] + Number of InnoDB Adaptive Hash Index Partitions (default + 8) + --innodb-autoextend-increment=# + Data file autoextend increment in megabytes + --innodb-autoinc-lock-mode=# + The AUTOINC lock modes supported by InnoDB: 0 => Old + style AUTOINC locking (for backward compatibility); 1 => + New style AUTOINC locking; 2 => No AUTOINC locking + (unsafe for SBR) + --innodb-buf-dump-status-frequency=# + A number between [0, 100] that tells how oftern buffer + pool dump status in percentages should be printed. E.g. + 10 means that buffer pool dump status is printed when + every 10% of number of buffer pool pages are dumped. + Default is 0 (only start and end status is printed). + --innodb-buffer-page[=name] + Enable or disable INNODB_BUFFER_PAGE plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-buffer-page-lru[=name] + Enable or disable INNODB_BUFFER_PAGE_LRU plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-buffer-pool-chunk-size=# + Size of a single memory chunk for resizing buffer pool. + Online buffer pool resizing happens at this granularity. + 0 means autosize this variable based on buffer pool size. + --innodb-buffer-pool-dump-at-shutdown + Dump the buffer pool into a file named + @@innodb_buffer_pool_filename + (Defaults to on; use --skip-innodb-buffer-pool-dump-at-shutdown to disable.) + --innodb-buffer-pool-dump-now + Trigger an immediate dump of the buffer pool into a file + named @@innodb_buffer_pool_filename + --innodb-buffer-pool-dump-pct=# + Dump only the hottest N% of each buffer pool, defaults to + 25 + --innodb-buffer-pool-filename=name + Filename to/from which to dump/load the InnoDB buffer + pool + --innodb-buffer-pool-load-abort + Abort a currently running load of the buffer pool + --innodb-buffer-pool-load-at-startup + Load the buffer pool from a file named + @@innodb_buffer_pool_filename + (Defaults to on; use --skip-innodb-buffer-pool-load-at-startup to disable.) + --innodb-buffer-pool-load-now + Trigger an immediate load of the buffer pool from a file + named @@innodb_buffer_pool_filename + --innodb-buffer-pool-size=# + The size of the memory buffer InnoDB uses to cache data + and indexes of its tables. + --innodb-buffer-pool-stats[=name] + Enable or disable INNODB_BUFFER_POOL_STATS plugin. One + of: ON, OFF, FORCE (don't start if the plugin fails to + load), FORCE_PLUS_PERMANENT (like FORCE, but the plugin + can not be uninstalled). + --innodb-change-buffer-max-size=# + Maximum on-disk size of change buffer in terms of + percentage of the buffer pool. + --innodb-change-buffering=name + Buffer changes to secondary indexes.. One of: none, + inserts, deletes, changes, purges, all + --innodb-checksum-algorithm=name + The algorithm InnoDB uses for page checksumming. Possible + values are FULL_CRC32 for new files, always use CRC-32C; + for old, see CRC32 below; STRICT_FULL_CRC32 for new + files, always use CRC-32C; for old, see STRICT_CRC32 + below; CRC32 write crc32, allow previously used + algorithms to match when reading; STRICT_CRC32 write + crc32, do not allow other algorithms to match when + reading; New files created with full_crc32 are readable + by MariaDB 10.4.3+ + --innodb-cmp[=name] Enable or disable INNODB_CMP plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-cmp-per-index[=name] + Enable or disable INNODB_CMP_PER_INDEX plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-cmp-per-index-enabled + Enable INFORMATION_SCHEMA.innodb_cmp_per_index, may have + negative impact on performance (off by default) + --innodb-cmp-per-index-reset[=name] + Enable or disable INNODB_CMP_PER_INDEX_RESET plugin. One + of: ON, OFF, FORCE (don't start if the plugin fails to + load), FORCE_PLUS_PERMANENT (like FORCE, but the plugin + can not be uninstalled). + --innodb-cmp-reset[=name] + Enable or disable INNODB_CMP_RESET plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-cmpmem[=name] + Enable or disable INNODB_CMPMEM plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-cmpmem-reset[=name] + Enable or disable INNODB_CMPMEM_RESET plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-compression-algorithm[=name] + Compression algorithm used on page compression. One of: + none, zlib, lz4, lzo, lzma, bzip2, or snappy + --innodb-compression-default + Is compression the default for new tables + --innodb-compression-failure-threshold-pct[=#] + If the compression failure rate of a table is greater + than this number more padding is added to the pages to + reduce the failures. A value of zero implies no padding + --innodb-compression-level=# + Compression level used for zlib compression. 0 is no + compression, 1 is fastest, 9 is best compression and + default is 6. + --innodb-compression-pad-pct-max[=#] + Percentage of empty space on a data page that can be + reserved to make the page compressible. + --innodb-data-file-path=name + Path to individual files and their sizes. + --innodb-data-home-dir=name + The common part for InnoDB table spaces. + --innodb-deadlock-detect + Enable/disable InnoDB deadlock detector (default ON). if + set to OFF, deadlock detection is skipped, and we rely on + innodb_lock_wait_timeout in case of deadlock. + (Defaults to on; use --skip-innodb-deadlock-detect to disable.) + --innodb-deadlock-report=name + How to report deadlocks (if innodb_deadlock_detect=ON).. + One of: off, basic, full + --innodb-default-encryption-key-id=# + Default encryption key id used for table encryption. + --innodb-default-row-format=name + The default ROW FORMAT for all innodb tables created + without explicit ROW_FORMAT. Possible values are + REDUNDANT, COMPACT, and DYNAMIC. The ROW_FORMAT value + COMPRESSED is not allowed. One of: redundant, compact, + dynamic + --innodb-defragment Enable/disable InnoDB defragmentation (default FALSE). + When set to FALSE, all existing defragmentation will be + paused. And new defragmentation command will fail.Paused + defragmentation commands will resume when this variable + is set to true again. + --innodb-defragment-fill-factor=# + A number between [0.7, 1] that tells defragmentation how + full it should fill a page. Default is 0.9. Number below + 0.7 won't make much sense.This variable, together with + innodb_defragment_fill_factor_n_recs, is introduced so + defragmentation won't pack the page too full and cause + page split on the next insert on every page. The variable + indicating more defragmentation gain is the one + effective. + --innodb-defragment-fill-factor-n-recs=# + How many records of space defragmentation should leave on + the page. This variable, together with + innodb_defragment_fill_factor, is introduced so + defragmentation won't pack the page too full and cause + page split on the next insert on every page. The variable + indicating more defragmentation gain is the one + effective. + --innodb-defragment-frequency=# + Do not defragment a single index more than this number of + time per second.This controls the number of time + defragmentation thread can request X_LOCK on an index. + Defragmentation thread will check whether + 1/defragment_frequency (s) has passed since it worked on + this index last time, and put the index back to the queue + if not enough time has passed. The actual frequency can + only be lower than this given number. + --innodb-defragment-n-pages=# + Number of pages considered at once when merging multiple + pages to defragment + --innodb-defragment-stats-accuracy=# + How many defragment stats changes there are before the + stats are written to persistent storage. Set to 0 meaning + disable defragment stats tracking. + --innodb-disable-sort-file-cache + Whether to disable OS system file cache for sort I/O + --innodb-doublewrite + Enable InnoDB doublewrite buffer (enabled by default). + Disable with --skip-innodb-doublewrite. + (Defaults to on; use --skip-innodb-doublewrite to disable.) + --innodb-encrypt-log + Enable redo log encryption + --innodb-encrypt-tables[=name] + Enable encryption for tables. Don't forget to enable + --innodb-encrypt-log too. One of: OFF, ON, FORCE + --innodb-encrypt-temporary-tables + Enrypt the temporary table data. + --innodb-encryption-rotate-key-age=# + Key rotation - re-encrypt in background all pages that + were encrypted with a key that many (or more) versions + behind. Value 0 indicates that key rotation is disabled. + --innodb-encryption-rotation-iops=# + Use this many iops for background key rotation + --innodb-encryption-threads=# + Number of threads performing background key rotation + --innodb-fast-shutdown[=#] + Speeds up the shutdown process of the InnoDB storage + engine. Possible values are 0, 1 (faster), 2 + (crash-like), 3 (fastest clean). + --innodb-fatal-semaphore-wait-threshold=# + Maximum number of seconds that semaphore times out in + InnoDB. + --innodb-file-per-table + Stores each InnoDB table to an .ibd file in the database + dir. + (Defaults to on; use --skip-innodb-file-per-table to disable.) + --innodb-fill-factor=# + Percentage of B-tree page filled during bulk insert + --innodb-flush-log-at-timeout[=#] + Write and flush logs every (n) second. + --innodb-flush-log-at-trx-commit[=#] + Controls the durability/speed trade-off for commits. Set + to 0 (write and flush redo log to disk only once per + second), 1 (flush to disk at each commit), 2 (write to + log at commit but flush to disk only once per second) or + 3 (flush to disk at prepare and at commit, slower and + usually redundant). 1 and 3 guarantees that after a + crash, committed transactions will not be lost and will + be consistent with the binlog and other transactional + engines. 2 can get inconsistent and lose transactions if + there is a power failure or kernel crash but not if + mysqld crashes. 0 has no guarantees in case of crash. 0 + and 2 can be faster than 1 or 3. + --innodb-flush-method=name + With which method to flush data.. One of: fsync, O_DSYNC, + littlesync, nosync, O_DIRECT, O_DIRECT_NO_FSYNC + --innodb-flush-neighbors[=#] + Set to 0 (don't flush neighbors from buffer pool), 1 + (flush contiguous neighbors from buffer pool) or 2 (flush + neighbors from buffer pool), when flushing a block + --innodb-flush-sync Allow IO bursts at the checkpoints ignoring io_capacity + setting. + (Defaults to on; use --skip-innodb-flush-sync to disable.) + --innodb-flushing-avg-loops=# + Number of iterations over which the background flushing + is averaged. + --innodb-force-primary-key + Do not allow creating a table without primary key (off by + default) + --innodb-force-recovery=# + Helps to save your data in case the disk image of the + database becomes corrupt. Value 5 can return bogus data, + and 6 can permanently corrupt data. + --innodb-ft-aux-table=name + FTS internal auxiliary table to be checked + --innodb-ft-being-deleted[=name] + Enable or disable INNODB_FT_BEING_DELETED plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-ft-cache-size=# + InnoDB Fulltext search cache size in bytes + --innodb-ft-config[=name] + Enable or disable INNODB_FT_CONFIG plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-ft-default-stopword[=name] + Enable or disable INNODB_FT_DEFAULT_STOPWORD plugin. One + of: ON, OFF, FORCE (don't start if the plugin fails to + load), FORCE_PLUS_PERMANENT (like FORCE, but the plugin + can not be uninstalled). + --innodb-ft-deleted[=name] + Enable or disable INNODB_FT_DELETED plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-ft-enable-diag-print + Whether to enable additional FTS diagnostic printout + --innodb-ft-enable-stopword + Create FTS index with stopword. + (Defaults to on; use --skip-innodb-ft-enable-stopword to disable.) + --innodb-ft-index-cache[=name] + Enable or disable INNODB_FT_INDEX_CACHE plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-ft-index-table[=name] + Enable or disable INNODB_FT_INDEX_TABLE plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-ft-max-token-size=# + InnoDB Fulltext search maximum token size in characters + --innodb-ft-min-token-size=# + InnoDB Fulltext search minimum token size in characters + --innodb-ft-num-word-optimize[=#] + InnoDB Fulltext search number of words to optimize for + each optimize table call + --innodb-ft-result-cache-limit=# + InnoDB Fulltext search query result cache limit in bytes + --innodb-ft-server-stopword-table[=name] + The user supplied stopword table name. + --innodb-ft-sort-pll-degree=# + InnoDB Fulltext search parallel sort degree, will round + up to nearest power of 2 number + --innodb-ft-total-cache-size=# + Total memory allocated for InnoDB Fulltext Search cache + --innodb-ft-user-stopword-table[=name] + User supplied stopword table name, effective in the + session level. + --innodb-immediate-scrub-data-uncompressed + Enable scrubbing of data + --innodb-instant-alter-column-allowed=name + File format constraint for ALTER TABLE. One of: never, + add_last, add_drop_reorder + --innodb-io-capacity=# + Number of IOPs the server can do. Tunes the background IO + rate + --innodb-io-capacity-max=# + Limit to which innodb_io_capacity can be inflated. + --innodb-lock-wait-timeout=# + Timeout in seconds an InnoDB transaction may wait for a + lock before being rolled back. The value 100000000 is + infinite timeout. + --innodb-lock-waits[=name] + Enable or disable INNODB_LOCK_WAITS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-locks[=name] + Enable or disable INNODB_LOCKS plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-log-buffer-size=# + Redo log buffer size in bytes. + --innodb-log-file-buffering + Whether the file system cache for ib_logfile0 is enabled + --innodb-log-file-size=# + Redo log size in bytes. + --innodb-log-group-home-dir=name + Path to ib_logfile0 + --innodb-lru-flush-size=# + How many pages to flush on LRU eviction + --innodb-lru-scan-depth=# + How deep to scan LRU to keep it clean + --innodb-max-dirty-pages-pct=# + Percentage of dirty pages allowed in bufferpool. + --innodb-max-dirty-pages-pct-lwm=# + Percentage of dirty pages at which flushing kicks in. The + value 0 (default) means 'refer to + innodb_max_dirty_pages_pct'. + --innodb-max-purge-lag=# + Desired maximum length of the purge queue (0 = no limit) + --innodb-max-purge-lag-delay=# + Maximum delay of user threads in micro-seconds + --innodb-max-purge-lag-wait=# + Wait until History list length is below the specified + limit + --innodb-max-undo-log-size[=#] + Desired maximum UNDO tablespace size in bytes + --innodb-metrics[=name] + Enable or disable INNODB_METRICS plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-monitor-disable=name + Turn off a monitor counter + --innodb-monitor-enable=name + Turn on a monitor counter + --innodb-monitor-reset=name + Reset a monitor counter + --innodb-monitor-reset-all=name + Reset all values for a monitor counter + --innodb-numa-interleave + Use NUMA interleave memory policy to allocate InnoDB + buffer pool. + --innodb-old-blocks-pct=# + Percentage of the buffer pool to reserve for 'old' + blocks. + --innodb-old-blocks-time=# + Move blocks to the 'new' end of the buffer pool if the + first access was at least this many milliseconds ago. The + timeout is disabled if 0. + --innodb-online-alter-log-max-size=# + Maximum modification log file size for online index + creation + --innodb-open-files=# + How many files at the maximum InnoDB keeps open at the + same time. + --innodb-optimize-fulltext-only + Only optimize the Fulltext index of the table + --innodb-page-size[=#] + Page size to use for all InnoDB tablespaces. + --innodb-prefix-index-cluster-optimization + Deprecated parameter with no effect + (Defaults to on; use --skip-innodb-prefix-index-cluster-optimization to disable.) + --innodb-print-all-deadlocks + Print all deadlocks to MariaDB error log (off by default) + --innodb-purge-batch-size[=#] + Number of UNDO log pages to purge in one batch from the + history list. + --innodb-purge-rseg-truncate-frequency[=#] + Deprecated parameter with no effect + --innodb-purge-threads[=#] + Number of tasks for purging transaction history + --innodb-random-read-ahead + Whether to use read ahead for random access within an + extent. + --innodb-read-ahead-threshold=# + Number of pages that must be accessed sequentially for + InnoDB to trigger a readahead. + --innodb-read-io-threads=# + Number of background read I/O threads in InnoDB. + --innodb-read-only Start InnoDB in read only mode (off by default) + --innodb-read-only-compressed + Make ROW_FORMAT=COMPRESSED tables read-only + --innodb-rollback-on-timeout + Roll back the complete transaction on lock wait timeout, + for 4.x compatibility (disabled by default) + --innodb-sort-buffer-size=# + Memory buffer size for index creation + --innodb-spin-wait-delay[=#] + Maximum delay between polling for a spin lock (4 by + default) + --innodb-stats-auto-recalc + InnoDB automatic recalculation of persistent statistics + enabled for all tables unless overridden at table level + (automatic recalculation is only done when InnoDB decides + that the table has changed too much and needs a new + statistics) + (Defaults to on; use --skip-innodb-stats-auto-recalc to disable.) + --innodb-stats-include-delete-marked + Include delete marked records when calculating persistent + statistics + --innodb-stats-method=name + Specifies how InnoDB index statistics collection code + should treat NULLs. Possible values are NULLS_EQUAL + (default), NULLS_UNEQUAL and NULLS_IGNORED. One of: + nulls_equal, nulls_unequal, nulls_ignored + --innodb-stats-modified-counter=# + The number of rows modified before we calculate new + statistics (default 0 = current limits) + --innodb-stats-on-metadata + Enable statistics gathering for metadata commands such as + SHOW TABLE STATUS for tables that use transient + statistics (off by default) + --innodb-stats-persistent + InnoDB persistent statistics enabled for all tables + unless overridden at table level + (Defaults to on; use --skip-innodb-stats-persistent to disable.) + --innodb-stats-persistent-sample-pages=# + The number of leaf index pages to sample when calculating + persistent statistics (by ANALYZE, default 20) + --innodb-stats-traditional + Enable traditional statistic calculation based on number + of configured pages (default true) + (Defaults to on; use --skip-innodb-stats-traditional to disable.) + --innodb-stats-transient-sample-pages=# + The number of leaf index pages to sample when calculating + transient statistics (if persistent statistics are not + used, default 8) + --innodb-status-file + Enable SHOW ENGINE INNODB STATUS output in the + innodb_status.<pid> file + --innodb-status-output + Enable InnoDB monitor output to the error log. + --innodb-status-output-locks + Enable InnoDB lock monitor output to the error log. + Requires innodb_status_output=ON. + --innodb-strict-mode + Use strict mode when evaluating create options. + (Defaults to on; use --skip-innodb-strict-mode to disable.) + --innodb-sync-spin-loops=# + Count of spin-loop rounds in InnoDB mutexes (30 by + default) + --innodb-sys-columns[=name] + Enable or disable INNODB_SYS_COLUMNS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-fields[=name] + Enable or disable INNODB_SYS_FIELDS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-foreign[=name] + Enable or disable INNODB_SYS_FOREIGN plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-foreign-cols[=name] + Enable or disable INNODB_SYS_FOREIGN_COLS plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-indexes[=name] + Enable or disable INNODB_SYS_INDEXES plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-tables[=name] + Enable or disable INNODB_SYS_TABLES plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-tablespaces[=name] + Enable or disable INNODB_SYS_TABLESPACES plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-tablestats[=name] + Enable or disable INNODB_SYS_TABLESTATS plugin. One of: + ON, OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-sys-virtual[=name] + Enable or disable INNODB_SYS_VIRTUAL plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-table-locks + Enable InnoDB locking in LOCK TABLES + (Defaults to on; use --skip-innodb-table-locks to disable.) + --innodb-tablespaces-encryption[=name] + Enable or disable INNODB_TABLESPACES_ENCRYPTION plugin. + One of: ON, OFF, FORCE (don't start if the plugin fails + to load), FORCE_PLUS_PERMANENT (like FORCE, but the + plugin can not be uninstalled). + --innodb-temp-data-file-path=name + Path to files and their sizes making temp-tablespace. + --innodb-tmpdir[=name] + Directory for temporary non-tablespace files. + --innodb-trx[=name] Enable or disable INNODB_TRX plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --innodb-undo-directory=name + Directory where undo tablespace files live, this path can + be absolute. + --innodb-undo-log-truncate + Enable or Disable Truncate of UNDO tablespace. + --innodb-undo-tablespaces=# + Number of undo tablespaces to use. + --innodb-use-atomic-writes + Enable atomic writes, instead of using the doublewrite + buffer, for files on devices that supports atomic writes. + (Defaults to on; use --skip-innodb-use-atomic-writes to disable.) + --innodb-use-native-aio + Use native AIO if supported on this platform. + (Defaults to on; use --skip-innodb-use-native-aio to disable.) + --innodb-write-io-threads=# + Number of background write I/O threads in InnoDB. + --interactive-timeout=# + The number of seconds the server waits for activity on an + interactive connection before closing it + --join-buffer-size=# + The size of the buffer that is used for joins + --join-buffer-space-limit=# + The limit of the space for all join buffers used by a + query + --join-cache-level=# + Controls what join operations can be executed with join + buffers. Odd numbers are used for plain join buffers + while even numbers are used for linked buffers + --keep-files-on-create + Don't overwrite stale .MYD and .MYI even if no directory + is specified + --key-buffer-size=# The size of the buffer used for index blocks for MyISAM + tables. Increase this to get better index handling (for + all reads and multiple writes) to as much as you can + afford + --key-cache-age-threshold=# + This characterizes the number of hits a hot block has to + be untouched until it is considered aged enough to be + downgraded to a warm block. This specifies the percentage + ratio of that number of hits to the total number of + blocks in key cache + --key-cache-block-size=# + The default size of key cache blocks + --key-cache-division-limit=# + The minimum percentage of warm blocks in key cache + --key-cache-file-hash-size=# + Number of hash buckets for open and changed files. If + you have a lot of MyISAM files open you should increase + this for faster flush of changes. A good value is + probably 1/10 of number of possible open MyISAM files. + --key-cache-segments=# + The number of segments in a key cache + -L, --language=name Client error messages in given language. May be given as + a full path. Deprecated. Use --lc-messages-dir instead. + --large-pages Enable support for large pages + --lc-messages=name Set the language used for the error messages. + -L, --lc-messages-dir=name + Directory where error messages are + --lc-time-names=name + Set the language used for the month names and the days of + the week. + --local-infile Enable LOAD DATA LOCAL INFILE + (Defaults to on; use --skip-local-infile to disable.) + --lock-wait-timeout=# + Timeout in seconds to wait for a lock before returning an + error. + --log-basename=name Basename for all log files and the .pid file. This sets + all log file names at once (in 'datadir') and is normally + the only option you need for specifying log files. Sets + names for --log-bin, --log-bin-index, --relay-log, + --relay-log-index, --general-log-file, + --log-slow-query-file, --log-error-file, and --pid-file + --log-bin[=name] Log update queries in binary format. Optional argument + should be name for binary log. If not given + 'datadir'/'log-basename'-bin or 'datadir'/mysql-bin will + be used (the later if --log-basename is not specified). + We strongly recommend to use either --log-basename or + specify a filename to ensure that replication doesn't + stop if the real hostname of the computer changes. + --log-bin-compress Whether the binary log can be compressed + --log-bin-compress-min-len[=#] + Minimum length of sql statement(in statement mode) or + record(in row mode)that can be compressed. + --log-bin-index=name + File that holds the names for last binary log files. + --log-bin-trust-function-creators + If set to FALSE (the default), then when --log-bin is + used, creation of a stored function (or trigger) is + allowed only to users having the SUPER privilege and only + if this stored function (trigger) may not break binary + logging. Note that if ALL connections to this server + ALWAYS use row-based binary logging, the security issues + do not exist and the binary logging cannot break, so you + can safely set this to TRUE + --log-ddl-recovery=name + Path to file used for recovery of DDL statements after a + crash + --log-disabled-statements=name + Don't log certain types of statements to general log. Any + combination of: slave, sp + Use 'ALL' to set all combinations. + --log-error[=name] Log errors to file (instead of stdout). If file name is + not specified then 'datadir'/'log-basename'.err or the + 'pid-file' path with extension .err is used + --log-isam[=name] Log all MyISAM changes to file. + --log-output=name How logs should be written. Any combination of: NONE, + FILE, TABLE + Use 'ALL' to set all combinations. + --log-queries-not-using-indexes + Log queries that are executed without benefit of any + index to the slow log if it is open. Same as + log_slow_filter='not_using_index' + --log-short-format Don't log extra information to update and slow-query + logs. + --log-slave-updates Tells the slave to log the updates from the slave thread + to the binary log. You will need to turn it on if you + plan to daisy-chain the slaves. + --log-slow-admin-statements + Log slow OPTIMIZE, ANALYZE, ALTER and other + administrative statements to the slow log if it is open. + Resets or sets the option 'admin' in + log_slow_disabled_statements + (Defaults to on; use --skip-log-slow-admin-statements to disable.) + --log-slow-disabled-statements=name + Don't log certain types of statements to slow log. Any + combination of: admin, call, slave, sp + Use 'ALL' to set all combinations. + --log-slow-filter=name + Log only certain types of queries to the slow log. If + variable empty all kind of queries are logged. All types + are bound by slow_query_time, except 'not_using_index' + which is always logged if enabled. Any combination of: + admin, filesort, filesort_on_disk, + filesort_priority_queue, full_join, full_scan, + not_using_index, query_cache, query_cache_miss, tmp_table, + tmp_table_on_disk + Use 'ALL' to set all combinations. + --log-slow-max-warnings=# + Max numbers of warnings printed to slow query log per + statement + --log-slow-min-examined-row-limit=# + Don't write queries to slow log that examine fewer rows + than that + --log-slow-query Log slow queries to a table or log file. Defaults logging + to a file 'hostname'-slow.log or a table mysql.slow_log + if --log-output=TABLE is used. Must be enabled to + activate other slow log options. + --log-slow-query-file=name + Log slow queries to given log file. Defaults logging to + 'hostname'-slow.log. Must be enabled to activate other + slow log options + --log-slow-query-time=# + Log all queries that have taken more than + log_slow_query_time seconds to execute to the slow query + log file. The argument will be treated as a decimal value + with microsecond precision + --log-slow-rate-limit=# + Write to slow log every #th slow query. Set to 1 to log + everything. Increase it to reduce the size of the slow or + the performance impact of slow logging + --log-slow-slave-statements + Log slow statements executed by slave thread to the slow + log if it is open. Resets or sets the option 'slave' in + log_slow_disabled_statements + (Defaults to on; use --skip-log-slow-slave-statements to disable.) + --log-slow-verbosity=name + Verbosity level for the slow log. Any combination of: + innodb, query_plan, explain, engine, warnings, full + Use 'ALL' to set all combinations. + --log-tc=name Path to transaction coordinator log (used for + transactions that affect more than one storage engine, + when binary log is disabled). + --log-tc-size=# Size of transaction coordinator log. + -W, --log-warnings[=#] + Log some not critical warnings to the general log + file.Value can be between 0 and 11. Higher values mean + more verbosity + --long-query-time=# Alias for log_slow_query_time. Log all queries that have + taken more than long_query_time seconds to execute to the + slow query log file. The argument will be treated as a + decimal value with microsecond precision + --low-priority-updates + INSERT/DELETE/UPDATE has lower priority than selects + --lower-case-table-names[=#] + If set to 1 table names are stored in lowercase on disk + and table names will be case-insensitive. Should be set + to 2 if you are using a case insensitive file system + --master-info-file=name + The location and name of the file that remembers the + master and where the I/O replication thread is in the + master's binlogs. Defaults to master.info + --master-retry-count=# + The number of tries the slave will make to connect to the + master before giving up. + --master-verify-checksum + Force checksum verification of logged events in the + binary log before sending them to slaves or printing them + in the output of SHOW BINLOG EVENTS + --max-allowed-packet=# + Max packet length to send to or receive from the server + --max-binlog-cache-size=# + Sets the total size of the transactional cache + --max-binlog-size=# Binary log will be rotated automatically when the size + exceeds this value. + --max-binlog-stmt-cache-size=# + Sets the total size of the statement cache + --max-connect-errors=# + If there is more than this number of interrupted + connections from a host this host will be blocked from + further connections + --max-connections=# The number of simultaneous clients allowed + --max-delayed-threads=# + Don't start more than this number of threads to handle + INSERT DELAYED statements. If set to zero INSERT DELAYED + will be not used + --max-digest-length=# + Maximum length considered for digest text. + --max-error-count=# Max number of errors/warnings to store for a statement + --max-heap-table-size=# + Don't allow creation of heap tables bigger than this + --max-join-size=# Joins that are probably going to read more than + max_join_size records return an error + --max-length-for-sort-data=# + Max number of bytes in sorted records + --max-password-errors=# + If there is more than this number of failed connect + attempts due to invalid password, user will be blocked + from further connections until FLUSH_PRIVILEGES. + --max-prepared-stmt-count=# + Maximum number of prepared statements in the server + --max-recursive-iterations[=#] + Maximum number of iterations when executing recursive + queries + --max-relay-log-size=# + relay log will be rotated automatically when the size + exceeds this value. If 0 at startup, it's set to + max_binlog_size + --max-rowid-filter-size=# + The maximum size of the container of a rowid filter + --max-seeks-for-key=# + Limit assumed max number of seeks when looking up rows + based on a key + --max-session-mem-used=# + Amount of memory a single user session is allowed to + allocate. This limits the value of the session variable + MEM_USED + --max-sort-length=# The number of bytes to use when sorting BLOB or TEXT + values (only the first max_sort_length bytes of each + value are used; the rest are ignored) + --max-sp-recursion-depth[=#] + Maximum stored procedure recursion depth + --max-statement-time=# + A query that has taken more than max_statement_time + seconds will be aborted. The argument will be treated as + a decimal value with microsecond precision. A value of 0 + (default) means no timeout + --max-tmp-tables=# Unused, will be removed. + --max-user-connections=# + The maximum number of active connections for a single + user (0 = no limit) + --max-write-lock-count=# + After this many write locks, allow some read locks to run + in between + --memlock Lock mysqld in memory. + --metadata-locks-cache-size=# + Unused + --metadata-locks-hash-instances=# + Unused + --min-examined-row-limit=# + Alias for log_slow_min_examined_row_limit. Don't write + queries to slow log that examine fewer rows than that + --mrr-buffer-size=# Size of buffer to use when using MRR with range access + --myisam-block-size=# + Block size to be used for MyISAM index pages + --myisam-data-pointer-size=# + Default pointer size to be used for MyISAM tables + --myisam-max-sort-file-size=# + Don't use the fast sort index method to created index if + the temporary file would get bigger than this + --myisam-mmap-size=# + Restricts the total memory used for memory mapping of + MySQL tables + --myisam-recover-options[=name] + Specifies how corrupted tables should be automatically + repaired. Any combination of: DEFAULT, BACKUP, FORCE, + QUICK, BACKUP_ALL, OFF + Use 'ALL' to set all combinations. + --myisam-repair-threads=# + If larger than 1, when repairing a MyISAM table all + indexes will be created in parallel, with one thread per + index. The value of 1 disables parallel repair + --myisam-sort-buffer-size=# + The buffer that is allocated when sorting the index when + doing a REPAIR or when creating indexes with CREATE INDEX + or ALTER TABLE + --myisam-stats-method=name + Specifies how MyISAM index statistics collection code + should treat NULLs. Possible values of name are + NULLS_UNEQUAL (default behavior for 4.1 and later), + NULLS_EQUAL (emulate 4.0 behavior), and NULLS_IGNORED + --myisam-use-mmap Use memory mapping for reading and writing MyISAM tables + --mysql56-temporal-format + Use MySQL-5.6 (instead of MariaDB-5.3) format for TIME, + DATETIME, TIMESTAMP columns. + (Defaults to on; use --skip-mysql56-temporal-format to disable.) + --net-buffer-length=# + Buffer length for TCP/IP and socket communication + --net-read-timeout=# + Number of seconds to wait for more data from a connection + before aborting the read + --net-retry-count=# If a read on a communication port is interrupted, retry + this many times before giving up + --net-write-timeout=# + Number of seconds to wait for a block to be written to a + connection before aborting the write + --note-verbosity=name + Verbosity level for note-warnings given to the user. See + also @@sql_notes.. Any combination of: basic, + unusable_keys, explain + Use 'ALL' to set all combinations. + --old Use compatible behavior from previous MariaDB version. + See also --old-mode + --old-alter-table[=name] + Alias for alter_algorithm. Deprecated. Use + --alter-algorithm instead.. One of: DEFAULT, COPY, + INPLACE, NOCOPY, INSTANT + --old-mode=name Used to emulate old behavior from earlier MariaDB or + MySQL versions. Any combination of: + NO_DUP_KEY_WARNINGS_WITH_IGNORE, NO_PROGRESS_INFO, + ZERO_DATE_TIME_CAST, UTF8_IS_UTF8MB3, + IGNORE_INDEX_ONLY_FOR_JOIN, COMPAT_5_1_CHECKSUM + Use 'ALL' to set all combinations. + --old-passwords Use old password encryption method (needed for 4.0 and + older clients) + --old-style-user-limits + Enable old-style user limits (before 5.0.3, user + resources were counted per each user+host vs. per + account). + --open-files-limit=# + If this is not 0, then mysqld will use this value to + reserve file descriptors to use with setrlimit(). If this + value is 0 or autoset then mysqld will reserve + max_connections*5 or max_connections + table_cache*2 + (whichever is larger) number of file descriptors + (Automatically configured unless set explicitly) + --optimizer-extra-pruning-depth=# + If the optimizer needs to enumerate join prefix of this + size or larger, then it will try aggressively prune away + the search space. + --optimizer-max-sel-arg-weight=# + The maximum weight of the SEL_ARG graph. Set to 0 for no + limit + --optimizer-max-sel-args=# + The maximum number of SEL_ARG objects created when + optimizing a range. If more objects would be needed, the + range will not be used by the optimizer. + --optimizer-prune-level=# + Controls the heuristic(s) applied during query + optimization to prune less-promising partial plans from + the optimizer search space. Meaning: 0 - do not apply any + heuristic, thus perform exhaustive search: 1 - prune + plans based on cost and number of retrieved rows eq_ref: + 2 - prune also if we find an eq_ref chain + --optimizer-search-depth=# + Maximum depth of search performed by the query optimizer. + Values larger than the number of relations in a query + result in better query plans, but take longer to compile + a query. Values smaller than the number of tables in a + relation result in faster optimization, but may produce + very bad query plans. If set to 0, the system will + automatically pick a reasonable value. + --optimizer-selectivity-sampling-limit=# + Controls number of record samples to check condition + selectivity + --optimizer-switch=name + Fine-tune the optimizer behavior. Takes a comma-separated + list of option=value pairs, where value is on, off, or + default, and options are: index_merge, index_merge_union, + index_merge_sort_union, index_merge_intersection, + index_merge_sort_intersection, engine_condition_pushdown, + index_condition_pushdown, derived_merge, + derived_with_keys, firstmatch, loosescan, materialization, + in_to_exists, semijoin, partial_match_rowid_merge, + partial_match_table_scan, subquery_cache, mrr, + mrr_cost_based, mrr_sort_keys, outer_join_with_cache, + semijoin_with_cache, join_cache_incremental, + join_cache_hashed, join_cache_bka, + optimize_join_buffer_size, table_elimination, + extended_keys, exists_to_in, orderby_uses_equalities, + condition_pushdown_for_derived, split_materialized, + condition_pushdown_for_subquery, rowid_filter, + condition_pushdown_from_having, not_null_range_scan, + hash_join_cardinality, cset_narrowing + --optimizer-trace=name + Controls tracing of the Optimizer: + optimizer_trace=option=val[,option=val...], where option + is one of {enabled} and val is one of {on, off, default} + --optimizer-trace-max-mem-size=# + Maximum allowed size of an optimizer trace + --optimizer-use-condition-selectivity=# + Controls selectivity of which conditions the optimizer + takes into account to calculate cardinality of a partial + join when it searches for the best execution plan + Meaning: 1 - use selectivity of index backed range + conditions to calculate the cardinality of a partial join + if the last joined table is accessed by full table scan + or an index scan, 2 - use selectivity of index backed + range conditions to calculate the cardinality of a + partial join in any case, 3 - additionally always use + selectivity of range conditions that are not backed by + any index to calculate the cardinality of a partial join, + 4 - use histograms to calculate selectivity of range + conditions that are not backed by any index to calculate + the cardinality of a partial join.5 - additionally use + selectivity of certain non-range predicates calculated on + record samples + --partition[=name] Enable or disable partition plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --performance-schema + Enable the performance schema. + --performance-schema-accounts-size=# + Maximum number of instrumented user@host accounts. Use 0 + to disable, -1 for automated sizing. + --performance-schema-consumer-events-stages-current + Default startup value for the events_stages_current + consumer. + --performance-schema-consumer-events-stages-history + Default startup value for the events_stages_history + consumer. + --performance-schema-consumer-events-stages-history-long + Default startup value for the events_stages_history_long + consumer. + --performance-schema-consumer-events-statements-current + Default startup value for the events_statements_current + consumer. + --performance-schema-consumer-events-statements-history + Default startup value for the events_statements_history + consumer. + --performance-schema-consumer-events-statements-history-long + Default startup value for the + events_statements_history_long consumer. + --performance-schema-consumer-events-transactions-current + Default startup value for the events_transactions_current + consumer. + --performance-schema-consumer-events-transactions-history + Default startup value for the events_transactions_history + consumer. + --performance-schema-consumer-events-transactions-history-long + Default startup value for the + events_transactions_history_long consumer. + --performance-schema-consumer-events-waits-current + Default startup value for the events_waits_current + consumer. + --performance-schema-consumer-events-waits-history + Default startup value for the events_waits_history + consumer. + --performance-schema-consumer-events-waits-history-long + Default startup value for the events_waits_history_long + consumer. + --performance-schema-consumer-global-instrumentation + Default startup value for the global_instrumentation + consumer. + (Defaults to on; use --skip-performance-schema-consumer-global-instrumentation to disable.) + --performance-schema-consumer-statements-digest + Default startup value for the statements_digest consumer. + (Defaults to on; use --skip-performance-schema-consumer-statements-digest to disable.) + --performance-schema-consumer-thread-instrumentation + Default startup value for the thread_instrumentation + consumer. + (Defaults to on; use --skip-performance-schema-consumer-thread-instrumentation to disable.) + --performance-schema-digests-size=# + Size of the statement digest. Use 0 to disable, -1 for + automated sizing. + --performance-schema-events-stages-history-long-size=# + Number of rows in EVENTS_STAGES_HISTORY_LONG. Use 0 to + disable, -1 for automated sizing. + --performance-schema-events-stages-history-size=# + Number of rows per thread in EVENTS_STAGES_HISTORY. Use 0 + to disable, -1 for automated sizing. + --performance-schema-events-statements-history-long-size=# + Number of rows in EVENTS_STATEMENTS_HISTORY_LONG. Use 0 + to disable, -1 for automated sizing. + --performance-schema-events-statements-history-size=# + Number of rows per thread in EVENTS_STATEMENTS_HISTORY. + Use 0 to disable, -1 for automated sizing. + --performance-schema-events-transactions-history-long-size=# + Number of rows in EVENTS_TRANSACTIONS_HISTORY_LONG. Use 0 + to disable, -1 for automated sizing. + --performance-schema-events-transactions-history-size=# + Number of rows per thread in EVENTS_TRANSACTIONS_HISTORY. + Use 0 to disable, -1 for automated sizing. + --performance-schema-events-waits-history-long-size=# + Number of rows in EVENTS_WAITS_HISTORY_LONG. Use 0 to + disable, -1 for automated sizing. + --performance-schema-events-waits-history-size=# + Number of rows per thread in EVENTS_WAITS_HISTORY. Use 0 + to disable, -1 for automated sizing. + --performance-schema-hosts-size=# + Maximum number of instrumented hosts. Use 0 to disable, + -1 for automated sizing. + --performance-schema-instrument[=name] + Default startup value for a performance schema + instrument. + --performance-schema-max-cond-classes=# + Maximum number of condition instruments. + --performance-schema-max-cond-instances=# + Maximum number of instrumented condition objects. Use 0 + to disable, -1 for automated sizing. + --performance-schema-max-digest-length=# + Maximum length considered for digest text, when stored in + performance_schema tables. + --performance-schema-max-file-classes=# + Maximum number of file instruments. + --performance-schema-max-file-handles=# + Maximum number of opened instrumented files. + --performance-schema-max-file-instances=# + Maximum number of instrumented files. Use 0 to disable, + -1 for automated sizing. + --performance-schema-max-index-stat=# + Maximum number of index statistics for instrumented + tables. Use 0 to disable, -1 for automated scaling. + --performance-schema-max-memory-classes=# + Maximum number of memory pool instruments. + --performance-schema-max-metadata-locks=# + Maximum number of metadata locks. Use 0 to disable, -1 + for automated scaling. + --performance-schema-max-mutex-classes=# + Maximum number of mutex instruments. + --performance-schema-max-mutex-instances=# + Maximum number of instrumented MUTEX objects. Use 0 to + disable, -1 for automated sizing. + --performance-schema-max-prepared-statements-instances=# + Maximum number of instrumented prepared statements. Use 0 + to disable, -1 for automated scaling. + --performance-schema-max-program-instances=# + Maximum number of instrumented programs. Use 0 to + disable, -1 for automated scaling. + --performance-schema-max-rwlock-classes=# + Maximum number of rwlock instruments. + --performance-schema-max-rwlock-instances=# + Maximum number of instrumented RWLOCK objects. Use 0 to + disable, -1 for automated sizing. + --performance-schema-max-socket-classes=# + Maximum number of socket instruments. + --performance-schema-max-socket-instances=# + Maximum number of opened instrumented sockets. Use 0 to + disable, -1 for automated sizing. + --performance-schema-max-sql-text-length=# + Maximum length of displayed sql text. + --performance-schema-max-stage-classes=# + Maximum number of stage instruments. + --performance-schema-max-statement-classes=# + Maximum number of statement instruments. + --performance-schema-max-statement-stack=# + Number of rows per thread in EVENTS_STATEMENTS_CURRENT. + --performance-schema-max-table-handles=# + Maximum number of opened instrumented tables. Use 0 to + disable, -1 for automated sizing. + --performance-schema-max-table-instances=# + Maximum number of instrumented tables. Use 0 to disable, + -1 for automated sizing. + --performance-schema-max-table-lock-stat=# + Maximum number of lock statistics for instrumented + tables. Use 0 to disable, -1 for automated scaling. + --performance-schema-max-thread-classes=# + Maximum number of thread instruments. + --performance-schema-max-thread-instances=# + Maximum number of instrumented threads. Use 0 to disable, + -1 for automated sizing. + --performance-schema-session-connect-attrs-size=# + Size of session attribute string buffer per thread. Use 0 + to disable, -1 for automated sizing. + --performance-schema-setup-actors-size=# + Maximum number of rows in SETUP_ACTORS. + --performance-schema-setup-objects-size=# + Maximum number of rows in SETUP_OBJECTS. + --performance-schema-users-size=# + Maximum number of instrumented users. Use 0 to disable, + -1 for automated sizing. + --pid-file=name Pid file used by safe_mysqld + --plugin-dir=name Directory for plugins + --plugin-load=name Semicolon-separated list of plugins to load, where each + plugin is specified as ether a plugin_name=library_file + pair or only a library_file. If the latter case, all + plugins from a given library_file will be loaded. + --plugin-load-add=name + Optional semicolon-separated list of plugins to load. + This option adds to the list specified by --plugin-load + in an incremental way. It can be specified many times, + adding more plugins every time. + --plugin-maturity=name + The lowest desirable plugin maturity. Plugins less mature + than that will not be installed or loaded. One of: + unknown, experimental, alpha, beta, gamma, stable + -P, --port=# Port number to use for connection or 0 to default to, + my.cnf, $MYSQL_TCP_PORT, /etc/services, built-in default + (3306), whatever comes first + --port-open-timeout=# + Maximum time in seconds to wait for the port to become + free. (Default: No wait). + --preload-buffer-size=# + The size of the buffer that is allocated when preloading + indexes + --profiling-history-size=# + Number of statements about which profiling information is + maintained. If set to 0, no profiles are stored. See SHOW + PROFILES. + --progress-report-time=# + Seconds between sending progress reports to the client + for time-consuming statements. Set to 0 to disable + progress reporting. + --proxy-protocol-networks=name + Enable proxy protocol for these source networks. The + syntax is a comma separated list of IPv4 and IPv6 + networks. If the network doesn't contain mask, it is + considered to be a single host. "*" represents all + networks and must the only directive on the line. String + "localhost" represents non-TCP local connections (Unix + domain socket, Windows named pipe or shared memory). + --query-alloc-block-size=# + Allocation block size for query parsing and execution + --query-cache-limit=# + Don't cache results that are bigger than this + --query-cache-min-res-unit=# + The minimum size for blocks allocated by the query cache + --query-cache-size=# + The memory allocated to store results from old queries + --query-cache-strip-comments + Strip all comments from a query before storing it in the + query cache + --query-cache-type=name + OFF = Don't cache or retrieve results. ON = Cache all + results except SELECT SQL_NO_CACHE ... queries. DEMAND = + Cache only SELECT SQL_CACHE ... queries + --query-cache-wlock-invalidate + Invalidate queries in query cache on LOCK for write + --query-prealloc-size=# + Persistent buffer for query parsing and execution + --range-alloc-block-size=# + Allocation block size for storing ranges during + optimization + --read-binlog-speed-limit=# + Maximum speed(KB/s) to read binlog from master (0 = no + limit) + --read-buffer-size=# + Each thread that does a sequential scan allocates a + buffer of this size for each table it scans. If you do + many sequential scans, you may want to increase this + value + --read-only Make all non-temporary tables read-only, with the + exception for replication (slave) threads and users with + the 'READ ONLY ADMIN' privilege + --read-rnd-buffer-size=# + When reading rows in sorted order after a sort, the rows + are read through this buffer to avoid a disk seeks + --relay-log=name The location and name to use for relay logs. + --relay-log-index=name + The location and name to use for the file that keeps a + list of the last relay logs + --relay-log-info-file=name + The location and name of the file that remembers where + the SQL replication thread is in the relay logs. + --relay-log-purge if disabled - do not purge relay logs. if enabled - purge + them as soon as they are no more needed. + (Defaults to on; use --skip-relay-log-purge to disable.) + --relay-log-recovery + Enables automatic relay log recovery right after the + database startup, which means that the IO Thread starts + re-fetching from the master right after the last + transaction processed. + --relay-log-space-limit=# + Maximum space to use for all relay logs + --replicate-annotate-row-events + Tells the slave to write annotate rows events received + from the master to its own binary log. Ignored if + log_slave_updates is not set + (Defaults to on; use --skip-replicate-annotate-row-events to disable.) + --replicate-do-db=name + Tells the slave thread to restrict replication to the + specified database. To specify more than one database, + use the directive multiple times, once for each database. + Note that this will only work if you do not use + cross-database queries such as UPDATE some_db.some_table + SET foo='bar' while having selected a different or no + database. If you need cross database updates to work, + make sure you have 3.23.28 or later, and use + replicate-wild-do-table=db_name.%. + --replicate-do-table=name + Tells the slave thread to restrict replication to the + specified table. To specify more than one table, use the + directive multiple times, once for each table. This will + work for cross-database updates, in contrast to + replicate-do-db. + --replicate-events-marked-for-skip=name + Whether the slave should replicate events that were + created with @@skip_replication=1 on the master. Default + REPLICATE (no events are skipped). Other values are + FILTER_ON_SLAVE (events will be sent by the master but + ignored by the slave) and FILTER_ON_MASTER (events marked + with @@skip_replication=1 will be filtered on the master + and never be sent to the slave). + --replicate-ignore-db=name + Tells the slave thread to not replicate to the specified + database. To specify more than one database to ignore, + use the directive multiple times, once for each database. + This option will not work if you use cross database + updates. If you need cross database updates to work, make + sure you have 3.23.28 or later, and use + replicate-wild-ignore-table=db_name.%. + --replicate-ignore-table=name + Tells the slave thread to not replicate to the specified + table. To specify more than one table to ignore, use the + directive multiple times, once for each table. This will + work for cross-database updates, in contrast to + replicate-ignore-db. + --replicate-rewrite-db=name + Updates to a database with a different name than the + original. Example: + replicate-rewrite-db=master_db_name->slave_db_name. + --replicate-same-server-id + In replication, if set to 1, do not skip events having + our server id. Default value is 0 (to break infinite + loops in circular replication). Can't be set to 1 if + --log-slave-updates is used. + --replicate-wild-do-table=name + Tells the slave thread to restrict replication to the + tables that match the specified wildcard pattern. To + specify more than one table, use the directive multiple + times, once for each table. This will work for + cross-database updates. Example: + replicate-wild-do-table=foo%.bar% will replicate only + updates to tables in all databases that start with foo + and whose table names start with bar. + --replicate-wild-ignore-table=name + Tells the slave thread to not replicate to the tables + that match the given wildcard pattern. To specify more + than one table to ignore, use the directive multiple + times, once for each table. This will work for + cross-database updates. Example: + replicate-wild-ignore-table=foo%.bar% will not do updates + to tables in databases that start with foo and whose + table names start with bar. + --report-host=name Hostname or IP of the slave to be reported to the master + during slave registration. Will appear in the output of + SHOW SLAVE HOSTS. Leave unset if you do not want the + slave to register itself with the master. Note that it is + not sufficient for the master to simply read the IP of + the slave off the socket once the slave connects. Due to + NAT and other routing issues, that IP may not be valid + for connecting to the slave from the master or other + hosts + --report-password=name + The account password of the slave to be reported to the + master during slave registration + --report-port=# Port for connecting to slave reported to the master + during slave registration. Set it only if the slave is + listening on a non-default port or if you have a special + tunnel from the master or other clients to the slave. If + not sure, leave this option unset + --report-user=name The account user name of the slave to be reported to the + master during slave registration + --require-secure-transport + When this option is enabled, connections attempted using + insecure transport will be rejected. Secure transports + are SSL/TLS, Unix sockets or named pipes. + --rowid-merge-buff-size=# + The size of the buffers used [NOT] IN evaluation via + partial matching + --rpl-semi-sync-master-enabled + Enable semi-synchronous replication master (disabled by + default). + --rpl-semi-sync-master-timeout=# + The timeout value (in ms) for semi-synchronous + replication in the master + --rpl-semi-sync-master-trace-level=# + The tracing level for semi-sync replication. + --rpl-semi-sync-master-wait-no-slave + Wait until timeout when no semi-synchronous replication + slave available (enabled by default). + (Defaults to on; use --skip-rpl-semi-sync-master-wait-no-slave to disable.) + --rpl-semi-sync-master-wait-point=name + Should transaction wait for semi-sync ack after having + synced binlog, or after having committed in storage + engine.. One of: AFTER_SYNC, AFTER_COMMIT + --rpl-semi-sync-slave-delay-master + Only write master info file when ack is needed. + --rpl-semi-sync-slave-enabled + Enable semi-synchronous replication slave (disabled by + default). + --rpl-semi-sync-slave-kill-conn-timeout[=#] + Timeout for the mysql connection used to kill the slave + io_thread's connection on master. This timeout comes into + play when stop slave is executed. + --rpl-semi-sync-slave-trace-level=# + The tracing level for semi-sync replication. + --safe-mode Skip some optimize stages (for testing). Deprecated. + --safe-user-create Don't allow new user creation by the user who has no + write privileges to the mysql.user table. + --secure-auth Disallow authentication for accounts that have old + (pre-4.1) passwords + (Defaults to on; use --skip-secure-auth to disable.) + --secure-file-priv=name + Limit LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE() to + files within specified directory + --secure-timestamp=name + Restricts direct setting of a session timestamp. Possible + levels are: YES - timestamp cannot deviate from the + system clock, REPLICATION - replication thread can adjust + timestamp to match the master's, SUPER - a user with this + privilege and a replication thread can adjust timestamp, + NO - historical behavior, anyone can modify session + timestamp + --sequence[=name] Enable or disable SEQUENCE plugin. One of: ON, OFF, FORCE + (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --server-id=# Uniquely identifies the server instance in the community + of replication partners + --session-track-schema + Track changes to the default schema. + (Defaults to on; use --skip-session-track-schema to disable.) + --session-track-state-change + Track changes to the session state. + --session-track-system-variables=name + Track changes in registered system variables. + --session-track-transaction-info=name + Track changes to the transaction attributes. OFF to + disable; STATE to track just transaction state (Is there + an active transaction? Does it have any data? etc.); + CHARACTERISTICS to track transaction state and report all + statements needed to start a transaction with the same + characteristics (isolation level, read only/read + write,snapshot - but not any work done / data modified + within the transaction). + --show-slave-auth-info + Show user and password in SHOW SLAVE HOSTS on this + master. + --silent-startup Don't print [Note] to the error log during startup. + --skip-grant-tables Start without grant tables. This gives all users FULL + ACCESS to all tables. + --skip-host-cache Don't cache host names. + --skip-name-resolve Don't resolve hostnames. All hostnames are IP's or + 'localhost'. + --skip-networking Don't allow connection with TCP/IP + --skip-show-database + Don't allow 'SHOW DATABASE' commands + --skip-slave-start If set, slave is not autostarted. + --slave-compressed-protocol + Use compression on master/slave protocol + --slave-ddl-exec-mode=name + How replication events should be executed. Legal values + are STRICT and IDEMPOTENT (default). In IDEMPOTENT mode, + replication will not stop for DDL operations that are + idempotent. This means that CREATE TABLE is treated as + CREATE TABLE OR REPLACE and DROP TABLE is treated as DROP + TABLE IF EXISTS. + --slave-domain-parallel-threads=# + Maximum number of parallel threads to use on slave for + events in a single replication domain. When using + multiple domains, this can be used to limit a single + domain from grabbing all threads and thus stalling other + domains. The default of 0 means to allow a domain to grab + as many threads as it wants, up to the value of + slave_parallel_threads. + --slave-exec-mode=name + How replication events should be executed. Legal values + are STRICT (default) and IDEMPOTENT. In IDEMPOTENT mode, + replication will not stop for operations that are + idempotent. For example, in row based replication + attempts to delete rows that doesn't exist will be + ignored. In STRICT mode, replication will stop on any + unexpected difference between the master and the slave. + --slave-load-tmpdir=name + The location where the slave should put its temporary + files when replicating a LOAD DATA INFILE command + --slave-max-allowed-packet=# + The maximum packet length to sent successfully from the + master to slave. + --slave-max-statement-time=# + A query that has taken more than slave_max_statement_time + seconds to run on the slave will be aborted. The argument + will be treated as a decimal value with microsecond + precision. A value of 0 (default) means no timeout + --slave-net-timeout=# + Number of seconds to wait for more data from any + master/slave connection before aborting the read + --slave-parallel-max-queued=# + Limit on how much memory SQL threads should use per + parallel replication thread when reading ahead in the + relay log looking for opportunities for parallel + replication. Only used when --slave-parallel-threads > 0. + --slave-parallel-mode=name + Controls what transactions are applied in parallel when + using --slave-parallel-threads. Possible values: + "optimistic" tries to apply most transactional DML in + parallel, and handles any conflicts with rollback and + retry. "conservative" limits parallelism in an effort to + avoid any conflicts. "aggressive" tries to maximise the + parallelism, possibly at the cost of increased conflict + rate. "minimal" only parallelizes the commit steps of + transactions. "none" disables parallel apply completely. + --slave-parallel-threads=# + If non-zero, number of threads to spawn to apply in + parallel events on the slave that were group-committed on + the master or were logged with GTID in different + replication domains. Note that these threads are in + addition to the IO and SQL threads, which are always + created by a replication slave + --slave-parallel-workers=# + Alias for slave_parallel_threads + --slave-run-triggers-for-rbr=name + Modes for how triggers in row-base replication on slave + side will be executed. Legal values are NO (default), + YES, LOGGING and ENFORCE. NO means that trigger for RBR + will not be running on slave. YES and LOGGING means that + triggers will be running on slave, if there was not + triggers running on the master for the statement. LOGGING + also means results of that the executed triggers work + will be written to the binlog. ENFORCE means that + triggers will always be run on the slave, even if there + are triggers on the master. ENFORCE implies LOGGING. + --slave-skip-errors=name + Tells the slave thread to continue replication when a + query event returns an error from the provided list + --slave-sql-verify-checksum + Force checksum verification of replication events after + reading them from relay log. Note: Events are always + checksum-verified by slave on receiving them from the + network before writing them to the relay log + (Defaults to on; use --skip-slave-sql-verify-checksum to disable.) + --slave-transaction-retries=# + Number of times the slave SQL thread will retry a + transaction in case it failed with a deadlock, elapsed + lock wait timeout or listed in + slave_transaction_retry_errors, before giving up and + stopping + --slave-transaction-retry-errors=name + Tells the slave thread to retry transaction for + replication when a query event returns an error from the + provided list. Deadlock error, elapsed lock wait timeout, + net read error, net read timeout, net write error, net + write timeout, connect error and 2 types of lost + connection error are automatically added to this list + --slave-transaction-retry-interval=# + Interval of the slave SQL thread will retry a transaction + in case it failed with a deadlock or elapsed lock wait + timeout or listed in slave_transaction_retry_errors + --slave-type-conversions=name + Set of slave type conversions that are enabled. If the + variable is empty, no conversions are allowed and it is + expected that the types match exactly. Any combination + of: ALL_LOSSY, ALL_NON_LOSSY + Use 'ALL' to set all combinations. + --slow-launch-time=# + If creating the thread takes longer than this value (in + seconds), the Slow_launch_threads counter will be + incremented + --slow-query-log Alias for log_slow_query. Log slow queries to a table or + log file. Defaults logging to a file 'hostname'-slow.log + or a table mysql.slow_log if --log-output=TABLE is used. + Must be enabled to activate other slow log options. + --slow-query-log-file=name + Alias for log_slow_query_file. Log slow queries to given + log file. Defaults logging to 'hostname'-slow.log. Must + be enabled to activate other slow log options + --socket=name Socket file to use for connection + --sort-buffer-size=# + Each thread that needs to do a sort allocates a buffer of + this size + --sql-mode=name Sets the sql mode. Any combination of: REAL_AS_FLOAT, + PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, + IGNORE_BAD_TABLE_OPTIONS, ONLY_FULL_GROUP_BY, + NO_UNSIGNED_SUBTRACTION, NO_DIR_IN_CREATE, POSTGRESQL, + ORACLE, MSSQL, DB2, MAXDB, NO_KEY_OPTIONS, + NO_TABLE_OPTIONS, NO_FIELD_OPTIONS, MYSQL323, MYSQL40, + ANSI, NO_AUTO_VALUE_ON_ZERO, NO_BACKSLASH_ESCAPES, + STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, + NO_ZERO_DATE, ALLOW_INVALID_DATES, + ERROR_FOR_DIVISION_BY_ZERO, TRADITIONAL, + NO_AUTO_CREATE_USER, HIGH_NOT_PRECEDENCE, + NO_ENGINE_SUBSTITUTION, PAD_CHAR_TO_FULL_LENGTH, + EMPTY_STRING_IS_NULL, SIMULTANEOUS_ASSIGNMENT, + TIME_ROUND_FRACTIONAL + Use 'ALL' to set all combinations. + --sql-safe-updates If set to 1, UPDATEs and DELETEs need either a key in the + WHERE clause, or a LIMIT clause, or else they will + aborted. Prevents the common mistake of accidentally + deleting or updating every row in a table. + --ssl Enable SSL for connection (automatically enabled if an + ssl option is used). + --ssl-ca=name CA file in PEM format (check OpenSSL docs, implies --ssl) + --ssl-capath=name CA directory (check OpenSSL docs, implies --ssl) + --ssl-cert=name X509 cert in PEM format (implies --ssl) + --ssl-cipher=name SSL cipher to use (implies --ssl) + --ssl-crl=name CRL file in PEM format (check OpenSSL docs, implies + --ssl) + --ssl-crlpath=name CRL directory (check OpenSSL docs, implies --ssl) + --ssl-key=name X509 key in PEM format (implies --ssl) + --stack-trace Print a symbolic stack trace on failure + (Defaults to on; use --skip-stack-trace to disable.) + --standard-compliant-cte + Allow only CTEs compliant to SQL standard + (Defaults to on; use --skip-standard-compliant-cte to disable.) + --stored-program-cache=# + The soft upper limit for number of cached stored routines + for one connection. + --strict-password-validation + When password validation plugins are enabled, reject + passwords that cannot be validated (passwords specified + as a hash) + (Defaults to on; use --skip-strict-password-validation to disable.) + -s, --symbolic-links + Enable symbolic link support. + (Defaults to on; use --skip-symbolic-links to disable.) + --sync-binlog=# Synchronously flush binary log to disk after every #th + event. Use 0 (default) to disable synchronous flushing + --sync-frm Sync .frm files to disk on creation + (Defaults to on; use --skip-sync-frm to disable.) + --sync-master-info=# + Synchronously flush master info to disk after every #th + event. Use 0 to disable synchronous flushing + --sync-relay-log=# Synchronously flush relay log to disk after every #th + event. Use 0 to disable synchronous flushing + --sync-relay-log-info=# + Synchronously flush relay log info to disk after every + #th transaction. Use 0 to disable synchronous flushing + --sysdate-is-now Non-default option to alias SYSDATE() to NOW() to make it + safe-replicable. Since 5.0, SYSDATE() returns a `dynamic' + value different for different invocations, even within + the same statement. + --system-versioning-alter-history=name + Versioning ALTER TABLE mode. ERROR: Fail ALTER with + error; KEEP: Keep historical system rows and subject them + to ALTER + --system-versioning-insert-history + Allows direct inserts into ROW_START and ROW_END columns + if secure_timestamp allows changing @@timestamp + --table-cache=# Deprecated; use --table-open-cache instead. + --table-definition-cache=# + The number of cached table definitions + --table-open-cache=# + The number of cached open tables + --table-open-cache-instances=# + Maximum number of table cache instances + --tc-heuristic-recover=name + Decision to use in heuristic recover process. One of: OFF, + COMMIT, ROLLBACK + --tcp-keepalive-interval=# + The interval, in seconds, between when successive + keep-alive packets are sent if no acknowledgement is + received.If set to 0, system dependent default is used. + (Automatically configured unless set explicitly) + --tcp-keepalive-probes=# + The number of unacknowledged probes to send before + considering the connection dead and notifying the + application layer.If set to 0, system dependent default + is used. (Automatically configured unless set explicitly) + --tcp-keepalive-time=# + Timeout, in seconds, with no activity until the first TCP + keep-alive packet is sent.If set to 0, system dependent + default is used. (Automatically configured unless set + explicitly) + --tcp-nodelay Set option TCP_NODELAY (disable Nagle's algorithm) on + socket + (Defaults to on; use --skip-tcp-nodelay to disable.) + --temp-pool Using this option will cause most temporary files created + to use a small set of names, rather than a unique name + for each new file. Deprecated. + --thread-cache-size=# + How many threads we should keep in a cache for reuse. + These are freed after 5 minutes of idle time + --thread-handling=name + Define threads usage for handling queries. One of: + one-thread-per-connection, no-threads, pool-of-threads + --thread-pool-dedicated-listener + If set to 1,listener thread will not pick up queries + --thread-pool-exact-stats + If set to 1, provides better statistics in + information_schema threadpool tables + --thread-pool-groups[=name] + Enable or disable THREAD_POOL_GROUPS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --thread-pool-idle-timeout=# + Timeout in seconds for an idle thread in the thread + pool.Worker thread will be shut down after timeout + --thread-pool-max-threads=# + Maximum allowed number of worker threads in the thread + pool + --thread-pool-oversubscribe=# + How many additional active worker threads in a group are + allowed. + --thread-pool-prio-kickup-timer=# + The number of milliseconds before a dequeued low-priority + statement is moved to the high-priority queue + --thread-pool-priority=name + Threadpool priority. High priority connections usually + start executing earlier than low priority.If priority set + to 'auto', the the actual priority(low or high) is + determined based on whether or not connection is inside + transaction. + --thread-pool-queues[=name] + Enable or disable THREAD_POOL_QUEUES plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --thread-pool-size=# + Number of thread groups in the pool. This parameter is + roughly equivalent to maximum number of concurrently + executing threads (threads in a waiting state do not + count as executing). + --thread-pool-stall-limit=# + Maximum query execution time in milliseconds,before an + executing non-yielding thread is considered stalled.If a + worker thread is stalled, additional worker thread may be + created to handle remaining clients. + --thread-pool-stats[=name] + Enable or disable THREAD_POOL_STATS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --thread-pool-waits[=name] + Enable or disable THREAD_POOL_WAITS plugin. One of: ON, + OFF, FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --thread-stack=# The stack size for each thread + --time-format=name The TIME format (ignored) + --tls-version=name TLS protocol version for secure connections.. Any + combination of: TLSv1.0, TLSv1.1, TLSv1.2, TLSv1.3 + Use 'ALL' to set all combinations. + --tmp-disk-table-size=# + Max size for data for an internal temporary on-disk + MyISAM or Aria table. + --tmp-memory-table-size=# + If an internal in-memory temporary table exceeds this + size, MariaDB will automatically convert it to an on-disk + MyISAM or Aria table. Same as tmp_table_size. + --tmp-table-size=# Alias for tmp_memory_table_size. If an internal in-memory + temporary table exceeds this size, MariaDB will + automatically convert it to an on-disk MyISAM or Aria + table. + -t, --tmpdir=name Path for temporary files. Several paths may be specified, + separated by a colon (:), in this case they are used in a + round-robin fashion + --transaction-alloc-block-size=# + Allocation block size for transactions to be stored in + binary log + --transaction-isolation=name + Default transaction isolation level. One of: + READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, + SERIALIZABLE + --transaction-prealloc-size=# + Persistent buffer for transactions to be stored in binary + log + --transaction-read-only + Default transaction access mode. True if transactions are + read-only. + --unix-socket[=name] + Enable or disable unix_socket plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --updatable-views-with-limit=name + YES = Don't issue an error message (warning only) if a + VIEW without presence of a key of the underlying table is + used in queries with a LIMIT clause for updating. NO = + Prohibit update of a VIEW, which does not contain a key + of the underlying table and the query uses a LIMIT clause + (usually get from GUI tools) + --use-stat-tables=name + Specifies how to use system statistics tables. One of: + NEVER, COMPLEMENTARY, PREFERABLY, + COMPLEMENTARY_FOR_QUERIES, PREFERABLY_FOR_QUERIES + -u, --user=name Run mysqld daemon as user. + --user-variables[=name] + Enable or disable user_variables plugin. One of: ON, OFF, + FORCE (don't start if the plugin fails to load), + FORCE_PLUS_PERMANENT (like FORCE, but the plugin can not + be uninstalled). + --userstat Enables statistics gathering for USER_STATISTICS, + CLIENT_STATISTICS, INDEX_STATISTICS and TABLE_STATISTICS + tables in the INFORMATION_SCHEMA + -v, --verbose Used with --help option for detailed help. + -V, --version[=name] + Output version information and exit. + --wait-timeout=# The number of seconds the server waits for activity on a + connection before closing it + --wsrep-OSU-method[=name] + Method for Online Schema Upgrade. One of: TOI, RSU + --wsrep-SR-store=name + Storage for streaming replication fragments. One of: none, + table + --wsrep-allowlist=name + Allowed IP addresses split by comma delimiter + --wsrep-auto-increment-control + To automatically control the assignment of autoincrement + variables + (Defaults to on; use --skip-wsrep-auto-increment-control to disable.) + --wsrep-causal-reads + Setting this variable is equivalent to setting + wsrep_sync_wait READ flag + --wsrep-certification-rules=name + Certification rules to use in the cluster. Possible + values are: "strict": stricter rules that could result in + more certification failures. "optimized": relaxed rules + that allow more concurrency and cause less certification + failures. + --wsrep-certify-nonPK + Certify tables with no primary key + (Defaults to on; use --skip-wsrep-certify-nonPK to disable.) + --wsrep-cluster-address=name + Address to initially connect to cluster + --wsrep-cluster-name=name + Name for the cluster + --wsrep-convert-LOCK-to-trx + To convert locking sessions into transactions + --wsrep-data-home-dir=name + home directory for wsrep provider + --wsrep-dbug-option=name + DBUG options to provider library + --wsrep-debug=name WSREP debug level logging. One of: NONE, SERVER, + TRANSACTION, STREAMING, CLIENT + --wsrep-desync To desynchronize the node from the cluster + --wsrep-dirty-reads Allow reads even when the node is not in the primary + component. + --wsrep-drupal-282555-workaround + Enable a workaround to handle the cases where inserting a + DEFAULT value into an auto-increment column could fail + with duplicate key error + --wsrep-forced-binlog-format=name + binlog format to take effect over user's choice. One of: + MIXED, STATEMENT, ROW, NONE + --wsrep-gtid-domain-id=# + When wsrep_gtid_mode is set, this value is used as + gtid_domain_id for galera transactions and also copied to + the joiner nodes during state transfer. It is ignored, + otherwise. + --wsrep-gtid-mode Automatically update the (joiner) node's + wsrep_gtid_domain_id value with that of donor's (received + during state transfer) and use it in place of + gtid_domain_id for all galera transactions. When OFF + (default), wsrep_gtid_domain_id is simply ignored + (backward compatibility). + --wsrep-ignore-apply-errors=# + Ignore replication errors + --wsrep-load-data-splitting + To commit LOAD DATA transaction after every 10K rows + inserted (deprecated) + --wsrep-log-conflicts + To log multi-master conflicts + --wsrep-max-ws-rows=# + Max number of rows in write set + --wsrep-max-ws-size=# + Max write set size (bytes) + --wsrep-mode=name Set of WSREP features that are enabled.. Any combination + of: STRICT_REPLICATION, BINLOG_ROW_FORMAT_ONLY, + REQUIRED_PRIMARY_KEY, REPLICATE_MYISAM, REPLICATE_ARIA, + DISALLOW_LOCAL_GTID, BF_ABORT_MARIABACKUP + Use 'ALL' to set all combinations. + --wsrep-mysql-replication-bundle=# + mysql replication group commit + --wsrep-new-cluster Bootstrap a cluster. It works by overriding the current + value of wsrep_cluster_address. It is recommended not to + add this option to the config file as this will trigger + bootstrap on every server start. + --wsrep-node-address=name + Specifies the node's network address, in the format ip + address[:port]. Used in situations where autoguessing is + not reliable. As of MariaDB 10.1.8, supports IPv6. + --wsrep-node-incoming-address=name + Client connection address + --wsrep-node-name=name + Name of this node. This name can be used in + wsrep_sst_donor as a preferred donor. Note that multiple + nodes in a cluster can have the same name. + --wsrep-notify-cmd=name + --wsrep-on To enable wsrep replication + --wsrep-provider=name + Path to replication provider library + --wsrep-provider-options=name + Semicolon (;) separated list of wsrep options (see + wsrep_provider_options documentation). + --wsrep-recover Recover database state after crash and exit + --wsrep-reject-queries[=name] + Variable to set to reject queries. One of: NONE, ALL, + ALL_KILL + --wsrep-restart-slave + Should MariaDB slave be restarted automatically, when + node joins back to cluster + --wsrep-retry-autocommit=# + Max number of times to retry a failed autocommit + statement + --wsrep-slave-FK-checks + Should slave thread do foreign key constraint checks + (Defaults to on; use --skip-wsrep-slave-FK-checks to disable.) + --wsrep-slave-UK-checks + Should slave thread do secondary index uniqueness checks + --wsrep-slave-threads=# + Number of slave appliers to launch + --wsrep-sst-auth=name + Authentication for SST connection + --wsrep-sst-donor=name + preferred donor node for the SST + --wsrep-sst-donor-rejects-queries + Reject client queries when donating state snapshot + transfer + --wsrep-sst-method=name + State snapshot transfer method + --wsrep-sst-receive-address=name + Address where node is waiting for SST contact + --wsrep-start-position=name + global transaction position to start from + --wsrep-status-file=name + wsrep status output filename + --wsrep-sync-wait[=#] + Ensure "synchronous" read view before executing an + operation of the type specified by bitmask: 1 - + READ(includes SELECT, SHOW and BEGIN/START TRANSACTION); + 2 - UPDATE and DELETE; 4 - INSERT and REPLACE + --wsrep-trx-fragment-size=# + Size of transaction fragments for streaming replication + (measured in units of 'wsrep_trx_fragment_unit') + --wsrep-trx-fragment-unit=name + Unit for streaming replication transaction fragments' + size: bytes, rows, statements + +Variables (--variable-name=value) +and boolean options {FALSE|TRUE} Value (after reading options) +------------------------------------------------------------ ------------- +allow-suspicious-udfs FALSE +alter-algorithm DEFAULT +analyze-sample-percentage 100 +aria-block-size 8192 +aria-checkpoint-interval 0 +aria-checkpoint-log-activity 1048576 +aria-encrypt-tables FALSE +aria-force-start-after-recovery-failures 0 +aria-group-commit none +aria-group-commit-interval 0 +aria-log-dir-path /var/lib/mysql/ +aria-log-file-size 1073741824 +aria-log-purge-type immediate +aria-max-sort-file-size 9223372036853727232 +aria-page-checksum TRUE +aria-pagecache-age-threshold 300 +aria-pagecache-buffer-size 134217728 +aria-pagecache-division-limit 100 +aria-pagecache-file-hash-size 512 +aria-recover-options +aria-repair-threads 1 +aria-sort-buffer-size 268434432 +aria-stats-method nulls_unequal +aria-sync-log-dir NEWFILE +auto-increment-increment 1 +auto-increment-offset 1 +autocommit TRUE +automatic-sp-privileges TRUE +back-log 80 +basedir /usr +big-tables FALSE +bind-address 127.0.0.1 +binlog-alter-two-phase FALSE +binlog-annotate-row-events TRUE +binlog-cache-size 32768 +binlog-checksum CRC32 +binlog-commit-wait-count 0 +binlog-commit-wait-usec 100000 +binlog-direct-non-transactional-updates FALSE +binlog-expire-logs-seconds 864000 +binlog-file-cache-size 16384 +binlog-format MIXED +binlog-optimize-thread-scheduling TRUE +binlog-row-event-max-size 8192 +binlog-row-image FULL +binlog-row-metadata NO_LOG +binlog-stmt-cache-size 32768 +bulk-insert-buffer-size 8388608 +character-set-client-handshake TRUE +character-set-filesystem binary +character-set-server utf8mb4 +character-sets-dir /usr/share/mysql/charsets/ +chroot (No default value) +collation-server utf8mb4_general_ci +column-compression-threshold 100 +column-compression-zlib-level 6 +column-compression-zlib-strategy DEFAULT_STRATEGY +column-compression-zlib-wrap FALSE +completion-type NO_CHAIN +concurrent-insert AUTO +connect-timeout 10 +console FALSE +core-file FALSE +datadir /var/lib/mysql/ +date-format %Y-%m-%d +datetime-format %Y-%m-%d %H:%i:%s +deadlock-search-depth-long 15 +deadlock-search-depth-short 4 +deadlock-timeout-long 50000000 +deadlock-timeout-short 10000 +debug +debug-abort-slave-event-count 0 +debug-disconnect-slave-event-count 0 +debug-gdb FALSE +debug-max-binlog-dump-events 0 +debug-no-sync FALSE +debug-no-thread-alarm FALSE +debug-sporadic-binlog-dump-fail FALSE +default-password-lifetime 0 +default-regex-flags +default-storage-engine InnoDB +default-time-zone (No default value) +default-tmp-storage-engine (No default value) +default-week-format 0 +delay-key-write ON +delayed-insert-limit 100 +delayed-insert-timeout 300 +delayed-queue-size 1000 +des-key-file (No default value) +disconnect-on-expired-password FALSE +div-precision-increment 4 +encrypt-binlog FALSE +encrypt-tmp-disk-tables FALSE +encrypt-tmp-files FALSE +enforce-storage-engine (No default value) +eq-range-index-dive-limit 200 +event-scheduler OFF +expensive-subquery-limit 100 +expire-logs-days 10 +explicit-defaults-for-timestamp TRUE +external-locking FALSE +extra-max-connections 1 +extra-port 0 +feedback ON +feedback-http-proxy (No default value) +feedback-send-retry-wait 60 +feedback-send-timeout 60 +feedback-url https://feedback.mariadb.org/rest/v1/post +feedback-user-info +flashback FALSE +flush FALSE +flush-time 0 +ft-boolean-syntax + -><()~*:""&| +ft-max-word-len 84 +ft-min-word-len 4 +ft-query-expansion-limit 20 +ft-stopword-file (No default value) +gdb FALSE +general-log FALSE +general-log-file HOSTNAME.log +getopt-prefix-matching TRUE +group-concat-max-len 1048576 +gtid-cleanup-batch-size 64 +gtid-domain-id 0 +gtid-ignore-duplicates FALSE +gtid-pos-auto-engines +gtid-strict-mode FALSE +help TRUE +histogram-size 254 +histogram-type DOUBLE_PREC_HB +host-cache-size 279 +idle-readonly-transaction-timeout 0 +idle-transaction-timeout 0 +idle-write-transaction-timeout 0 +ignore-builtin-innodb FALSE +ignore-db-dirs +in-predicate-conversion-threshold 1000 +init-connect +init-file (No default value) +init-rpl-role MASTER +init-slave +innodb ON +innodb-adaptive-flushing TRUE +innodb-adaptive-flushing-lwm 10 +innodb-adaptive-hash-index FALSE +innodb-adaptive-hash-index-parts 8 +innodb-autoextend-increment 64 +innodb-autoinc-lock-mode 1 +innodb-buf-dump-status-frequency 0 +innodb-buffer-page ON +innodb-buffer-page-lru ON +innodb-buffer-pool-chunk-size 0 +innodb-buffer-pool-dump-at-shutdown TRUE +innodb-buffer-pool-dump-now FALSE +innodb-buffer-pool-dump-pct 25 +innodb-buffer-pool-filename ib_buffer_pool +innodb-buffer-pool-load-abort FALSE +innodb-buffer-pool-load-at-startup TRUE +innodb-buffer-pool-load-now FALSE +innodb-buffer-pool-size 134217728 +innodb-buffer-pool-stats ON +innodb-change-buffer-max-size 25 +innodb-change-buffering none +innodb-checksum-algorithm full_crc32 +innodb-cmp ON +innodb-cmp-per-index ON +innodb-cmp-per-index-enabled FALSE +innodb-cmp-per-index-reset ON +innodb-cmp-reset ON +innodb-cmpmem ON +innodb-cmpmem-reset ON +innodb-compression-algorithm zlib +innodb-compression-default FALSE +innodb-compression-failure-threshold-pct 5 +innodb-compression-level 6 +innodb-compression-pad-pct-max 50 +innodb-data-file-path ibdata1:12M:autoextend +innodb-data-home-dir (No default value) +innodb-deadlock-detect TRUE +innodb-deadlock-report full +innodb-default-encryption-key-id 1 +innodb-default-row-format dynamic +innodb-defragment FALSE +innodb-defragment-fill-factor 0.9 +innodb-defragment-fill-factor-n-recs 20 +innodb-defragment-frequency 40 +innodb-defragment-n-pages 7 +innodb-defragment-stats-accuracy 0 +innodb-disable-sort-file-cache FALSE +innodb-doublewrite TRUE +innodb-encrypt-log FALSE +innodb-encrypt-tables OFF +innodb-encrypt-temporary-tables FALSE +innodb-encryption-rotate-key-age 1 +innodb-encryption-rotation-iops 100 +innodb-encryption-threads 0 +innodb-fast-shutdown 1 +innodb-fatal-semaphore-wait-threshold 600 +innodb-file-per-table TRUE +innodb-fill-factor 100 +innodb-flush-log-at-timeout 1 +innodb-flush-log-at-trx-commit 1 +innodb-flush-method O_DIRECT +innodb-flush-neighbors 1 +innodb-flush-sync TRUE +innodb-flushing-avg-loops 30 +innodb-force-primary-key FALSE +innodb-force-recovery 0 +innodb-ft-aux-table (No default value) +innodb-ft-being-deleted ON +innodb-ft-cache-size 8000000 +innodb-ft-config ON +innodb-ft-default-stopword ON +innodb-ft-deleted ON +innodb-ft-enable-diag-print FALSE +innodb-ft-enable-stopword TRUE +innodb-ft-index-cache ON +innodb-ft-index-table ON +innodb-ft-max-token-size 84 +innodb-ft-min-token-size 3 +innodb-ft-num-word-optimize 2000 +innodb-ft-result-cache-limit 2000000000 +innodb-ft-server-stopword-table (No default value) +innodb-ft-sort-pll-degree 2 +innodb-ft-total-cache-size 640000000 +innodb-ft-user-stopword-table (No default value) +innodb-immediate-scrub-data-uncompressed FALSE +innodb-instant-alter-column-allowed add_drop_reorder +innodb-io-capacity 200 +innodb-io-capacity-max 18446744073709551615 +innodb-lock-wait-timeout 50 +innodb-lock-waits ON +innodb-locks ON +innodb-log-buffer-size 16777216 +innodb-log-file-buffering FALSE +innodb-log-file-size 100663296 +innodb-log-group-home-dir (No default value) +innodb-lru-flush-size 32 +innodb-lru-scan-depth 1536 +innodb-max-dirty-pages-pct 90 +innodb-max-dirty-pages-pct-lwm 0 +innodb-max-purge-lag 0 +innodb-max-purge-lag-delay 0 +innodb-max-purge-lag-wait 4294967295 +innodb-max-undo-log-size 10485760 +innodb-metrics ON +innodb-monitor-disable (No default value) +innodb-monitor-enable (No default value) +innodb-monitor-reset (No default value) +innodb-monitor-reset-all (No default value) +innodb-numa-interleave FALSE +innodb-old-blocks-pct 37 +innodb-old-blocks-time 1000 +innodb-online-alter-log-max-size 134217728 +innodb-open-files 0 +innodb-optimize-fulltext-only FALSE +innodb-page-size 16384 +innodb-prefix-index-cluster-optimization TRUE +innodb-print-all-deadlocks FALSE +innodb-purge-batch-size 1000 +innodb-purge-rseg-truncate-frequency 128 +innodb-purge-threads 4 +innodb-random-read-ahead FALSE +innodb-read-ahead-threshold 56 +innodb-read-io-threads 4 +innodb-read-only FALSE +innodb-read-only-compressed FALSE +innodb-rollback-on-timeout FALSE +innodb-sort-buffer-size 1048576 +innodb-spin-wait-delay 4 +innodb-stats-auto-recalc TRUE +innodb-stats-include-delete-marked FALSE +innodb-stats-method nulls_equal +innodb-stats-modified-counter 0 +innodb-stats-on-metadata FALSE +innodb-stats-persistent TRUE +innodb-stats-persistent-sample-pages 20 +innodb-stats-traditional TRUE +innodb-stats-transient-sample-pages 8 +innodb-status-file FALSE +innodb-status-output FALSE +innodb-status-output-locks FALSE +innodb-strict-mode TRUE +innodb-sync-spin-loops 30 +innodb-sys-columns ON +innodb-sys-fields ON +innodb-sys-foreign ON +innodb-sys-foreign-cols ON +innodb-sys-indexes ON +innodb-sys-tables ON +innodb-sys-tablespaces ON +innodb-sys-tablestats ON +innodb-sys-virtual ON +innodb-table-locks TRUE +innodb-tablespaces-encryption ON +innodb-temp-data-file-path ibtmp1:12M:autoextend +innodb-tmpdir (No default value) +innodb-trx ON +innodb-undo-directory (No default value) +innodb-undo-log-truncate FALSE +innodb-undo-tablespaces 0 +innodb-use-atomic-writes TRUE +innodb-use-native-aio TRUE +innodb-write-io-threads 4 +interactive-timeout 28800 +join-buffer-size 262144 +join-buffer-space-limit 2097152 +join-cache-level 2 +keep-files-on-create FALSE +key-buffer-size 134217728 +key-cache-age-threshold 300 +key-cache-block-size 1024 +key-cache-division-limit 100 +key-cache-file-hash-size 512 +key-cache-segments 0 +large-files-support TRUE +large-pages FALSE +lc-messages en_US +lc-messages-dir (No default value) +lc-time-names en_US +local-infile TRUE +lock-wait-timeout 86400 +log-basename HOSTNAME +log-bin (No default value) +log-bin-compress FALSE +log-bin-compress-min-len 256 +log-bin-index (No default value) +log-bin-trust-function-creators FALSE +log-ddl-recovery ddl_recovery.log +log-disabled-statements sp +log-error +log-isam myisam.log +log-output FILE +log-queries-not-using-indexes FALSE +log-short-format FALSE +log-slave-updates FALSE +log-slow-admin-statements TRUE +log-slow-disabled-statements sp +log-slow-filter admin,filesort,filesort_on_disk,filesort_priority_queue,full_join,full_scan,query_cache,query_cache_miss,tmp_table,tmp_table_on_disk +log-slow-max-warnings 10 +log-slow-min-examined-row-limit 0 +log-slow-query FALSE +log-slow-query-file HOSTNAME-slow.log +log-slow-query-time 10 +log-slow-rate-limit 1 +log-slow-slave-statements TRUE +log-slow-verbosity +log-tc tc.log +log-tc-size 24576 +log-warnings 2 +long-query-time 10 +low-priority-updates FALSE +lower-case-file-system FALSE +lower-case-table-names 0 +master-info-file master.info +master-retry-count 100000 +master-verify-checksum FALSE +max-allowed-packet 16777216 +max-binlog-cache-size 18446744073709547520 +max-binlog-size 1073741824 +max-binlog-stmt-cache-size 18446744073709547520 +max-connect-errors 100 +max-connections 151 +max-delayed-threads 20 +max-digest-length 1024 +max-error-count 64 +max-heap-table-size 16777216 +max-join-size 18446744073709551615 +max-length-for-sort-data 1024 +max-password-errors 4294967295 +max-prepared-stmt-count 16382 +max-recursive-iterations 1000 +max-relay-log-size 1073741824 +max-rowid-filter-size 131072 +max-seeks-for-key 4294967295 +max-session-mem-used 9223372036854775807 +max-sort-length 1024 +max-sp-recursion-depth 0 +max-statement-time 0 +max-tmp-tables 32 +max-user-connections 0 +max-write-lock-count 4294967295 +memlock FALSE +metadata-locks-cache-size 1024 +metadata-locks-hash-instances 8 +min-examined-row-limit 0 +mrr-buffer-size 262144 +myisam-block-size 1024 +myisam-data-pointer-size 6 +myisam-max-sort-file-size 18446744073709551615 +myisam-mmap-size 9223372036853727232 +myisam-recover-options BACKUP,QUICK +myisam-repair-threads 1 +myisam-sort-buffer-size 134216704 +myisam-stats-method NULLS_UNEQUAL +myisam-use-mmap FALSE +mysql56-temporal-format TRUE +net-buffer-length 16384 +net-read-timeout 30 +net-retry-count 10 +net-write-timeout 60 +note-verbosity basic,explain +old FALSE +old-alter-table DEFAULT +old-mode UTF8_IS_UTF8MB3 +old-passwords FALSE +old-style-user-limits FALSE +open-files-limit 32000 +optimizer-extra-pruning-depth 8 +optimizer-max-sel-arg-weight 32000 +optimizer-max-sel-args 16000 +optimizer-prune-level 2 +optimizer-search-depth 62 +optimizer-selectivity-sampling-limit 100 +optimizer-switch index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=on,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on,rowid_filter=on,condition_pushdown_from_having=on +optimizer-trace +optimizer-trace-max-mem-size 1048576 +optimizer-use-condition-selectivity 4 +partition ON +performance-schema FALSE +performance-schema-accounts-size -1 +performance-schema-consumer-events-stages-current FALSE +performance-schema-consumer-events-stages-history FALSE +performance-schema-consumer-events-stages-history-long FALSE +performance-schema-consumer-events-statements-current FALSE +performance-schema-consumer-events-statements-history FALSE +performance-schema-consumer-events-statements-history-long FALSE +performance-schema-consumer-events-transactions-current FALSE +performance-schema-consumer-events-transactions-history FALSE +performance-schema-consumer-events-transactions-history-long FALSE +performance-schema-consumer-events-waits-current FALSE +performance-schema-consumer-events-waits-history FALSE +performance-schema-consumer-events-waits-history-long FALSE +performance-schema-consumer-global-instrumentation TRUE +performance-schema-consumer-statements-digest TRUE +performance-schema-consumer-thread-instrumentation TRUE +performance-schema-digests-size -1 +performance-schema-events-stages-history-long-size -1 +performance-schema-events-stages-history-size -1 +performance-schema-events-statements-history-long-size -1 +performance-schema-events-statements-history-size -1 +performance-schema-events-transactions-history-long-size -1 +performance-schema-events-transactions-history-size -1 +performance-schema-events-waits-history-long-size -1 +performance-schema-events-waits-history-size -1 +performance-schema-hosts-size -1 +performance-schema-instrument +performance-schema-max-cond-classes 90 +performance-schema-max-cond-instances -1 +performance-schema-max-digest-length 1024 +performance-schema-max-file-classes 80 +performance-schema-max-file-handles 32768 +performance-schema-max-file-instances -1 +performance-schema-max-index-stat -1 +performance-schema-max-memory-classes 320 +performance-schema-max-metadata-locks -1 +performance-schema-max-mutex-classes 210 +performance-schema-max-mutex-instances -1 +performance-schema-max-prepared-statements-instances -1 +performance-schema-max-program-instances -1 +performance-schema-max-rwlock-classes 50 +performance-schema-max-rwlock-instances -1 +performance-schema-max-socket-classes 10 +performance-schema-max-socket-instances -1 +performance-schema-max-sql-text-length 1024 +performance-schema-max-stage-classes 160 +performance-schema-max-statement-classes 222 +performance-schema-max-statement-stack 10 +performance-schema-max-table-handles -1 +performance-schema-max-table-instances -1 +performance-schema-max-table-lock-stat -1 +performance-schema-max-thread-classes 50 +performance-schema-max-thread-instances -1 +performance-schema-session-connect-attrs-size -1 +performance-schema-setup-actors-size -1 +performance-schema-setup-objects-size -1 +performance-schema-users-size -1 +pid-file /run/mysqld/mysqld.pid +plugin-dir /usr/lib/mysql/plugin/ +plugin-maturity gamma +port 3306 +port-open-timeout 0 +preload-buffer-size 32768 +profiling-history-size 15 +progress-report-time 5 +protocol-version 10 +proxy-protocol-networks +query-alloc-block-size 16384 +query-cache-limit 1048576 +query-cache-min-res-unit 4096 +query-cache-size 1048576 +query-cache-strip-comments FALSE +query-cache-type OFF +query-cache-wlock-invalidate FALSE +query-prealloc-size 24576 +range-alloc-block-size 4096 +read-binlog-speed-limit 0 +read-buffer-size 131072 +read-only FALSE +read-rnd-buffer-size 262144 +relay-log (No default value) +relay-log-index (No default value) +relay-log-info-file relay-log.info +relay-log-purge TRUE +relay-log-recovery FALSE +relay-log-space-limit 0 +replicate-annotate-row-events TRUE +replicate-events-marked-for-skip REPLICATE +replicate-same-server-id FALSE +report-host (No default value) +report-password (No default value) +report-port 0 +report-user (No default value) +require-secure-transport FALSE +rowid-merge-buff-size 8388608 +rpl-semi-sync-master-enabled FALSE +rpl-semi-sync-master-timeout 10000 +rpl-semi-sync-master-trace-level 32 +rpl-semi-sync-master-wait-no-slave TRUE +rpl-semi-sync-master-wait-point AFTER_COMMIT +rpl-semi-sync-slave-delay-master FALSE +rpl-semi-sync-slave-enabled FALSE +rpl-semi-sync-slave-kill-conn-timeout 5 +rpl-semi-sync-slave-trace-level 32 +safe-user-create FALSE +secure-auth TRUE +secure-file-priv (No default value) +secure-timestamp NO +sequence ON +server-id 1 +session-track-schema TRUE +session-track-state-change FALSE +session-track-system-variables autocommit,character_set_client,character_set_connection,character_set_results,time_zone +session-track-transaction-info OFF +show-slave-auth-info FALSE +silent-startup FALSE +skip-grant-tables FALSE +skip-name-resolve FALSE +skip-networking FALSE +skip-show-database FALSE +skip-slave-start FALSE +slave-compressed-protocol FALSE +slave-ddl-exec-mode IDEMPOTENT +slave-domain-parallel-threads 0 +slave-exec-mode STRICT +slave-load-tmpdir /tmp +slave-max-allowed-packet 1073741824 +slave-max-statement-time 0 +slave-net-timeout 60 +slave-parallel-max-queued 131072 +slave-parallel-mode conservative +slave-parallel-threads 0 +slave-parallel-workers 0 +slave-run-triggers-for-rbr NO +slave-skip-errors OFF +slave-sql-verify-checksum TRUE +slave-transaction-retries 10 +slave-transaction-retry-errors 1158,1159,1160,1161,1205,1213,1429,2013,12701 +slave-transaction-retry-interval 0 +slave-type-conversions +slow-launch-time 2 +slow-query-log FALSE +slow-query-log-file HOSTNAME-slow.log +socket /run/mysqld/mysqld.sock +sort-buffer-size 2097152 +sql-mode STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION +sql-safe-updates FALSE +ssl FALSE +ssl-ca (No default value) +ssl-capath (No default value) +ssl-cert (No default value) +ssl-cipher (No default value) +ssl-crl (No default value) +ssl-crlpath (No default value) +ssl-key (No default value) +stack-trace TRUE +standard-compliant-cte TRUE +stored-program-cache 256 +strict-password-validation TRUE +symbolic-links TRUE +sync-binlog 0 +sync-frm TRUE +sync-master-info 10000 +sync-relay-log 10000 +sync-relay-log-info 10000 +sysdate-is-now FALSE +system-time-zone UTC +system-versioning-alter-history ERROR +system-versioning-insert-history FALSE +table-cache 2000 +table-definition-cache 400 +table-open-cache 2000 +table-open-cache-instances 8 +tc-heuristic-recover OFF +tcp-keepalive-interval 0 +tcp-keepalive-probes 0 +tcp-keepalive-time 0 +tcp-nodelay TRUE +temp-pool FALSE +thread-cache-size 151 +thread-handling one-thread-per-connection +thread-pool-dedicated-listener FALSE +thread-pool-exact-stats FALSE +thread-pool-groups ON +thread-pool-idle-timeout 60 +thread-pool-max-threads 65536 +thread-pool-oversubscribe 3 +thread-pool-prio-kickup-timer 1000 +thread-pool-priority auto +thread-pool-queues ON +thread-pool-size 2 +thread-pool-stall-limit 500 +thread-pool-stats ON +thread-pool-waits ON +thread-stack 299008 +time-format %H:%i:%s +tls-version TLSv1.2,TLSv1.3 +tmp-disk-table-size 18446744073709551615 +tmp-memory-table-size 16777216 +tmp-table-size 16777216 +tmpdir /tmp +transaction-alloc-block-size 8192 +transaction-isolation REPEATABLE-READ +transaction-prealloc-size 4096 +transaction-read-only FALSE +unix-socket ON +updatable-views-with-limit YES +use-stat-tables PREFERABLY_FOR_QUERIES +user-variables ON +userstat FALSE +verbose TRUE +version VERSION +version-comment Debian RELEASE +version-compile-machine ARCH +version-compile-os debian-linux-gnu +version-malloc-library system +version-source-revision - +version-ssl-library SSL-VERSION +wait-timeout 28800 +wsrep-OSU-method TOI +wsrep-SR-store table +wsrep-allowlist +wsrep-auto-increment-control TRUE +wsrep-causal-reads FALSE +wsrep-certification-rules strict +wsrep-certify-nonPK TRUE +wsrep-cluster-address +wsrep-cluster-name my_wsrep_cluster +wsrep-convert-LOCK-to-trx FALSE +wsrep-data-home-dir /var/lib/mysql/ +wsrep-dbug-option +wsrep-debug NONE +wsrep-desync FALSE +wsrep-dirty-reads FALSE +wsrep-drupal-282555-workaround FALSE +wsrep-forced-binlog-format NONE +wsrep-gtid-domain-id 0 +wsrep-gtid-mode FALSE +wsrep-ignore-apply-errors 7 +wsrep-load-data-splitting FALSE +wsrep-log-conflicts FALSE +wsrep-max-ws-rows 0 +wsrep-max-ws-size 2147483647 +wsrep-mode +wsrep-mysql-replication-bundle 0 +wsrep-new-cluster FALSE +wsrep-node-address +wsrep-node-incoming-address AUTO +wsrep-node-name HOSTNAME +wsrep-notify-cmd +wsrep-on FALSE +wsrep-patch-version wsrep_26.22 +wsrep-provider none +wsrep-provider-options +wsrep-recover FALSE +wsrep-reject-queries NONE +wsrep-restart-slave FALSE +wsrep-retry-autocommit 1 +wsrep-slave-FK-checks TRUE +wsrep-slave-UK-checks FALSE +wsrep-slave-threads 1 +wsrep-sst-auth (No default value) +wsrep-sst-donor +wsrep-sst-donor-rejects-queries FALSE +wsrep-sst-method rsync +wsrep-sst-receive-address AUTO +wsrep-start-position 00000000-0000-0000-0000-000000000000:-1 +wsrep-status-file +wsrep-sync-wait 0 +wsrep-trx-fragment-size 0 +wsrep-trx-fragment-unit bytes + +To see what variables a running server is using, type +'SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES' instead of 'mysqld --verbose --help' or 'mariadbd --verbose --help'. diff --git a/debian/tests/upstream b/debian/tests/upstream new file mode 100644 index 00000000..a348e154 --- /dev/null +++ b/debian/tests/upstream @@ -0,0 +1,74 @@ +#!/bin/sh +# autopkgtest check: Build and run the upstream test suite. +# (C) 2012 Canonical Ltd. +# Author: Daniel Kessel <d.kessel@gmx.de> + +# running the mysql testsuite as described in: +# https://bugs.launchpad.net/ubuntu/+source/mysql-5.5/+bug/959683 + +echo "Running test 'testsuite'" +set -e + +MTR_SKIP_TEST_LIST=$(mktemp) +ARCH=$(dpkg --print-architecture) + +WORKDIR=$(mktemp -d) +trap 'rm -rf $WORKDIR $MTR_SKIP_TEST_LIST' 0 INT QUIT ABRT PIPE TERM +cd "$WORKDIR" + +mkdir var +mkdir tmp + +echo "using vardir: $WORKDIR/var" +echo "using tmpdir: $WORKDIR/tmp" + +echo "Setting up skip-tests-list" + +# Use the arch specific skiplists if exist, otherwise list is empty +if [ -f "/usr/share/mysql/mysql-test/unstable-tests.$ARCH" ] +then + cat "/usr/share/mysql/mysql-test/unstable-tests.$ARCH" >> "$MTR_SKIP_TEST_LIST" +fi + +# Skip tests that cannot run properly on ci.debian.net / autopkgtests.ubuntu.com +cat >> "$MTR_SKIP_TEST_LIST" << EOF +binlog.binlog_server_start_options : Requires writable /usr +main.ctype_uca : Requires writable /usr +rpl.rpl_gtid_mode : Requires starting server as root ref http://bugs.mysql.com/bug.php?id=70517 +EOF + +# Skip tests that cannot run properly on Gitlab-CI +if [ -n "$GITLAB_CI" ] +then + cat >> "$MTR_SKIP_TEST_LIST" << EOF +main.mysqld--help : For unknown reason table-cache is 4000 instead of default 421 +EOF +fi + +if [ "$ARCH" = "s390x" ] +then + echo "main.func_regexp_pcre : recursion fails on s390x https://bugs.launchpad.net/ubuntu/+source/mariadb-10.1/+bug/1723947" >> "$MTR_SKIP_TEST_LIST" +elif [ "$ARCH" = "armhf" ] || [ "$ARCH" = "i386" ] +then + echo "main.failed_auth_unixsocket : Test returns wrong exit code on armhf and i386 (but only in debci) https://jira.mariadb.org/browse/MDEV-23933" >> "$MTR_SKIP_TEST_LIST" +fi + +# Store skipped test list in artifacts so it can be viewed while debugging +# failed autopkgtest runs +cp -v "$MTR_SKIP_TEST_LIST" "$AUTOPKGTEST_ARTIFACTS" + +cd /usr/share/mysql/mysql-test +echo "starting mysql-test-tun.pl..." +export MTR_PRINT_CORE=detailed +# The $MTR_ARGUMENTS_APPEND is intentionally used to pass in extra arguments +# shellcheck disable=SC2086 +eatmydata perl -I. ./mysql-test-run.pl \ + --force --testcase-timeout=120 --suite-timeout=540 --retry=3 \ + --verbose-restart --max-save-core=1 --max-save-datadir=1 \ + --parallel=auto --skip-rpl --suite=main \ + --skip-test-list="$MTR_SKIP_TEST_LIST" \ + --vardir="$WORKDIR/var" --tmpdir="$WORKDIR/tmp" \ + --xml-report="$AUTOPKGTEST_ARTIFACTS/mysql-test-run-junit.xml" \ + $MTR_ARGUMENTS_APPEND \ + "$@" 2>&1 +echo "run: OK" |