mysqld



MYSQLD(1)                    MySQL Database System                   MYSQLD(1)




NAME

       mysqld - the MySQL server


SYNOPSIS

       mysqld [options]


DESCRIPTION

       mysqld is the MySQL server. The following discussion covers these MySQL
       server configuration topics:

       ·  Startup options that the server supports

       ·  How to set the server SQL mode

       ·  Server system variables

       ·  Server status variables


MYSQLD COMMAND-LINE OPTIONS

       When you start the mysqld server, you can specify program options using
       any of the methods described in Section 3, “Specifying Program
       Options”. The most common methods are to provide options in an option
       file or on the command line. However, in most cases it is desirable to
       make sure that the server uses the same options each time it runs. The
       best way to ensure this is to list them in an option file. See
       Section 3.2, “Using Option Files”.

       mysqld reads options from the [mysqld] and [server] groups.
       mysqld_safe reads options from the [mysqld], [server], [mysqld_safe],
       and [safe_mysqld] groups.  mysql.server reads options from the [mysqld]
       and [mysql.server] groups. An embedded MySQL server usually reads
       options from the [server], [embedded], and [xxxxx_SERVER] groups, where
       xxxxx is the name of the application into which the server is embedded.

       mysqld accepts many command-line options. For a list, execute mysqld
       --help. Before MySQL 4.1.1, --help prints the full help message. As of
       4.1.1, it prints a brief message; to see the full list, use mysqld
       --verbose --help.

       The following list shows some of the most common server options.
       Additional options are described elsewhere:

       ·  Options that affect security: See Section 3.3, “Startup Options for
          mysqld Concerning Security”.

       ·  SSL-related options: See Section 5.7.5, “SSL Command-Line Options”.

       ·  Binary log control options: See Section 8.4, “The Binary Log”.

       ·  Replication-related options: See Section 8, “Replication Startup
          Options”.

       ·  Options specific to particular storage engines: See Section 1.1,
          “MyISAM Startup Options”, Section 4.3, “BDB Startup Options”,
          Section 5, “InnoDB Startup Options”.

       You can also set the value of a server system variable by using the
       variable name as an option, as described later in this section.

       ·  --help, -?

          Display a short help message and exit. Before MySQL 4.1.1, --help
          displays the full help message. As of 4.1.1, it displays an
          abbreviated message only. Use both the --verbose and --help options
          to see the full message.

       ·  --allow-suspicious-udfs

          This option controls whether user-defined functions that have only
          an xxx symbol for the main function can be loaded. By default, the
          option is off and only UDFs that have at least one auxiliary symbol
          can be loaded. This prevents attempts at loading functions from
          shared object files other than those containing legitimate UDFs.
          This option was added in MySQL 4.0.24, and 4.1.10a. See
          Section 2.3.6, “User-Defined Function Security Precautions”.

       ·  --ansi

          Use standard SQL syntax instead of MySQL syntax. See Section 8.3,
          “Running MySQL in ANSI Mode”. For more precise control over the
          server SQL mode, use the --sql-mode option instead.

       ·  --basedir=path, -b path

          The path to the MySQL installation directory. All paths are usually
          resolved relative to this.

       ·  --big-tables

          Allow large result sets by saving all temporary sets in files. This
          option prevents most “table full” errors, but also slows down
          queries for which in-memory tables would suffice. Since MySQL
          3.23.2, the server is able to handle large result sets automatically
          by using memory for small temporary tables and switching to disk
          tables where necessary.

       ·  --bind-address=IP

          The IP address to bind to.

       ·  --bootstrap

          This option is used by the mysql_install_db script to create the
          MySQL privilege tables without having to start a full MySQL server.

       ·  --console

          Write the error log messages to stderr/stdout even if --log-error is
          specified. On Windows, mysqld does not close the console screen if
          this option is used.

       ·  --character-sets-dir=path

          The directory where character sets are installed. See Section 7.1,
          “The Character Set Used for Data and Sorting”.

       ·  --chroot=path

          Put the mysqld server in a closed environment during startup by
          using the chroot() system call. This is a recommended security
          measure as of MySQL 4.0. (MySQL 3.23 is not able to provide a
          chroot() jail that is 100% closed.) Note that use of this option
          somewhat limits LOAD DATA INFILE and SELECT ... INTO OUTFILE.

       ·  --character-set-server=charset

          Use charset as the default server character set. This option is
          available as of MySQL 4.1.3. See Section 7.1, “The Character Set
          Used for Data and Sorting”.

       ·  --core-file

          Write a core file if mysqld dies. For some systems, you must also
          specify the --core-file-size option to mysqld_safe. See
          mysqld_safe(1). Note that on some systems, such as Solaris, you do
          not get a core file if you are also using the --user option.

       ·  --collation-server=collation

          Use collation as the default server collation. This option is
          available as of MySQL 4.1.3. See Section 7.1, “The Character Set
          Used for Data and Sorting”.

       ·  --datadir=path, -h path

          The path to the data directory.

       ·  --debug[=debug_options], -# [debug_options]

          If MySQL is configured with --with-debug, you can use this option to
          get a trace file of what mysqld is doing. The debug_options string
          often is ´d:t:o,file_name’. See Section 1.2, “Creating Trace Files”.

       ·  --default-character-set=charset

          Use charset as the default character set. This option is deprecated
          in favor of --character-set-server as of MySQL 4.1.3. See
          Section 7.1, “The Character Set Used for Data and Sorting”.

       ·  --default-collation=collation

          Use collation as the default collation. This option is deprecated in
          favor of --collation-server as of MySQL 4.1.3. See Section 7.1, “The
          Character Set Used for Data and Sorting”.

       ·  --default-storage-engine=type

          This option is a synonym for --default-table-type. It is available
          as of MySQL 4.1.2.

       ·  --default-table-type=type

          Set the default table type for tables. See Chapter 14, Storage
          Engines and Table Types.

       ·  --default-time-zone=type

          Set the default server time zone. This option sets the global
          time_zone system variable. If this option is not given, the default
          time zone is the same as the system time zone (given by the value of
          the system_time_zone system variable. This option is available as of
          MySQL 4.1.3.

       ·  --delay-key-write[= OFF | ON | ALL]

          How the DELAYED KEYS option should be used. Delayed key writing
          causes key buffers not to be flushed between writes for MyISAM
          tables.  OFF disables delayed key writes.  ON enables delayed key
          writes for those tables that were created with the DELAYED KEYS
          option.  ALL delays key writes for all MyISAM tables. Available as
          of MySQL 4.0.3. See Section 5.2, “Tuning Server Parameters”. See
          Section 1.1, “MyISAM Startup Options”.

          Note: If you set this variable to ALL, you should not use MyISAM
          tables from within another program (such as from another MySQL
          server or with myisamchk) when the table is in use. Doing so leads
          to index corruption.

       ·  --delay-key-write-for-all-tables

          Old form of --delay-key-write=ALL for use prior to MySQL 4.0.3. As
          of 4.0.3, use --delay-key-write instead.

       ·  --des-key-file=file_name

          Read the default keys used by DES_ENCRYPT() and DES_DECRYPT() from
          this file.

       ·  --enable-named-pipe

          Enable support for named pipes. This option applies only on Windows
          NT, 2000, XP, and 2003 systems, and can be used only with the
          mysqld-nt and mysqld-max-nt servers that support named pipe
          connections.

       ·  --exit-info[=flags], -T [flags]

          This is a bit mask of different flags you can use for debugging the
          mysqld server. Do not use this option unless you know exactly what
          it does.

       ·  --external-locking

          Enable system locking. Note that if you use this option on a system
          on which lockd does not fully work (as on Linux), it is easy for
          mysqld to deadlock. This option previously was named
          --enable-locking.

          Note: If you use this option to enable updates to MyISAM tables from
          many MySQL processes, you have to ensure that these conditions are
          satisfied:

          ·  You should not use the query cache for queries that use tables
             that are updated by another process.

          ·  You should not use --delay-key-write=ALL or DELAY_KEY_WRITE=1 on
             any shared tables.

          The easiest way to ensure this is to always use --external-locking
          together with --delay-key-write=OFF --query-cache-size=0.

          (This is not done by default because in many setups it is useful to
          have a mixture of the above options.)

       ·  --flush

          Flush all changes to disk after each SQL statement. Normally MySQL
          does a write of all changes to disk only after each SQL statement
          and lets the operating system handle the synching to disk. See
          Section 4.2, “What to Do If MySQL Keeps Crashing”.

       ·  --init-file=file

          Read SQL statements from this file at startup. Each statement must
          be on a single line and should not include comments.

       ·  --innodb-safe-binlog

          Adds consistency guarantees between the content of InnoDB tables and
          the binary log. See Section 8.4, “The Binary Log”.

       ·  --language=lang_name, -L lang_name

          Client error messages in given language.  lang_name can be given as
          the language name or as the full pathname to the directory where the
          language files are installed. See Section 7.2, “Setting the Error
          Message Language”.

       ·  --log[=file], -l [file]

          Log connections and queries to this file. See Section 8.2, “The
          General Query Log”. If you do not specify a filename, MySQL uses
          host_name.log as the filename.

       ·  --log-bin=[file]

          The binary log file. Log all queries that change data to this file.
          Used for backup and replication. See Section 8.4, “The Binary Log”.
          It is recommended to specify a filename (see Section 8.4, “Open
          Issues in MySQL” for the reason) otherwise MySQL uses host_name-bin
          as the log file basename.

       ·  --log-bin-index[=file]

          The index file for binary log filenames. See Section 8.4, “The
          Binary Log”. If you do not specify a filename, and if you didn’t
          specify one in --log-bin, MySQL uses host_name-bin.index as the
          filename.

       ·  --log-error[=file]

          Log errors and startup messages to this file. See Section 8.1, “The
          Error Log”. If you do not specify a filename, MySQL uses
          host_name.err as the filename. If the filename has no extension, an
          extension of .err is added to the name.

       ·  --log-isam[=file]

          Log all ISAM/MyISAM changes to this file (used only when debugging
          ISAM/MyISAM).

       ·  --log-long-format

          Log some extra information to the log files (update log, binary
          update log, and slow queries log, whatever log has been activated).
          For example, username and timestamp are logged for queries. Before
          MySQL 4.1, if you are using --log-slow-queries and
          --log-long-format, queries that are not using indexes also are
          logged to the slow query log.  --log-long-format is deprecated as of
          MySQL version 4.1, when --log-short-format was introduced. (Long log
          format is the default setting since version 4.1.) Also note that
          starting with MySQL 4.1, the --log-queries-not-using-indexes option
          is available for the purpose of logging queries that do not use
          indexes to the slow query log.

       ·  --log-queries-not-using-indexes

          If you are using this option with --log-slow-queries, then queries
          that are not using indexes also are logged to the slow query log.
          This option is available as of MySQL 4.1. See Section 8.5, “The Slow
          Query Log”.

       ·  --log-short-format

          Log less information to the log files (update log, binary update
          log, and slow queries log, whatever log has been activated). For
          example, username and timestamp are not logged for queries. This
          option was introduced in MySQL 4.1.

       ·  --log-slow-admin-statements

          Log slow administrative statements such as OPTIMIZE TABLE, ANALYZE
          TABLE, and ALTER TABLE to the slow query log.

          This option was added in MySQL 4.1.13. (It is unnecessary in MySQL
          4.0 because slow administrative statements are logged by default.)

       ·  --log-slow-queries[=file]

          Log all queries that have taken more than long_query_time seconds to
          execute to this file. See Section 8.5, “The Slow Query Log”. Note
          that the default for the amount of information logged has changed in
          MySQL 4.1. See the --log-long-format and --log-short-format options
          for details.

       ·  --log-update[=file]

          Log updates to fileN where N is a unique number if not given. See
          Section 8.3, “The Update Log”. The update log is now deprecated; you
          should use the binary log instead (--log-bin). See Section 8.4, “The
          Binary Log”.

       ·  --log-warnings, -W

          Print out warnings such as Aborted connection...  to the error log.
          Enabling this option is recommended, for example, if you use
          replication (you get more information about what is happening, such
          as messages about network failures and reconnections). This option
          is enabled by default as of MySQL 4.0.19 and 4.1.2; to disable it,
          use --skip-log-warnings. As of MySQL 4.0.21 and 4.1.3, aborted
          connections are not logged to the error log unless the value is
          greater than 1. See Section 2.10, “Communication Errors and Aborted
          Connections”.

          This option was named --warnings before MySQL 4.0.

       ·  --low-priority-updates

          Table-modifying operations (INSERT, REPLACE, DELETE, UPDATE) have
          lower priority than selects. This can also be done via {INSERT |
          REPLACE | DELETE | UPDATE} LOW_PRIORITY ...  to lower the priority
          of only one query, or by SET LOW_PRIORITY_UPDATES=1 to change the
          priority in one thread. See Section 3.2, “Table Locking Issues”.

       ·  --memlock

          Lock the mysqld process in memory. This works on systems such as
          Solaris that support the mlockall() system call. This might help if
          you have a problem where the operating system is causing mysqld to
          swap on disk. Note that use of this option requires that you run the
          server as root, which is normally not a good idea for security
          reasons.

       ·  --myisam-recover [=option[,option...]]]

          Set the MyISAM storage engine recovery mode. The option value is any
          combination of the values of DEFAULT, BACKUP, FORCE, or QUICK. If
          you specify multiple values, separate them by commas. You can also
          use a value of "" to disable this option. If this option is used,
          mysqld, when it opens a MyISAM table, checks whether the table is
          marked as crashed or wasn’t closed properly. (The last option works
          only if you are running with --skip-external-locking.) If this is
          the case, mysqld runs a check on the table. If the table was
          corrupted, mysqld attempts to repair it.

          The following options affect how the repair works:
          OptionDescriptionDEFAULTThe same as not giving any option to
          --myisam-recover.BACKUPIf the data file was changed during recovery,
          save a backup of the
                                tbl_name.MYD
                                file as
                                tbl_name-datetime.BAK.FORCERun recovery even
          if we would lose more than one row from the
                                .MYD file.QUICKdo not check the rows in the
          table if there are not any delete blocks.Before a table is
          automatically repaired, MySQL adds a note about this in the error
          log. If you want to be able to recover from most problems without
          user intervention, you should use the options BACKUP,FORCE. This
          forces a repair of a table even if some rows would be deleted, but
          it keeps the old data file as a backup so that you can later examine
          what happened.

          This option is available as of MySQL 3.23.25.

       ·  --ndb-connectstring=connect_string

          When using the NDB storage engine, it is possible to point out the
          management server that distributes the cluster configuration by
          setting the connect string option. See Section 4.4.2, “The MySQL
          Cluster connectstring” for syntax.

       ·  --ndbcluster

          If the binary includes support for the NDB Cluster storage engine
          (from version 4.1.3, the MySQL-Max binaries are built with NDB
          Cluster enabled) the default disabling of support for the NDB
          Cluster storage engine can be overruled by using this option. Using
          the NDB Cluster storage engine is necessary for using MySQL Cluster.
          See Chapter 16, MySQL Cluster.

       ·  --new

          The --new option can be used to make the server behave as 4.1 in
          certain respects, easing a 4.0 to 4.1 upgrade:

          ·  Hexadecimal strings such as 0xFF are treated as strings by
             default rather than as numbers. (Works in 4.0.12 and up.)

          ·  TIMESTAMP is returned as a string with the format ´YYYY-MM-DD
             HH:MM:SS’. (Works in 4.0.13 and up.) See Chapter 11, Column
             Types.

          This option can be used to help you see how your applications behave
          in MySQL 4.1, without actually upgrading to 4.1.

       ·  --old-passwords

          Force the server to generate short (pre-4.1) password hashes for new
          passwords. This is useful for compatibility when the server must
          support older client programs. See Section 4.9, “Password Hashing in
          MySQL 4.1”.

       ·  --old-protocol, -o

          Use the 3.20 protocol for compatibility with some very old clients.

       ·  --one-thread

          Only use one thread (for debugging under Linux). This option is
          available only if the server is built with debugging enabled. See
          Section 1, “Debugging a MySQL Server”.

       ·  --open-files-limit=count

          To change the number of file descriptors available to mysqld. If
          this is not set or set to 0, then mysqld uses this value to reserve
          file descriptors to use with setrlimit(). If this value is 0 then
          mysqld reserves max_connections*5 or max_connections + table_cache*2
          (whichever is larger) number of files. You should try increasing
          this if mysqld gives you the error "Too many open files."

       ·  --pid-file=path

          The path to the process ID file used by mysqld_safe.

       ·  --port=port_num, -P port_num

          The port number to use when listening for TCP/IP connections.

       ·  --safe-mode

          Skip some optimization stages.

       ·  --safe-show-database

          With this option, the SHOW DATABASES statement displays only the
          names of those databases for which the user has some kind of
          privilege. As of MySQL 4.0.2, this option is deprecated and does not
          do anything (it is enabled by default), because there is a SHOW
          DATABASES privilege that can be used to control access to database
          names on a per-account basis. See Section 4.3, “Privileges Provided
          by MySQL”.

       ·  --safe-user-create

          If this is enabled, a user cannot create new users with the GRANT
          statement, if the user does not have the INSERT privilege for the
          mysql.user table or any column in the table.

       ·  --secure-auth

          Disallow authentication for accounts that have old (pre-4.1)
          passwords. This option is available as of MySQL 4.1.1.

       ·  --shared-memory

          Enable shared-memory connections by local clients. This option is
          available only on Windows. It was added in MySQL 4.1.0.

       ·  --shared-memory-base-name=name

          The name to use for shared-memory connections. This option is
          available only on Windows. It was added in MySQL 4.1.0.

       ·  --skip-bdb

          Disable the BDB storage engine. This saves memory and might speed up
          some operations. Do not use this option if you require BDB tables.

       ·  --skip-concurrent-insert

          Turn off the ability to select and insert at the same time on MyISAM
          tables. (This is to be used only if you think you have found a bug
          in this feature.)

       ·  --skip-delay-key-write

          Ignore the DELAY_KEY_WRITE option for all tables. As of MySQL 4.0.3,
          you should use --delay-key-write=OFF instead. See Section 5.2,
          “Tuning Server Parameters”.

       ·  --skip-external-locking

          do not use system locking. To use isamchk or myisamchk, you must
          shut down the server. See Section 4.3, “MySQL Stability”. In MySQL
          3.23, you can use CHECK TABLE and REPAIR TABLE to check and repair
          MyISAM tables. This option previously was named --skip-locking.

       ·  --skip-grant-tables

          This option causes the server not to use the privilege system at
          all. This gives everyone full access to all databases! (You can tell
          a running server to start using the grant tables again by executing
          a mysqladmin flush-privileges or mysqladmin reload command, or by
          issuing a FLUSH PRIVILEGES statement.)

       ·  --skip-host-cache

          Do not use the internal hostname cache for faster name-to-IP
          resolution. Instead, query the DNS server every time a client
          connects. See Section 5.5, “How MySQL Uses DNS”.

       ·  --skip-innodb

          Disable the InnoDB storage engine. This saves memory and disk space
          and might speed up some operations. Do not use this option if you
          require InnoDB tables.

       ·  --skip-isam

          Disable the ISAM storage engine. As of MySQL 4.1, ISAM is disabled
          by default, so this option applies only if the server was configured
          with support for ISAM. This option was added in MySQL 4.1.1.

       ·  --skip-name-resolve

          Do not resolve hostnames when checking client connections. Use only
          IP numbers. If you use this option, all Host column values in the
          grant tables must be IP numbers or localhost. See Section 5.5, “How
          MySQL Uses DNS”.

       ·  --skip-ndbcluster

          Disable the NDB Cluster storage engine. This is the default for
          binaries that were built with NDB Cluster storage engine support,
          this means that the system allocates memory and other resources for
          this storage engine only if it is explicitly enabled.

       ·  --skip-networking

          Do not listen for TCP/IP connections at all. All interaction with
          mysqld must be made via named pipes or shared memory (on Windows) or
          Unix socket files (on Unix). This option is highly recommended for
          systems where only local clients are allowed. See Section 5.5, “How
          MySQL Uses DNS”.

       ·  --skip-new

          do not use new, possibly wrong routines.

       ·  --skip-symlink

          This is the old form of --skip-symbolic-links, for use before MySQL
          4.0.13.

       ·  --standalone

          Windows-NT based systems only, instructs MySQL server to not run as
          a service.

       ·  --symbolic-links, --skip-symbolic-links

          Enable or disable symbolic link support. This option has different
          effects on Windows and Unix:

          ·  On Windows, enabling symbolic links allows you to establish a
             symbolic link to a database directory by creating a directory.sym
             file that contains the path to the real directory. See
             Section 6.1.3, “Using Symbolic Links for Databases on Windows”.

          ·  On Unix, enabling symbolic links means that you can link a MyISAM
             index file or data file to another directory with the INDEX
             DIRECTORY or DATA DIRECTORY options of the CREATE TABLE
             statement. If you delete or rename the table, the files that its
             symbolic links point to also are deleted or renamed. See
             Section 1.5, “CREATE TABLE Syntax”.

          This option was added in MySQL 4.0.13.

       ·  --skip-safemalloc

          If MySQL is configured with --with-debug=full, all MySQL programs
          check for memory overruns during each memory allocation and memory
          freeing operation. This checking is very slow, so for the server you
          can avoid it when you do not need it by using the --skip-safemalloc
          option.

       ·  --skip-show-database

          With this option, the SHOW DATABASES statement is allowed only to
          users who have the SHOW DATABASES privilege, and the statement
          displays all database names. Without this option, SHOW DATABASES is
          allowed to all users, but displays each database name only if the
          user has the SHOW DATABASES privilege or some privilege for the
          database. Note that any global privilege is a privilege for the
          database.

       ·  --skip-stack-trace

          do not write stack traces. This option is useful when you are
          running mysqld under a debugger. On some systems, you also must use
          this option to get a core file. See Section 1, “Debugging a MySQL
          Server”.

       ·  --skip-thread-priority

          Disable using thread priorities for faster response time.

       ·  --socket=path

          On Unix, this option specifies the Unix socket file to use for local
          connections. The default value is /tmp/mysql.sock. On Windows, the
          option specifies the pipe name to use for local connections that use
          a named pipe. The default value is MySQL.

       ·  --sql-mode=value[,value[,value...]]

          Set the SQL mode for MySQL. See the section called “THE SERVER SQL
          MODE”. This option was added in 3.23.41.

       ·  --temp-pool

          This option causes most temporary files created by the server to use
          a small set of names, rather than a unique name for each new file.
          This works around a problem in the Linux kernel dealing with
          creating many new files with different names. With the old behavior,
          Linux seems to “leak” memory, because it is being allocated to the
          directory entry cache rather than to the disk cache.

       ·  --transaction-isolation=level

          Sets the default transaction isolation level, which can be
          READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, or SERIALIZABLE.
          See Section 4.6, “SET TRANSACTION Syntax”.

       ·  --tmpdir=path, -t path

          The path of the directory to use for creating temporary files. It
          might be useful if your default /tmp directory resides on a
          partition that is too small to hold temporary tables. Starting from
          MySQL 4.1.0, this option accepts several paths that are used in
          round-robin fashion. Paths should be separated by colon characters
          (‘:’) on Unix and semicolon characters (‘;’) on Windows, NetWare,
          and OS/2. If the MySQL server is acting as a replication slave, you
          should not set --tmpdir to point to a directory on a memory-based
          filesystem or to a directory that is cleared when the server host
          restarts. A replication slave needs some of its temporary files to
          survive a machine restart so that it can replicate temporary tables
          or LOAD DATA INFILE operations. If files in the temporary file
          directory are lost when the server restarts, replication fails.

       ·  --user={user_name | user_id}, -u {user_name | user_id}

          Run the mysqld server as the user having the name user_name or the
          numeric user ID user_id. (“User” in this context refers to a system
          login account, not a MySQL user listed in the grant tables.)

          This option is mandatory when starting mysqld as root. The server
          changes its user ID during its startup sequence, causing it to run
          as that particular user rather than as root. See Section 3.1,
          “General Security Guidelines”.

          Starting from MySQL 3.23.56 and 4.0.12: To avoid a possible security
          hole where a user adds a --user=root option to a my.cnf file (thus
          causing the server to run as root), mysqld uses only the first
          --user option specified and produces a warning if there are multiple
          --user options. Options in /etc/my.cnf and $MYSQL_HOME/my.cnf are
          processed before command-line options, so it is recommended that you
          put a --user option in /etc/my.cnf and specify a value other than
          root. The option in /etc/my.cnf is found before any other --user
          options, which ensures that the server runs as a user other than
          root, and that a warning results if any other --user option is
          found.

       ·  --version, -V

          Display version information and exit.

       As of MySQL 4.0, you can assign a value to a server system variable by
       using an option of the form --var_name=value. For example,
       --key_buffer_size=32M sets the key_buffer_size variable to a value of
       32MB.

       Note that when setting a variable to a value, MySQL might automatically
       correct it to stay within a given range, or adjust the value to the
       closest allowable value if only certain values are allowed.

       It is also possible to set variables by using
       --set-variable=var_name=value or --var_name=value syntax. However, this
       syntax is deprecated as of MySQL 4.0.

       You can find a full description for all variables in the section called
       “SERVER SYSTEM VARIABLES”. The section on tuning server parameters
       includes information on how to optimize them. See Section 5.2, “Tuning
       Server Parameters”.

       You can change the values of most system variables for a running server
       with the SET statement. See Section 5.3, “SET Syntax”.

       If you want to restrict the maximum value that a startup option can be
       set to with SET, you can define this by using the --maximum-var_name
       command-line option.


THE SERVER SQL MODE

       The MySQL server can operate in different SQL modes, and (as of MySQL
       4.1) can apply these modes differentially for different clients. This
       allows an application to tailor server operation to its own
       requirements.

       Modes define what SQL syntax MySQL should support and what kind of data
       validation checks it should perform. This makes it easier to use MySQL
       in different environments and to use MySQL together with other database
       servers.

       You can set the default SQL mode by starting mysqld with the
       --sql-mode="modes" option. The value also can be empty (--sql-mode="")
       if you want to reset it.

       Beginning with MySQL 4.1, you can also change the SQL mode after
       startup time by setting the sql_mode variable with a SET
       [SESSION|GLOBAL] sql_mode=’modes’ statement. Setting the GLOBAL
       variable requires the SUPER privilege and affects the operation of all
       clients that connect from that time on. Setting the SESSION variable
       affects only the current client. Any client can change its session
       sql_mode value.

       modes is a list of different modes separated by comma (‘,’) characters.
       You can retrieve the current mode by issuing a SELECT @@sql_mode
       statement. The default value is empty (no modes set).

       The most important sql_mode value is ANSI, which changes syntax and
       behavior to be more conformant to standard SQL. This mode is available
       beginning in MySQL 4.1.1

       The following list describes all the supported modes:

       ·  ANSI_QUOTES

          Treat ‘"’ as an identifier quote character (like the ‘‘’ quote
          character) and not as a string quote character. You can still use
          ‘‘’ to quote identifiers in ANSI mode. With ANSI_QUOTES enabled, you
          cannot use double quotes to quote a literal string, because it is
          interpreted as an identifier. (New in MySQL 4.0.0)

       ·  IGNORE_SPACE

          Allow spaces between a function name and the ‘(’ character. This
          forces all function names to be treated as reserved words. As a
          result, if you want to access any database, table, or column name
          that is a reserved word, you must quote it. For example, because
          there is a USER() function, the name of the user table in the mysql
          database and the User column in that table become reserved, so you
          must quote them:

          SELECT "User" FROM mysql."user";
          (New in MySQL 4.0.0)

       ·  NO_AUTO_VALUE_ON_ZERO

          NO_AUTO_VALUE_ON_ZERO affects handling of AUTO_INCREMENT columns.
          Normally, you generate the next sequence number for the column by
          inserting either NULL or 0 into it.  NO_AUTO_VALUE_ON_ZERO
          suppresses this behavior for 0 so that only NULL generates the next
          sequence number. (New in MySQL 4.1.1)

          This mode can be useful if 0 has been stored in a table’s
          AUTO_INCREMENT column. (This is not a recommended practice, by the
          way.) For example, if you dump the table with mysqldump and then
          reload it, MySQL normally generates new sequence numbers when it
          encounters the 0 values, resulting in a table with different
          contents than the one that was dumped. Enabling
          NO_AUTO_VALUE_ON_ZERO before reloading the dump file solves this
          problem. As of MySQL 4.1.1, mysqldump automatically includes a
          statement in the dump output to enable NO_AUTO_VALUE_ON_ZERO.

       ·  NO_DIR_IN_CREATE

          When creating a table, ignore all INDEX DIRECTORY and DATA DIRECTORY
          directives. This option is useful on slave replication servers. (New
          in MySQL 4.0.15)

       ·  NO_FIELD_OPTIONS

          do not print MySQL-specific column options in the output of SHOW
          CREATE TABLE. This mode is used by mysqldump in portability mode.
          (New in MySQL 4.1.1)

       ·  NO_KEY_OPTIONS

          do not print MySQL-specific index options in the output of SHOW
          CREATE TABLE. This mode is used by mysqldump in portability mode.
          (New in MySQL 4.1.1)

       ·  NO_TABLE_OPTIONS

          do not print MySQL-specific table options (such as ENGINE) in the
          output of SHOW CREATE TABLE. This mode is used by mysqldump in
          portability mode. (New in MySQL 4.1.1)

       ·  NO_UNSIGNED_SUBTRACTION

          In subtraction operations, do not mark the result as UNSIGNED if one
          of the operands is unsigned. Note that this makes UNSIGNED BIGINT
          not 100% usable in all contexts. See Section 8, “Cast Functions and
          Operators”. (New in MySQL 4.0.2)

       ·  ONLY_FULL_GROUP_BY

          Do not allow queries that in the GROUP BY part refer to a not
          selected column. (New in MySQL 4.0.0)

       ·  PIPES_AS_CONCAT

          Treat || as a string concatenation operator (same as CONCAT())
          rather than as a synonym for OR. (New in MySQL 4.0.0)

       ·  REAL_AS_FLOAT

          Treat REAL as a synonym for FLOAT rather than as a synonym for
          DOUBLE. (New in MySQL 4.0.0)

       The following special modes are provided as shorthand for combinations
       of mode values from the preceding list. All are available as of MySQL
       4.1.1.

       The descriptions include all mode values that are available in the most
       recent version of MySQL. For older versions, a combination mode does
       not include individual mode values that are not available except in
       newer versions.

       ·  ANSI

          Equivalent to REAL_AS_FLOAT, PIPES_AS_CONCAT, ANSI_QUOTES,
          IGNORE_SPACE. Before MySQL 4.1.11, ANSI also includes
          ONLY_FULL_GROUP_BY. See Section 8.3, “Running MySQL in ANSI Mode”.

       ·  DB2

          Equivalent to PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE,
          NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.

       ·  MAXDB

          Equivalent to PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE,
          NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS,
          NO_AUTO_CREATE_USER.

       ·  MSSQL

          Equivalent to PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE,
          NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.

       ·  MYSQL323

          Equivalent to NO_FIELD_OPTIONS, HIGH_NOT_PRECEDENCE.

       ·  MYSQL40

          Equivalent to NO_FIELD_OPTIONS, HIGH_NOT_PRECEDENCE.

       ·  ORACLE

          Equivalent to PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE,
          NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS,
          NO_AUTO_CREATE_USER.

       ·  POSTGRESQL

          Equivalent to PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE,
          NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.


SERVER SYSTEM VARIABLES

       The server maintains many system variables that indicate how it is
       configured. All of them have default values. They can be set at server
       startup using options on the command line or in option files. Most of
       them can be set at runtime using the SET statement.

       Beginning with MySQL 4.0.3, the mysqld server maintains two kinds of
       variables. Global variables affect the overall operation of the server.
       Session variables affect its operation for individual client
       connections.

       When the server starts, it initializes all global variables to their
       default values. These defaults can be changed by options specified in
       option files or on the command line. After the server starts, those
       global variables that are dynamic can be changed by connecting to the
       server and issuing a SET GLOBAL var_name statement. To change a global
       variable, you must have the SUPER privilege.

       The server also maintains a set of session variables for each client
       that connects. The client’s session variables are initialized at
       connect time using the current values of the corresponding global
       variables. For those session variables that are dynamic, the client can
       change them by issuing a SET SESSION var_name statement. Setting a
       session variable requires no special privilege, but a client can change
       only its own session variables, not those of any other client.

       A change to a global variable is visible to any client that accesses
       that global variable. However, it affects the corresponding session
       variable that is initialized from the global variable only for clients
       that connect after the change. It does not affect the session variable
       for any client that is currently connected (not even that of the client
       that issues the SET GLOBAL statement).

       When setting a variable using a startup option, variable values can be
       given with a suffix of K, M, or G to indicate kilobytes, megabytes, or
       gigabytes, respectively. For example, the following command starts the
       server with a key buffer size of 16 megabytes:

       mysqld --key_buffer_size=16M

       Before MySQL 4.0, use this syntax instead:

       mysqld --set-variable=key_buffer_size=16M

       The lettercase of suffix letters does not matter; 16M and 16m are
       equivalent.

       At runtime, use the SET statement to set system variables. In this
       context, suffix letters cannot be used, but the value can take the form
       of an expression:

       mysql> SET sort_buffer_size = 10 * 1024 * 1024;

       To specify explicitly whether to set the global or session variable,
       use the GLOBAL or SESSION options:

       mysql> SET GLOBAL sort_buffer_size = 10 * 1024 * 1024;
       mysql> SET SESSION sort_buffer_size = 10 * 1024 * 1024;

       Without either option, the statement sets the session variable.

       The variables that can be set at runtime are listed in the section
       called “Dynamic System Variables”.

       If you want to restrict the maximum value to which a system variable
       can be set with the SET statement, you can specify this maximum by
       using an option of the form --maximum-var_name at server startup. For
       example, to prevent the value of query_cache_size from being increased
       to more than 32MB at runtime, use the option
       --maximum-query_cache_size=32M. This feature is available as of MySQL
       4.0.2.

       You can view system variables and their values by using the SHOW
       VARIABLES statement. See Section 4, “System Variables” for more
       information.

       mysql> SHOW VARIABLES;
       +---------------------------------+---------------------------------------------------------+
       | Variable_name                   | Value                                                   |
       +---------------------------------+---------------------------------------------------------+
       | back_log                        | 50                                                      |
       | basedir                         | /usr/local/mysql                                        |
       | bdb_cache_size                  | 8388600                                                 |
       | bdb_home                        | /usr/local/mysql                                        |
       | bdb_log_buffer_size             | 32768                                                   |
       | bdb_logdir                      |                                                         |
       | bdb_max_lock                    | 10000                                                   |
       | bdb_shared_data                 | OFF                                                     |
       | bdb_tmpdir                      | /tmp/                                                   |
       | binlog_cache_size               | 32768                                                   |
       | bulk_insert_buffer_size         | 8388608                                                 |
       | character_set_client            | latin1                                                  |
       | character_set_connection        | latin1                                                  |
       | character_set_database          | latin1                                                  |
       | character_set_results           | latin1                                                  |
       | character_set_server            | latin1                                                  |
       | character_set_system            | utf8                                                    |
       | character_sets_dir              | /usr/local/mysql/share/charsets/                        |
       | collation_connection            | latin1_swedish_ci                                       |
       | collation_database              | latin1_swedish_ci                                       |
       | collation_server                | latin1_swedish_ci                                       |
       | concurrent_insert               | ON                                                      |
       | connect_timeout                 | 5                                                       |
       | datadir                         | /usr/local/mysql/data/                                          |
       | date_format                     | %Y-%m-%d                                                |
       | datetime_format                 | %Y-%m-%d %H:%i:%s                                       |
       | default_week_format             | 0                                                       |
       | delay_key_write                 | ON                                                      |
       | delayed_insert_limit            | 100                                                     |
       | delayed_insert_timeout          | 300                                                     |
       | delayed_queue_size              | 1000                                                    |
       | expire_logs_days                | 0                                                       |
       | flush                           | OFF                                                     |
       | flush_time                      | 1800                                                    |
       | ft_boolean_syntax               | + -><()~*:""&|                                          |
       | ft_max_word_len                 | 84                                                      |
       | ft_min_word_len                 | 4                                                       |
       | ft_query_expansion_limit        | 20                                                      |
       | ft_stopword_file                | (built-in)                                              |
       | group_concat_max_len            | 1024                                                    |
       | have_archive                    | NO                                                      |
       | have_bdb                        | YES                                                     |
       | have_blackhole_engine           | NO                                                      |
       | have_compress                   | YES                                                     |
       | have_crypt                      | NO                                                      |
       | have_csv                        | NO                                                      |
       | have_example_engine             | NO                                                      |
       | have_geometry                   | YES                                                     |
       | have_innodb                     | YES                                                     |
       | have_isam                       | NO                                                      |
       | have_ndbcluster                 | NO                                                      |
       | have_openssl                    | NO                                                      |
       | have_query_cache                | YES                                                     |
       | have_raid                       | NO                                                      |
       | have_rtree_keys                 | YES                                                     |
       | have_symlink                    | YES                                                     |
       | init_connect                    |                                                         |
       | init_file                       |                                                         |
       | init_slave                      |                                                         |
       | innodb_additional_mem_pool_size | 1048576                                                 |
       | innodb_autoextend_increment     | 8                                                       |
       | innodb_buffer_pool_awe_mem_mb   | 0                                                       |
       | innodb_buffer_pool_size         | 8388608                                                 |
       | innodb_data_file_path           | ibdata1:10M:autoextend                                  |
       | innodb_data_home_dir            |                                                         |
       | innodb_fast_shutdown            | ON                                                      |
       | innodb_file_io_threads          | 4                                                       |
       | innodb_file_per_table           | OFF                                                     |
       | innodb_flush_log_at_trx_commit  | 1                                                       |
       | innodb_flush_method             |                                                         |
       | innodb_force_recovery           | 0                                                       |
       | innodb_lock_wait_timeout        | 50                                                      |
       | innodb_locks_unsafe_for_binlog  | OFF                                                     |
       | innodb_log_arch_dir             |                                                         |
       | innodb_log_archive              | OFF                                                     |
       | innodb_log_buffer_size          | 1048576                                                 |
       | innodb_log_file_size            | 5242880                                                 |
       | innodb_log_files_in_group       | 2                                                       |
       | innodb_log_group_home_dir       | ./                                                      |
       | innodb_max_dirty_pages_pct      | 90                                                      |
       | innodb_max_purge_lag            | 0                                                       |
       | innodb_mirrored_log_groups      | 1                                                       |
       | innodb_open_files               | 300                                                     |
       | innodb_table_locks              | ON                                                      |
       | innodb_thread_concurrency       | 8                                                       |
       | interactive_timeout             | 28800                                                   |
       | join_buffer_size                | 131072                                                  |
       | key_buffer_size                 | 16777216                                                |
       | key_cache_age_threshold         | 300                                                     |
       | key_cache_block_size            | 1024                                                    |
       | key_cache_division_limit        | 100                                                     |
       | language                        | /usr/local/mysql/share/english/                         |
       | large_files_support             | ON                                                      |
       | license                         | GPL                                                     |
       | local_infile                    | ON                                                      |
       | log                             | ON                                                      |
       | log_bin                         | ON                                                      |
       | log_error                       | ./megalon.err                                           |
       | log_slave_updates               | OFF                                                     |
       | log_slow_queries                | OFF                                                     |
       | log_update                      | OFF                                                     |
       | log_warnings                    | 1                                                       |
       | long_query_time                 | 10                                                      |
       | low_priority_updates            | OFF                                                     |
       | lower_case_file_system          | OFF                                                     |
       | lower_case_table_names          | 1                                                       |
       | max_allowed_packet              | 1048576                                                 |
       | max_binlog_cache_size           | 4294967295                                              |
       | max_binlog_size                 | 1073741824                                              |
       | max_connect_errors              | 10                                                      |
       | max_connections                 | 100                                                     |
       | max_delayed_threads             | 20                                                      |
       | max_error_count                 | 64                                                      |
       | max_heap_table_size             | 16777216                                                |
       | max_insert_delayed_threads      | 20                                                      |
       | max_join_size                   | 4294967295                                              |
       | max_length_for_sort_data        | 1024                                                    |
       | max_relay_log_size              | 0                                                       |
       | max_seeks_for_key               | 4294967295                                              |
       | max_sort_length                 | 1024                                                    |
       | max_tmp_tables                  | 32                                                      |
       | max_user_connections            | 0                                                       |
       | max_write_lock_count            | 4294967295                                              |
       | myisam_data_pointer_size        | 4                                                       |
       | myisam_max_extra_sort_file_size | 2147483648                                              |
       | myisam_max_sort_file_size       | 2147483647                                              |
       | myisam_recover_options          | OFF                                                     |
       | myisam_repair_threads           | 1                                                       |
       | myisam_sort_buffer_size         | 8388608                                                 |
       | named_pipe                      | OFF                                                     |
       | net_buffer_length               | 16384                                                   |
       | net_read_timeout                | 30                                                      |
       | net_retry_count                 | 10                                                      |
       | net_write_timeout               | 60                                                      |
       | new                             | OFF                                                     |
       | old_passwords                   | OFF                                                     |
       | open_files_limit                | 510                                                     |
       | pid_file                        | /usr/local/mysql/megalon.pid                            |
       | port                            | 3306                                                    |
       | preload_buffer_size             | 32768                                                   |
       | protocol_version                | 10                                                      |
       | query_alloc_block_size          | 8192                                                    |
       | query_cache_limit               | 1048576                                                 |
       | query_cache_min_res_unit        | 4096                                                    |
       | query_cache_size                | 0                                                       |
       | query_cache_type                | ON                                                      |
       | query_cache_wlock_invalidate    | OFF                                                     |
       | query_prealloc_size             | 8192                                                    |
       | range_alloc_block_size          | 2048                                                    |
       | read_buffer_size                | 131072                                                  |
       | read_only                       | OFF                                                     |
       | read_rnd_buffer_size            | 262144                                                  |
       | relay_log_purge                 | ON                                                      |
       | relay_log_space_limit           | 0                                                       |
       | rpl_recovery_rank               | 0                                                       |
       | secure_auth                     | OFF                                                     |
       | shared_memory                   | OFF                                                     |
       | shared_memory_base_name         | MYSQL                                                   |
       | server_id                       | 1                                                       |
       | skip_external_locking           | ON                                                      |
       | skip_networking                 | OFF                                                     |
       | skip_show_database              | OFF                                                     |
       | slave_net_timeout               | 3600                                                    |
       | slave_transaction_retries       | 0                                                       |
       | slow_launch_time                | 2                                                       |
       | sort_buffer_size                | 2097144                                                 |
       | sql_mode                        |                                                         |
       | storage_engine                  | MyISAM                                                  |
       | sql_notes                       | ON                                                      |
       | sql_warnings                    | ON                                                      |
       | sync_binlog                     | 0                                                       |
       | sync_replication                | 0                                                       |
       | sync_replication_slave_id       | 0                                                       |
       | sync_replication_timeout        | 0                                                       |
       | sync_frm                        | ON                                                      |
       | system_time_zone                | E. Australia Standard Time                              |
       | table_cache                     | 64                                                      |
       | table_type                      | MyISAM                                                  |
       | thread_cache_size               | 0                                                       |
       | thread_stack                    | 196608                                                  |
       | time_format                     | %H:%i:%s                                                |
       | time_zone                       | SYSTEM                                                  |
       | tmp_table_size                  | 33554432                                                |
       | tmpdir                          |                                                         |
       | transaction_alloc_block_size    | 8192                                                    |
       | transaction_prealloc_size       | 4096                                                    |
       | tx_isolation                    | REPEATABLE-READ                                         |
       | version                         | 4.1.13-max-log                                          |
       | version_bdb                     | Sleepycat Software: Berkeley DB 4.1.24: (July 28, 2005) |
       | version_comment                 | MySQL Community Edition - Max (GPL)                     |
       | version_compile_machine         | i686                                                    |
       | version_compile_os              | pc-linux-gnu                                            |
       | wait_timeout                    | 28800                                                   |
       +---------------------------------+---------------------------------------------------------+
       193 rows in set (0.00 sec)

       Most system variables are described here. Variables with no version
       indicated have been present since at least MySQL 3.22.  InnoDB system
       variables are listed at Section 5, “InnoDB Startup Options”.

       Values for buffer sizes, lengths, and stack sizes are given in bytes
       unless otherwise specified.

       Information on tuning these variables can be found in Section 5.2,
       “Tuning Server Parameters”.

       ·  ansi_mode

          This is ON if mysqld was started with --ansi. See Section 8.3,
          “Running MySQL in ANSI Mode”. This variable was added in MySQL
          3.23.6 and removed in 3.23.41. See the description for sql_mode.

       ·  back_log

          The number of outstanding connection requests MySQL can have. This
          comes into play when the main MySQL thread gets very many connection
          requests in a very short time. It then takes some time (although
          very little) for the main thread to check the connection and start a
          new thread. The back_log value indicates how many requests can be
          stacked during this short time before MySQL momentarily stops
          answering new requests. You need to increase this only if you expect
          a large number of connections in a short period of time.

          In other words, this value is the size of the listen queue for
          incoming TCP/IP connections. Your operating system has its own limit
          on the size of this queue. The manual page for the Unix listen()
          system call should have more details. Check your OS documentation
          for the maximum value for this variable. Attempting to set back_log
          higher than your operating system limit is ineffective.

       ·  basedir

          The MySQL installation base directory. This variable can be set with
          the --basedir option.

       ·  bdb_cache_size

          The size of the buffer that is allocated for caching indexes and
          rows for BDB tables. If you do not use BDB tables, you should start
          mysqld with --skip-bdb to not waste memory for this cache. This
          variable was added in MySQL 3.23.14.

       ·  bdb_home

          The base directory for BDB tables. This should be assigned the same
          value as the datadir variable. This variable was added in MySQL
          3.23.14.

       ·  bdb_log_buffer_size

          The size of the buffer that is allocated for caching indexes and
          rows for BDB tables. If you do not use BDB tables, you should set
          this to 0 or start mysqld with --skip-bdb in order not to waste
          memory for this cache. This variable was added in MySQL 3.23.31.

       ·  bdb_logdir

          The directory where the BDB storage engine writes its log files.
          This variable can be set with the --bdb-logdir option. This variable
          was added in MySQL 3.23.14.

       ·  bdb_max_lock

          The maximum number of locks you can have active on a BDB table
          (10,000 by default). You should increase this if errors such as the
          following occur when you perform long transactions or when mysqld
          has to examine many rows to calculate a query:

          bdb: Lock table is out of available locks
          Got error 12 from ...
          This variable was added in MySQL 3.23.29.

       ·  bdb_shared_data

          This is ON if you are using --bdb-shared-data. This variable was
          added in MySQL 3.23.29.

       ·  bdb_tmpdir

          The value of the --bdb-tmpdir option. This variable was added in
          MySQL 3.23.14.

       ·  bdb_version

          See the description for version_bdb.

       ·  binlog_cache_size

          The size of the cache to hold the SQL statements for the binary log
          during a transaction. A binary log cache is allocated for each
          client if the server supports any transactional storage engines and,
          starting from MySQL 4.1.2, if the server has binary log enabled
          (--log-bin option). If you often use large, multiple-statement
          transactions, you can increase this to get more performance. The
          Binlog_cache_use and Binlog_cache_disk_use status variables can be
          useful for tuning the size of this variable. This variable was added
          in MySQL 3.23.29. See Section 8.4, “The Binary Log”.

       ·  bulk_insert_buffer_size

          MyISAM uses a special tree-like cache to make bulk inserts faster
          for INSERT ... SELECT, INSERT ... VALUES (...), (...), ..., and LOAD
          DATA INFILE. This variable limits the size of the cache tree in
          bytes per thread. Setting it to 0 disables this optimization.  Note:
          This cache is used only when adding data to a non-empty table. The
          default value is 8MB. This variable was added in MySQL 4.0.3. This
          variable previously was named myisam_bulk_insert_tree_size.

       ·  character_set

          The default character set. This variable was added in MySQL 3.23.3,
          then removed in MySQL 4.1.1 and replaced by the various
          character_set_xxx variables.

       ·  character_set_client

          The character set for statements that arrive from the client. This
          variable was added in MySQL 4.1.1.

       ·  character_set_connection

          The character set used for literals that do not have a character set
          introducer and for number-to-string conversion. This variable was
          added in MySQL 4.1.1.

       ·  character_set_database

          The character set used by the default database. The server sets this
          variable whenever the default database changes. If there is no
          default database, the variable has the same value as
          character_set_server. This variable was added in MySQL 4.1.1.

       ·  character_set_results

          The character set used for returning query results to the client.
          This variable was added in MySQL 4.1.1.

       ·  character_set_server

          The server default character set. This variable was added in MySQL
          4.1.1.

       ·  character_set_system

          The character set used by the server for storing identifiers. The
          value is always utf8. This variable was added in MySQL 4.1.1.

       ·  character_sets

          The supported character sets. This variable was added in MySQL
          3.23.15 and removed in MySQL 4.1.1. (Use SHOW CHARACTER SET for a
          list of character sets.)

       ·  character_sets_dir

          The directory where character sets are installed. This variable was
          added in MySQL 4.1.2.

       ·  collation_connection

          The collation of the connection character set. This variable was
          added in MySQL 4.1.1.

       ·  collation_database

          The collation used by the default database. The server sets this
          variable whenever the default database changes. If there is no
          default database, the variable has the same value as
          collation_server. This variable was added in MySQL 4.1.1.

       ·  collation_server

          The server default collation. This variable was added in MySQL
          4.1.1.

       ·  concurrent_insert

          If ON (the default), MySQL allows INSERT and SELECT statements to
          run concurrently for MyISAM tables that have no free blocks in the
          middle. You can turn this option off by starting mysqld with --safe
          or --skip-new. This variable was added in MySQL 3.23.7.

       ·  connect_timeout

          The number of seconds the mysqld server waits for a connect packet
          before responding with Bad handshake.

       ·  convert_character_set

          The current character set mapping that was set by SET CHARACTER SET.
          This variable was removed in MySQL 4.1.

       ·  datadir

          The MySQL data directory. This variable can be set with the
          --datadir option.

       ·  date_format

          This variable is not implemented.

       ·  datetime_format

          This variable is not implemented.

       ·  default_week_format

          The default mode value to use for the WEEK() function. This variable
          is available as of MySQL 4.0.14.

       ·  delay_key_write

          This option applies only to MyISAM tables. It can have one of the
          following values to affect handling of the DELAY_KEY_WRITE table
          option that can be used in CREATE TABLE statements.
          OptionDescriptionOFFDELAY_KEY_WRITE is ignored.ONMySQL honors the
          DELAY_KEY_WRITE option for
                                CREATE TABLE. This is the
                                default value.ALLAll new opened tables are
          treated as if they were created with the
                                DELAY_KEY_WRITE option enabled.If
          DELAY_KEY_WRITE is enabled, this means that the key buffer for
          tables with this option are not flushed on every index update, but
          only when a table is closed. This speeds up writes on keys a lot,
          but if you use this feature, you should add automatic checking of
          all MyISAM tables by starting the server with the --myisam-recover
          option (for example, --myisam-recover=BACKUP,FORCE). See the section
          called “\FBMYSQLD\FR COMMAND-LINE OPTIONS” and Section 1.1, “MyISAM
          Startup Options”.

          Note that --external-locking does not offer any protection against
          index corruption for tables that use delayed key writes.

          This variable was added in MySQL 3.23.8.

       ·  delayed_insert_limit

          After inserting delayed_insert_limit delayed rows, the INSERT
          DELAYED handler thread checks whether there are any SELECT
          statements pending. If so, it allows them to execute before
          continuing to insert delayed rows.

       ·  delayed_insert_timeout

          How long an INSERT DELAYED handler thread should wait for INSERT
          statements before terminating.

       ·  delayed_queue_size

          This is a per-table limit on the number of rows to queue when
          handling INSERT DELAYED statements. If the queue becomes full, any
          client that issues an INSERT DELAYED statement waits until there is
          room in the queue again.

       ·  expire_logs_days

          The number of days for automatic binary log removal. The default is
          0, which means “no automatic removal”. Possible removals happen at
          startup and at binary log rotation. This variable was added in MySQL
          4.1.0.

       ·  flush

          This is ON if you have started mysqld with the --flush option. This
          variable was added in MySQL 3.22.9.

       ·  flush_time

          If this is set to a non-zero value, all tables are closed every
          flush_time seconds to free up resources and sync unflushed data to
          disk. We recommend this option only on Windows 9x or Me, or on
          systems with minimal resources available. This variable was added in
          MySQL 3.22.18.

       ·  ft_boolean_syntax

          The list of operators supported by boolean full-text searches
          performed using IN BOOLEAN MODE. See Section 7.1, “Boolean Full-Text
          Searches”. This variable was added as a read-only variable in MySQL
          4.0.1. It can be modified as of MySQL 4.1.2.

          The default variable value is ´+ -><()~*:""&|’. The rules for
          changing the value are as follows:

          ·  Operator function is determined by position within the string.

          ·  The replacement value must be 14 characters.

          ·  Each character must be an ASCII non-alphanumeric character.

          ·  Either the first or second character must be a space.

          ·  No duplicates are allowed except the phrase quoting operators in
             positions 11 and 12. These two characters are not required to be
             the same, but they are the only two that may be.

          ·  Positions 10, 13, and 14 (which by default are set to ‘:’, ‘&’,
             and ‘|’) are reserved for future extensions.

       ·  ft_max_word_len

          The maximum length of the word to be included in a FULLTEXT index.
          This variable was added in MySQL 4.0.0.

          Note: FULLTEXT indexes must be rebuilt after changing this variable.
          Use REPAIR TABLE tbl_name QUICK.

       ·  ft_min_word_len

          The minimum length of the word to be included in a FULLTEXT index.
          This variable was added in MySQL 4.0.0.

          Note: FULLTEXT indexes must be rebuilt after changing this variable.
          Use REPAIR TABLE tbl_name QUICK.

       ·  ft_query_expansion_limit

          The number of top matches to use for full-text searches performed
          using WITH QUERY EXPANSION. This variable was added in MySQL 4.1.1.

       ·  ft_stopword_file

          The file from which to read the list of stopwords for full-text
          searches. All the words from the file are used; comments are not
          honored. By default, a built-in list of stopwords is used (as
          defined in the myisam/ft_static.c file). Setting this variable to
          the empty string (’’) disables stopword filtering. This variable was
          added in MySQL 4.0.10.

          Note: FULLTEXT indexes must be rebuilt after changing this variable
          or the contents of the stopword file. Use REPAIR TABLE tbl_name
          QUICK.

       ·  group_concat_max_len

          The maximum allowed result length for the GROUP_CONCAT() function.
          This variable was added in MySQL 4.1.0.

       ·  have_archive

          YES if mysqld supports ARCHIVE tables, NO if not. This variable was
          added in MySQL 4.1.3.

       ·  have_bdb

          YES if mysqld supports BDB tables.  DISABLED if --skip-bdb is used.
          This variable was added in MySQL 3.23.30.

       ·  have_blackhole_engine

          YES if mysqld supports BLACKHOLE tables, NO if not. This variable
          was added in MySQL 4.1.11.

       ·  have_compress

          Whether the zlib compression library is available to the server. If
          not, the COMPRESS() and UNCOMPRESS() functions cannot be used. This
          variable was added in MySQL 4.1.1.

       ·  have_crypt

          Whether the crypt() system call is available to the server. If not,
          the CRYPT() function cannot be used. This variable was added in
          MySQL 4.0.10.

       ·  have_csv

          YES if mysqld supports ARCHIVE tables, NO if not. This variable was
          added in MySQL 4.1.4.

       ·  have_example_engine

          YES if mysqld supports EXAMPLE tables, NO if not. This variable was
          added in MySQL 4.1.4.

       ·  have_geometry

          Whether the server supports spatial data types. This variable was
          added in MySQL 4.1.3.

       ·  have_innodb

          YES if mysqld supports InnoDB tables.  DISABLED if --skip-innodb is
          used. This variable was added in MySQL 3.23.37.

       ·  have_isam

          YES if mysqld supports ISAM tables.  DISABLED if --skip-isam is
          used. This variable was added in MySQL 3.23.30.

       ·  have_ndbcluster

          YES if mysqld supports NDB Cluster tables.  DISABLED if
          --skip-ndbcluster is used. This variable was added in MySQL 4.1.2.

       ·  have_openssl

          YES if mysqld supports SSL (encryption) of the client/server
          protocol. This variable was added in MySQL 3.23.43.

       ·  have_query_cache

          YES if mysqld supports the query cache. This variable was added in
          MySQL 4.0.2.

       ·  have_raid

          YES if mysqld supports the RAID option. This variable was added in
          MySQL 3.23.30.

       ·  have_rtree_keys

          Whether RTREE indexes are available. (These are used for spatial
          indexes in MyISAM tables.) This variable was added in MySQL 4.1.3.

       ·  have_symlink

          Whether symbolic link support is enabled. This is required on Unix
          for support of the DATA DIRECTORY and INDEX DIRECTORY table options.

          This variable was added in MySQL 4.0.0.

       ·  init_connect

          A string to be executed by the server for each client that connects.
          The string consists of one or more SQL statements. To specify
          multiple statements, separate them by semicolon characters. For
          example, each client begins by default with autocommit mode enabled.
          There is no global server variable to specify that autocommit should
          be disabled by default, but init_connect can be used to achieve the
          same effect:

          SET GLOBAL init_connect=’SET AUTOCOMMIT=0’;
          This variable can also be set on the command line or in an option
          file. To set the variable as just shown using an option file,
          include these lines:

          [mysqld]
          init_connect=’SET AUTOCOMMIT=0’
          Note that the content of init_connect is not executed for users
          having the SUPER privilege; this is in case that content has been
          wrongly set (contains a wrong query, for example with a syntax
          error), thus making all connections fail. Not executing it for SUPER
          users enables those to open a connection and fix init_connect. This
          variable was added in MySQL 4.1.2.

       ·  init_file

          The name of the file specified with the --init-file option when you
          start the server. This is a file containing SQL statements that you
          want the server to execute when it starts. Each statement must be on
          a single line and should not include comments. This variable was
          added in MySQL 3.23.2.

       ·  init_slave

          This variable is similar to init_connect, but is a string to be
          executed by a slave server each time the SQL thread starts. The
          format of the string is the same as for the init_connect variable.
          This variable was added in MySQL 4.1.2.

       ·  innodb_xxx

          The InnoDB system variables are listed at Section 5, “InnoDB Startup
          Options”.

       ·  interactive_timeout

          The number of seconds the server waits for activity on an
          interactive connection before closing it. An interactive client is
          defined as a client that uses the CLIENT_INTERACTIVE option to
          mysql_real_connect(). See also wait_timeout.

       ·  join_buffer_size

          The size of the buffer that is used for full joins (joins that do
          not use indexes). Normally the best way to get fast joins is to add
          indexes. Increase the value of join_buffer_size to get a faster full
          join when adding indexes is not possible. One join buffer is
          allocated for each full join between two tables. For a complex join
          between several tables for which indexes are not used, multiple join
          buffers might be necessary.

       ·  key_buffer_size

          Index blocks for MyISAM and ISAM tables are buffered and are shared
          by all threads.  key_buffer_size is the size of the buffer used for
          index blocks. The key buffer is also known as the key cache.

          The maximum allowable setting for key_buffer_size is 4GB. The
          effective maximum size might be less, depending on your available
          physical RAM and per-process RAM limits imposed by your operating
          system or hardware platform.

          Increase the value to get better index handling (for all reads and
          multiple writes) to as much as you can afford. Using a value that is
          25% of total memory on a machine that mainly runs MySQL is quite
          common. However, if you make the value too large (for example, more
          than 50% of your total memory) your system might start to page and
          become extremely slow. MySQL relies on the operating system to
          perform filesystem caching for data reads, so you must leave some
          room for the filesystem cache.

          For even more speed when writing many rows at the same time, use
          LOCK TABLES. See Section 4.5, “LOCK TABLES and UNLOCK TABLES
          Syntax”.

          You can check the performance of the key buffer by issuing a SHOW
          STATUS statement and examining the Key_read_requests, Key_reads,
          Key_write_requests, and Key_writes status variables. See
          Section 5.4, “SHOW Syntax”.

          The Key_reads/Key_read_requests ratio should normally be less than
          0.01. The Key_writes/Key_write_requests ratio is usually near 1 if
          you are using mostly updates and deletes, but might be much smaller
          if you tend to do updates that affect many rows at the same time or
          if you are using the DELAY_KEY_WRITE table option.

          The fraction of the key buffer in use can be determined using
          key_buffer_size in conjunction with the Key_blocks_unused status
          variable and the buffer block size. From MySQL 4.1.1 on, the buffer
          block size is available from the key_cache_block_size server
          variable. The fraction of the buffer in use is:

          1 - ((Key_blocks_unused * key_cache_block_size) / key_buffer_size)
          This value is an approximation because some space in the key buffer
          may be allocated internally for administrative structures.

          Before MySQL 4.1.1, key cache blocks are 1024 bytes, and before
          MySQL 4.1.2, Key_blocks_unused is unavailable. The Key_blocks_used
          variable can be used as follows to determine the fraction of the key
          buffer in use:

          (Key_blocks_used * 1024) / key_buffer_size
          However, Key_blocks_used indicates the maximum number of blocks that
          have ever been in use at once, so this formula does not necessary
          represent the current fraction of the buffer that is in use.

          As of MySQL 4.1, it is possible to create multiple MyISAM key
          caches. The size limit of 4GB applies to each cache individually,
          not as a group. See Section 4.6, “The MyISAM Key Cache”.

       ·  key_cache_age_threshold

          This value controls the demotion of buffers from the hot sub-chain
          of a key cache to the warm sub-chain. Lower values cause demotion to
          happen more quickly. The minimum value is 100. The default value is
          300. This variable was added in MySQL 4.1.1. See Section 4.6, “The
          MyISAM Key Cache”.

       ·  key_cache_block_size

          The size in bytes of blocks in the key cache. The default value is
          1024. This variable was added in MySQL 4.1.1. See Section 4.6, “The
          MyISAM Key Cache”.

       ·  key_cache_division_limit

          The division point between the hot and warm sub-chains of the key
          cache buffer chain. The value is the percentage of the buffer chain
          to use for the warm sub-chain. Allowable values range from 1 to 100.
          The default value is 100. This variable was added in MySQL 4.1.1.
          See Section 4.6, “The MyISAM Key Cache”.

       ·  language

          The language used for error messages.

       ·  large_file_support

          Whether mysqld was compiled with options for large file support.
          This variable was added in MySQL 3.23.28.

       ·  large_pages

          Indicates whether large page support is enabled. This variable was
          added in MySQL 5.0.3.

       ·  license

          The type of license the server has. This variable was added in MySQL
          4.0.19.

       ·  local_infile

          Whether LOCAL is supported for LOAD DATA INFILE statements. This
          variable was added in MySQL 4.0.3.

       ·  locked_in_memory

          Whether mysqld was locked in memory with --memlock. This variable
          was added in MySQL 3.23.25.

       ·  log

          Whether logging of all queries to the general query log is enabled.
          See Section 8.2, “The General Query Log”.

       ·  log_bin

          Whether the binary log is enabled. This variable was added in MySQL
          3.23.14. See Section 8.4, “The Binary Log”.

       ·  log_error

          The location of the error log. This variable was added in MySQL
          4.0.10.

       ·  log_slave_updates

          Whether updates received by a slave server from a master server
          should be logged to the slave’s own binary log. Binary logging must
          be enabled on the slave for this to have any effect. This variable
          was added in MySQL 3.23.17. See Section 8, “Replication Startup
          Options”.

       ·  log_slow_queries

          Whether slow queries should be logged.  “Slow” is determined by the
          value of the long_query_time variable. This variable was added in
          MySQL 4.0.2. See Section 8.5, “The Slow Query Log”.

       ·  log_update

          Whether the update log is enabled. This variable was added in MySQL
          3.22.18. Note that the binary log is preferable to the update log,
          which is unavailable as of MySQL 5.0. See Section 8.3, “The Update
          Log”.

       ·  log_warnings

          Whether to produce additional warning messages. This variable was
          added in MySQL 4.0.3. It is enabled by default as of MySQL 4.0.19
          and 4.1.2. As of MySQL 4.0.21 and 4.1.3, aborted connections are not
          logged to the error log unless the value is greater than 1.

       ·  long_query_time

          If a query takes longer than this many seconds, the Slow_queries
          status variable is incremented. If you are using the
          --log-slow-queries option, the query is logged to the slow query log
          file. This value is measured in real time, not CPU time, so a query
          that is under the threshold on a lightly loaded system might be
          above the threshold on a heavily loaded one. The minimum value is 1.
          See Section 8.5, “The Slow Query Log”.

       ·  low_priority_updates

          If set to 1, all INSERT, UPDATE, DELETE, and LOCK TABLE WRITE
          statements wait until there is no pending SELECT or LOCK TABLE READ
          on the affected table. This variable previously was named
          sql_low_priority_updates. It was added in MySQL 3.22.5.

       ·  lower_case_file_system

          This variable indicates whether the filesystem where the data
          directory is located has case insensitive filenames.  ON means
          filenames are case insensitive, OFF means they are case sensitive.
          This variable was added in MySQL 4.0.19.

       ·  lower_case_table_names

          If set to 1, table names are stored in lowercase on disk and table
          name comparisons are not case sensitive. This variable was added in
          MySQL 3.23.6. If set to 2 (new in 4.0.18), table names are stored as
          given but compared in lowercase. From MySQL 4.0.2, this option also
          applies to database names. From 4.1.1, it also applies to table
          aliases. See Section 2.2, “Identifier Case Sensitivity”.

          Note: If you are using InnoDB tables, you should set this variable
          to 1 on all platforms to force names to be converted to lowercase.

          You should not set this variable to 0 if you are running MySQL on a
          system that does not have case-sensitive filenames (such as Windows
          or Mac OS X).  New in 4.0.18: If this variable is not set at startup
          and the filesystem on which the data directory is located does not
          have case-sensitive filenames, MySQL automatically sets
          lower_case_table_names to 2.

       ·  max_allowed_packet

          The maximum size of one packet or any generated/intermediate string.

          The packet message buffer is initialized to net_buffer_length bytes,
          but can grow up to max_allowed_packet bytes when needed. This value
          by default is small, to catch big (possibly wrong) packets.

          You must increase this value if you are using large BLOB columns or
          long strings. It should be as big as the biggest BLOB you want to
          use. The protocol limit for max_allowed_packet is 16MB before MySQL
          4.0 and 1GB thereafter.

       ·  max_binlog_cache_size

          If a multiple-statement transaction requires more than this amount
          of memory, you get the error Multi-statement transaction required
          more than ’max_binlog_cache_size’ bytes of storage. This variable
          was added in MySQL 3.23.29.

       ·  max_binlog_size

          If a write to the binary log exceeds the given value, rotate the
          binary logs. You cannot set this variable to more than 1GB or to
          less than 4096 bytes. (The minimum before MYSQL 4.0.14 is 1024
          bytes.) The default value is 1GB. This variable was added in MySQL
          3.23.33.

          Note if you are using transactions: A transaction is written in one
          chunk to the binary log, hence it is never split between several
          binary logs. Therefore, if you have big transactions, you might see
          binary logs bigger than max_binlog_size.

          If max_relay_log_size is 0, the value of max_binlog_size applies to
          relay logs as well.  max_relay_log_size was added in MySQL 4.0.14.

       ·  max_connect_errors

          If there are more than this number of interrupted connections from a
          host, that host is blocked from further connections. You can unblock
          blocked hosts with the FLUSH HOSTS statement.

       ·  max_connections

          The number of simultaneous client connections allowed. Increasing
          this value increases the number of file descriptors that mysqld
          requires. See Section 4.9, “How MySQL Opens and Closes Tables” for
          comments on file descriptor limits. Also see Section 2.6, “Too many
          connections”.

       ·  max_delayed_threads

          Do not start more than this number of threads to handle INSERT
          DELAYED statements. If you try to insert data into a new table after
          all INSERT DELAYED threads are in use, the row is inserted as if the
          DELAYED attribute wasn’t specified. If you set this to 0, MySQL
          never creates a thread to handle DELAYED rows; in effect, doing so
          disables DELAYED entirely. This variable was added in MySQL 3.23.0.

       ·  max_error_count

          The maximum number of error, warning, and note messages to be stored
          for display by SHOW ERRORS or SHOW WARNINGS. This variable was added
          in MySQL 4.1.0.

       ·  max_heap_table_size

          This variable sets the maximum size to which MEMORY (HEAP) tables
          are allowed to grow. The value of the variable is used to calculate
          MEMORY table MAX_ROWS values. Setting this variable has no effect on
          any existing MEMORY table, unless the table is re-created with a
          statement such as CREATE TABLE or TRUNCATE TABLE, or altered with
          ALTER TABLE. This variable was added in MySQL 3.23.0.

       ·  max_insert_delayed_threads

          This variable is a synonym for max_delayed_threads. It was added in
          MySQL 4.0.19.

       ·  max_join_size

          do not allow SELECT statements that probably need to examine more
          than max_join_size rows (for single-table statements) or row
          combinations (for multiple-table statements) or that are likely to
          do more than max_join_size disk seeks. By setting this value, you
          can catch SELECT statements where keys are not used properly and
          that would probably take a long time. Set it if your users tend to
          perform joins that lack a WHERE clause, that take a long time, or
          that return millions of rows.

          Setting this variable to a value other than DEFAULT resets the
          SQL_BIG_SELECTS value to 0. If you set the SQL_BIG_SELECTS value
          again, the max_join_size variable is ignored.

          If a query result is in the query cache, no result size check is
          performed, because the result has previously been computed and it
          does not burden the server to send it to the client.

          This variable previously was named sql_max_join_size.

       ·  max_length_for_sort_data

          The cutoff on the size of index values that determines which
          filesort algorithm to use. See Section 2.9, “How MySQL Optimizes
          ORDER BY”. This variable was added in MySQL 4.1.1

       ·  max_relay_log_size

          If a write by a replication slave to its relay log exceeds the given
          value, rotate the relay log. This variable enables you to put
          different size constraints on relay logs and binary logs. However,
          setting the variable to 0 makes MySQL use max_binlog_size for both
          binary logs and relay logs. You must set max_relay_log_size to
          between 4096 bytes and 1GB (inclusive), or to 0. The default value
          is 0. This variable was added in MySQL 4.0.14. See Section 3,
          “Replication Implementation Details”.

       ·  max_seeks_for_key

          Limit the assumed maximum number of seeks when looking up rows based
          on a key. The MySQL optimizer assumes that no more than this number
          of key seeks are required when searching for matching rows in a
          table by scanning a key, regardless of the actual cardinality of the
          key (see Section 5.4.11, “SHOW INDEX Syntax”). By setting this to a
          low value (say, 100), you can force MySQL to prefer keys instead of
          table scans.

          This variable was added in MySQL 4.0.14.

       ·  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_tmp_tables

          The maximum number of temporary tables a client can keep open at the
          same time. (This option does not yet do anything.)

       ·  max_user_connections

          The maximum number of simultaneous connections allowed to any given
          MySQL account. A value of 0 means “no limit”. This variable was
          added in MySQL 3.23.34.

          This variable has only a global form.

       ·  max_write_lock_count

          After this many write locks, allow some read locks to run in
          between. This variable was added in MySQL 3.23.7.

       ·  myisam_data_pointer_size

          The default pointer size in bytes, to be used by CREATE TABLE for
          MyISAM tables when no MAX_ROWS option is specified. This variable
          cannot be less than 2 or larger than 7. The default value is 4. This
          variable was added in MySQL 4.1.2. See Section 2.11, “The table is
          full”.

       ·  myisam_max_extra_sort_file_size

          If the temporary file used for fast MyISAM index creation would be
          larger than using the key cache by the amount specified here, prefer
          the key cache method. This is mainly used to force long character
          keys in large tables to use the slower key cache method to create
          the index. This variable was added in MySQL 3.23.37.  Note: The
          value is given in megabytes before 4.0.3 and in bytes thereafter.

       ·  myisam_max_sort_file_size

          The maximum size of the temporary file MySQL is allowed to use while
          re-creating a MyISAM index (during REPAIR TABLE, ALTER TABLE, or
          LOAD DATA INFILE). If the file size would be bigger than this value,
          the index is created using the key cache instead, which is slower.
          This variable was added in MySQL 3.23.37.  Note: The value is given
          in megabytes before 4.0.3 and in bytes thereafter.

       ·  myisam_recover_options

          The value of the --myisam-recover option. This variable was added in
          MySQL 3.23.36.

       ·  myisam_repair_threads

          If this value is greater than 1, MyISAM table indexes are created in
          parallel (each index in its own thread) during the Repair by sorting
          process. The default value is 1.  Note: Multi-threaded repair is
          still alpha quality code. This variable was added in MySQL 4.0.13.

       ·  myisam_sort_buffer_size

          The buffer that is allocated when sorting MyISAM indexes during a
          REPAIR TABLE or when creating indexes with CREATE INDEX or ALTER
          TABLE. This variable was added in MySQL 3.23.16.

       ·  myisam_stats_method

          How the server treats NULL values when collecting statistics about
          the distribution of index values for MyISAM tables. This variable
          has two possible values, nulls_equal and nulls_unequal. For
          nulls_equal, all NULL index values are considered equal and form a
          single value group that has a size equal to the number of NULL
          values. For nulls_unequal, NULL values are considered unequal, and
          each NULL forms a distinct value group of size 1.

          The method that is used for generating table statistics influences
          how the optimizer chooses indexes for query execution, as described
          in Section 4.7, “MyISAM Index Statistics Collection”.

          This variable was added in MySQL 4.1.15/5.0.14. For older versions,
          the statistics collection method is equivalent to nulls_equal.

       ·  named_pipe

          On Windows, indicates whether the server supports connections over
          named pipes. This variable was added in MySQL 3.23.50.

       ·  net_buffer_length

          The communication buffer is reset to this size between queries. This
          should not normally be changed, but if you have very little memory,
          you can set it to the expected length of SQL statements sent by
          clients. If statements exceed this length, the buffer is
          automatically enlarged, up to max_allowed_packet bytes.

       ·  net_read_timeout

          The number of seconds to wait for more data from a connection before
          aborting the read. When the server is reading from the client,
          net_read_timeout is the timeout value controlling when to abort.
          When the server is writing to the client, net_write_timeout is the
          timeout value controlling when to abort. See also slave_net_timeout.
          This variable was added in MySQL 3.23.20.

       ·  net_retry_count

          If a read on a communication port is interrupted, retry this many
          times before giving up. This value should be set quite high on
          FreeBSD because internal interrupts are sent to all threads. This
          variable was added in MySQL 3.23.7.

       ·  net_write_timeout

          The number of seconds to wait for a block to be written to a
          connection before aborting the write. See also net_read_timeout.
          This variable was added in MySQL 3.23.20.

       ·  new

          This variable is used in MySQL 4.0 to turn on some 4.1 behaviors.
          This variable was added in MySQL 4.0.12.

       ·  old_passwords

          Whether the server should use pre-4.1-style passwords for MySQL user
          accounts. This variable was added in MySQL 4.1.1.

       ·  one_shot

          This is not a variable, but it can be used when setting some
          variables. It’s described in Section 5.3, “SET Syntax”.

       ·  one_shot

          This is not a variable, but it can be used when setting some
          variables. It’s described in Section 5.3, “SET Syntax”.

       ·  open_files_limit

          The number of files that the operating system allows mysqld to open.
          This is the real value allowed by the system and might be different
          from the value you gave mysqld as a startup option. The value is 0
          on systems where MySQL cannot change the number of open files. This
          variable was added in MySQL 3.23.20.

       ·  pid_file

          The pathname of the process ID (PID) file. This variable can be set
          with the --pid-file option. This variable was added in MySQL
          3.23.23.

       ·  port

          The port on which the server listens for TCP/IP connections. This
          variable can be set with the --port option.

       ·  preload_buffer_size

          The size of the buffer that is allocated when preloading indexes.
          This variable was added in MySQL 4.1.1.

       ·  protocol_version

          The version of the client/server protocol used by the MySQL server.
          This variable was added in MySQL 3.23.18.

       ·  query_alloc_block_size

          The allocation size of memory blocks that are allocated for objects
          created during query parsing and execution. If you have problems
          with memory fragmentation, it might help to increase this a bit.
          This variable was added in MySQL 4.0.16.

       ·  query_cache_limit

          Do not cache results that are bigger than this. The default value is
          1MB. This variable was added in MySQL 4.0.1.

       ·  query_cache_min_res_unit

          The minimum size for blocks allocated by the query cache. The
          default value is 4KB. Tuning information for this variable is given
          in Section 10.3, “Query Cache Configuration”. This variable is
          present from MySQL 4.1.

       ·  query_cache_size

          The amount of memory allocated for caching query results. The
          default value is 0, which disables the query cache. Note that this
          amount of memory is allocated even if query_cache_type is set to 0.
          This variable was added in MySQL 4.0.1.

       ·  query_cache_type

          Set query cache type. Setting the GLOBAL value sets the type for all
          clients that connect thereafter. Individual clients can set the
          SESSION value to affect their own use of the query cache.
          OptionDescription0 or OFFdo not cache or retrieve results. Note that
          this does not deallocate the
                                query cache buffer. To do that, you should set
                                query_cache_size to
                                0.1 or ONCache all query results except for
          those that begin with SELECT
                                SQL_NO_CACHE.2 or DEMANDCache results only for
          queries that begin with SELECT
                                SQL_CACHE.This variable was added in MySQL
          4.0.3.

       ·  query_cache_wlock_invalidate

          Normally, when one client acquires a WRITE lock on a MyISAM table,
          other clients are not blocked from issuing queries for the table if
          the query results are present in the query cache. Setting this
          variable to 1 causes acquisition of a WRITE lock for a table to
          invalidate any queries in the query cache that refer to the table.
          This forces other clients that attempt to access the table to wait
          while the lock is in effect. This variable was added in MySQL
          4.0.19.

       ·  query_prealloc_size

          The size of the persistent buffer used for query parsing and
          execution. This buffer is not freed between queries. If you are
          running complex queries, a larger query_prealloc_size value might be
          helpful in improving performance, because it can reduce the need for
          the server to perform memory allocation during query execution
          operations.

          This variable was added in MySQL 4.0.16.

       ·  range_alloc_block_size

          The size of blocks that are allocated when doing range optimization.
          This variable was added in MySQL 4.0.16.

       ·  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
          might want to increase this value. This variable was added in MySQL
          4.0.3. Previously, it was named record_buffer.

       ·  read_only

          When the variable is set to ON for a replication slave server, it
          causes the slave to allow no updates except from slave threads or
          from users with the SUPER privilege. This can be useful to ensure
          that a slave server accepts no updates from clients. This variable
          was added in MySQL 4.0.14.

       ·  relay_log_purge

          Disables or enables automatic purging of relay logs as soon as they
          are not needed any more. The default value is 1 (enabled). This
          variable was added in MySQL 4.1.1.

       ·  read_rnd_buffer_size

          When reading rows in sorted order after a sort, the rows are read
          through this buffer to avoid disk seeks. Setting the variable to a
          large value can improve ORDER BY performance considerably. However,
          this is a buffer allocated for each client, so you should not set
          the global variable to a large value. Instead, change the session
          variable only from within those clients that need to run large
          queries. This variable was added in MySQL 4.0.3. Previously, it was
          named record_rnd_buffer.

       ·  safe_show_database

          Do not show databases for which the user has no database or table
          privileges. This can improve security if you are concerned about
          people being able to see what databases other users have. See also
          skip_show_database.

          This variable was removed in MySQL 4.0.5. Beginning with this
          version, you should instead use the SHOW DATABASES privilege to
          control access by MySQL accounts to databases.

       ·  secure_auth

          If the MySQL server has been started with the --secure-auth option,
          it blocks connections from all accounts that have passwords stored
          in the old (pre-4.1) format. In that case, the value of this
          variable is ON, otherwise it is OFF.

          You should enable this option if you want to prevent all usage of
          passwords in the old format (and hence insecure communication over
          the network). This variable was added in MySQL 4.1.1.

          Server startup fails with an error if this option is enabled and the
          privilege tables are in pre-4.1 format.

          When used as a client-side option, the client refuses to connect to
          a server if the server requires a password in old format for the
          client account.

       ·  server_id

          The value of the --server-id option. It is used for master and slave
          replication servers. This variable was added in MySQL 3.23.26.

       ·  shared_memory

          Whether or not the server allows shared-memory connections.
          Currently, only Windows servers support this. This variable was
          added in MySQL 4.1.1.

       ·  shared_memory_base_name

          Indicates whether or not the server allows shared-memory
          connections, and sets the identifier for the shared memory. This is
          useful when running multiple MYSQL instances on a single physical
          machine. Currently, only Windows servers support this. This variable
          was added in MySQL 4.1.0.

       ·  skip_external_locking

          This is OFF if mysqld uses external locking. This variable was added
          in MySQL 4.0.3. Previously, it was named skip_locking.

       ·  skip_networking

          This is ON if the server allows only local (non-TCP/IP) connections.
          On Unix, local connections use a Unix socket file. On Windows, local
          connections use a named pipe or shared memory. On NetWare, only
          TCP/IP connections are supported, so do not set this variable to ON.
          This variable was added in MySQL 3.22.23.

       ·  skip_show_database

          This prevents people from using the SHOW DATABASES statement if they
          do not have the SHOW DATABASES privilege. This can improve security
          if you are concerned about people being able to see what databases
          other users have. See also safe_show_database. This variable was
          added in MySQL 3.23.4. As of MySQL 4.0.2, its effect also depends on
          the SHOW DATABASES privilege: If the variable value is ON, the SHOW
          DATABASES statement is allowed only to users who have the SHOW
          DATABASES privilege, and the statement displays all database names.
          If the value is OFF, SHOW DATABASES is allowed to all users, but
          displays each database name only if the user has the SHOW DATABASES
          privilege or some privilege for the database. Note that any global
          privilege is a privilege for the database.

       ·  slave_compressed_protocol

          Whether to use compression of the master/slave protocol if both the
          slave and the master support it. This variable was added in MySQL
          4.0.3.

       ·  slave_load_tmpdir

          The name of the directory where the slave creates temporary files
          for replicating LOAD DATA INFILE statement. This variable was added
          in MySQL 4.0.0.

       ·  slave_net_timeout

          The number of seconds to wait for more data from a master/slave
          connection before aborting the read. This variable was added in
          MySQL 3.23.40.

       ·  slave_skip_errors

          The replication errors that the slave should skip (ignore). This
          variable was added in MySQL 3.23.47.

       ·  slave_transaction_retries

          If a replication slave SQL thread fails to execute a transaction
          because of an InnoDB deadlock or InnoDB’s innodb_lock_wait_timeout
          or NDB Cluster’s TransactionDeadlockDetectionTimeout or
          TransactionInactiveTimeout was exceeded, it automatically retries
          slave_transaction_retries times before stopping with an error. The
          default in MySQL 4.1 is 0. You must explicitly set the value to
          greater than 0 to enable the “retry” behavior, which is probably a
          good idea.

       ·  slow_launch_time

          If creating a thread takes longer than this many seconds, the server
          increments the Slow_launch_threads status variable. This variable
          was added in MySQL 3.23.15.

       ·  socket

          On Unix, this is the Unix socket file used for local client
          connections. On Windows, this is the name of the named pipe used for
          local client connections.

       ·  sort_buffer_size

          Each thread that needs to do a sort allocates a buffer of this size.
          Increase this value for faster ORDER BY or GROUP BY operations. See
          Section 4.4, “Where MySQL Stores Temporary Files”.

       ·  sql_mode

          The current server SQL mode. This variable was added in MySQL
          3.23.41. It can be set dynamically as of MySQL 4.1.1. See the
          section called “THE SERVER SQL MODE”.

       ·  sql_slave_skip_counter

          The number of events from the master that a slave server should
          skip. It was added in MySQL 3.23.33.

       ·  storage_engine

          This variable is a synonym for table_type. It was added in MySQL
          4.1.2.

       ·  sync_binlog

          If positive, the MySQL server synchronizes its binary log to disk
          (fdatasync()) after every sync_binlog’th write to this binary log.
          Note that there is one write to the binary log per statement if in
          autocommit mode, and otherwise one write per transaction. The
          default value is 0 which does no sync’ing to disk. A value of 1 is
          the safest choice, because in case of crash you lose at most one
          statement/transaction from the binary log; but it is also the
          slowest choice (unless the disk has a battery-backed cache, which
          makes sync’ing very fast). This variable was added in MySQL 4.1.3.

       ·  sync_frm

          This was added as a command-line option in MySQL 4.0.18, and is also
          a settable global variable since MySQL 4.1.3. If set to 1, when a
          non-temporary table is created it synchronizes its .frm file to disk
          (fdatasync()); this is slower but safer in case of a crash. The
          default is 1.

       ·  system_time_zone

          The server system time zone. When the server begins executing, it
          inherits a time zone setting from the machine defaults, possibly
          modified by the environment of the account used for running the
          server or the startup script. The value is used to set
          system_time_zone. Typically the time zone is specified by the TZ
          environment variable. It also can be specified using the --timezone
          option of the mysqld_safe script. This variable was added in MySQL
          4.1.3.

       ·  table_cache

          The number of open tables for all threads. Increasing this value
          increases the number of file descriptors that mysqld requires. You
          can check whether you need to increase the table cache by checking
          the Opened_tables status variable. See the section called “SERVER
          STATUS VARIABLES”. If the value of Opened_tables is large and you do
          not do FLUSH TABLES often (which just forces all tables to be closed
          and reopened), then you should increase the value of the table_cache
          variable.

          For more information about the table cache, see Section 4.9, “How
          MySQL Opens and Closes Tables”.

       ·  table_type

          The default table type (storage engine). To set the table type at
          server startup, use the --default-table-type option. This variable
          was added in MySQL 3.23.0. See the section called “\FBMYSQLD\FR
          COMMAND-LINE OPTIONS”.

       ·  thread_cache_size

          How many threads the server should cache for reuse. When a client
          disconnects, the client’s threads are put in the cache if there are
          fewer than thread_cache_size threads there. Requests for threads are
          satisfied by reusing threads taken from the cache if possible, and
          only when the cache is empty is a new thread created. This variable
          can be increased to improve performance if you have a lot of new
          connections. (Normally this does not give a notable performance
          improvement if you have a good thread implementation.) By examining
          the difference between the Connections and Threads_created status
          variables (see the section called “SERVER STATUS VARIABLES” for
          details) you can see how efficient the thread cache is. This
          variable was added in MySQL 3.23.16.

       ·  thread_concurrency

          On Solaris, mysqld calls thr_setconcurrency() with this value. This
          function allows applications to give the threads system a hint about
          the desired number of threads that should be run at the same time.
          This variable was added in MySQL 3.23.7.

       ·  thread_stack

          The stack size for each thread. Many of the limits detected by the
          crash-me test are dependent on this value. The default is large
          enough for normal operation. See Section 1.4, “The MySQL Benchmark
          Suite”.

       ·  time_format

          This variable is not implemented.

       ·  time_zone

          The current time zone. The initial value of this is ´SYSTEM’ (use
          the value of system_time_zone), but can be specified explicitly at
          server startup time with the --default-time-zone option. This
          variable was added in MySQL 4.1.3.

       ·  timezone

          The time zone for the server. This is set from the TZ environment
          variable when mysqld is started. The time zone also can be set by
          giving a --timezone argument to mysqld_safe. This variable was added
          in MySQL 3.23.15. As of MySQL 4.1.3, it is obsolete and has been
          replaced by the system_time_zone variable. See Section 4.6, “Time
          Zone Problems”.

       ·  tmp_table_size

          If an in-memory temporary table exceeds this size, MySQL
          automatically converts it to an on-disk MyISAM table. Increase the
          value of tmp_table_size if you do many advanced GROUP BY queries and
          you have lots of memory.

       ·  tmpdir

          The directory used for temporary files and temporary tables.
          Starting from MySQL 4.1, this variable can be set to a list of
          several paths that are used in round-robin fashion. Paths should be
          separated by colon characters (‘:’) on Unix and semicolon characters
          (‘;’) on Windows, NetWare, and OS/2.

          This feature can be used to spread the load between several physical
          disks. If the MySQL server is acting as a replication slave, you
          should not set tmpdir to point to a directory on a memory-based
          filesystem or to a directory that is cleared when the server host
          restarts. A replication slave needs some of its temporary files to
          survive a machine restart so that it can replicate temporary tables
          or LOAD DATA INFILE operations. If files in the temporary file
          directory are lost when the server restarts, replication fails.
          However, if you’re using MySQL 4.0.0 or later, you may set the
          slave’s temporary directory using the slave_load_tmpdir variable. In
          that case, the slave won’t use the general tmpdir any more, which
          means you can set tmpdir to a non-permanent location then.

          This variable was added in MySQL 3.22.4.

       ·  transaction_alloc_block_size

          The allocation size of memory blocks that are allocated for storing
          queries that are part of a transaction to be stored in the binary
          log when doing a commit. This variable was added in MySQL 4.0.16.

       ·  transaction_prealloc_size

          The size of the persistent buffer for transaction_alloc_blocks that
          is not freed between queries. By making this big enough to fit all
          queries in a common transaction, you can avoid a lot of malloc()
          calls. This variable was added in MySQL 4.0.16.

       ·  tx_isolation

          The default transaction isolation level. This variable was added in
          MySQL 4.0.3.

       ·  version

          The version number for the server.

       ·  version_bdb

          The BDB storage engine version. This variable was added in MySQL
          3.23.31 with the name bdb_version and renamed to version_bdb in
          MySQL 4.1.1.

       ·  version_comment

          The configure script has a --with-comment option that allows a
          comment to be specified when building MySQL. This variable contains
          the value of that comment. This variable was added in MySQL 4.0.17.

       ·  version_compile_machine

          The type of machine MySQL was built on. This variable was added in
          MySQL 4.1.1.

       ·  version_compile_os

          The type of operating system MySQL was built on. This variable was
          added in MySQL 4.0.19.

       ·  wait_timeout

          The number of seconds the server waits for activity on a
          non-interactive connection before closing it.

          On thread startup, the session wait_timeout value is initialized
          from the global wait_timeout value or from the global
          interactive_timeout value, depending on the type of client (as
          defined by the CLIENT_INTERACTIVE connect option to
          mysql_real_connect()). See also interactive_timeout.

   Dynamic System Variables
       Beginning with MySQL 4.0.3, many server system variables are dynamic
       and can be set at runtime using SET GLOBAL or SET SESSION. You can also
       select their values using SELECT. See Section 4, “System Variables”.

       The following table shows the full list of all dynamic system
       variables. The last column indicates for each variable whether GLOBAL
       or SESSION (or both) apply.  Variable NameValue
       TypeTypeautocommitbooleanSESSIONbig_tablesbooleanSESSIONbinlog_cache_sizenumericGLOBALbulk_insert_buffer_sizenumericGLOBAL
       | SESSIONcharacter_set_clientstringGLOBAL |
       SESSIONcharacter_set_connectionstringGLOBAL | SESSION
                           character_set_resultsstringGLOBAL |
       SESSIONcharacter_set_serverstringGLOBAL |
       SESSIONcollation_connectionstringGLOBAL | SESSION
                           collation_serverstringGLOBAL |
       SESSIONconcurrent_insertbooleanGLOBALconnect_timeoutnumericGLOBALconvert_character_setstringGLOBAL
       | SESSIONdefault_week_formatnumericGLOBAL | SESSIONdelay_key_writeOFF |
       ON |
       ALLGLOBALdelayed_insert_limitnumericGLOBALdelayed_insert_timeoutnumericGLOBALdelayed_queue_sizenumericGLOBALerror_countnumericSESSIONexpire_logs_daysnumericGLOBALflushbooleanGLOBALflush_timenumericGLOBALforeign_key_checksbooleanSESSIONft_boolean_syntaxnumericGLOBALgroup_concat_max_lennumericGLOBAL
       | SESSIONidentitynumericSESSION
                           innodb_autoextend_incrementnumericGLOBALinnodb_concurrency_ticketsnumericGLOBALinnodb_max_dirty_pages_pctnumericGLOBALinnodb_max_purge_lagnumericGLOBALinnodb_sync_spin_loopsnumericGLOBALinnodb_table_locksbooleanGLOBAL
       | SESSIONinnodb_thread_concurrencynumeric
       GLOBAL innodb_thread_sleep_delaynumeric
       GLOBAL insert_idbooleanSESSIONinteractive_timeoutnumericGLOBAL |
       SESSIONjoin_buffer_sizenumericGLOBAL |
       SESSIONkey_buffer_sizenumericGLOBAL
                           last_insert_idnumericSESSIONlocal_infilebooleanGLOBALlog_warningsnumericGLOBALlong_query_timenumericGLOBAL
       | SESSIONlow_priority_updatesbooleanGLOBAL |
       SESSIONmax_allowed_packetnumericGLOBAL |
       SESSIONmax_binlog_cache_sizenumericGLOBALmax_binlog_sizenumericGLOBALmax_connect_errorsnumericGLOBALmax_connectionsnumericGLOBALmax_delayed_threadsnumericGLOBALmax_error_countnumericGLOBAL
       | SESSIONmax_heap_table_sizenumericGLOBAL |
       SESSIONmax_insert_delayed_threadsnumericGLOBALmax_join_sizenumericGLOBAL
       | SESSIONmax_relay_log_sizenumericGLOBALmax_seeks_for_keynumericGLOBAL
       | SESSIONmax_sort_lengthnumericGLOBAL |
       SESSIONmax_tmp_tablesnumericGLOBAL |
       SESSIONmax_user_connectionsnumericGLOBALmax_write_lock_countnumericGLOBALmyisam_stats_methodenumGLOBAL
       | SESSIONmulti_read_rangenumericGLOBAL |
       SESSIONmyisam_data_pointer_sizenumericGLOBALmyisam_max_sort_file_sizenumericGLOBAL
       | SESSIONmyisam_repair_threadsnumericGLOBAL |
       SESSIONmyisam_sort_buffer_sizenumericGLOBAL |
       SESSIONnet_buffer_lengthnumericGLOBAL |
       SESSIONnet_read_timeoutnumericGLOBAL |
       SESSIONnet_retry_countnumericGLOBAL |
       SESSIONnet_write_timeoutnumericGLOBAL |
       SESSIONold_passwordsnumericGLOBAL |
       SESSIONoptimizer_prune_levelnumericGLOBAL |
       SESSIONoptimizer_search_depthnumericGLOBAL |
       SESSIONpreload_buffer_sizenumericGLOBAL |
       SESSIONquery_alloc_block_sizenumericGLOBAL |
       SESSIONquery_cache_limitnumericGLOBALquery_cache_sizenumericGLOBALquery_cache_typeenumerationGLOBAL
       | SESSIONquery_cache_wlock_invalidatebooleanGLOBAL |
       SESSIONquery_prealloc_sizenumericGLOBAL |
       SESSIONrange_alloc_block_sizenumericGLOBAL |
       SESSIONread_buffer_sizenumericGLOBAL |
       SESSIONread_onlynumericGLOBALread_rnd_buffer_sizenumericGLOBAL |
       SESSIONrpl_recovery_ranknumericGLOBALsafe_show_databasebooleanGLOBALsecure_authbooleanGLOBALserver_idnumericGLOBALslave_compressed_protocolbooleanGLOBALslave_net_timeoutnumericGLOBALslave_transaction_retriesnumericGLOBALslow_launch_timenumericGLOBALsort_buffer_sizenumericGLOBAL
       |
       SESSIONsql_auto_is_nullbooleanSESSIONsql_big_selectsbooleanSESSIONsql_big_tablesbooleanSESSIONsql_buffer_resultbooleanSESSIONsql_log_binbooleanSESSIONsql_log_offbooleanSESSIONsql_log_updatebooleanSESSIONsql_low_priority_updatesbooleanGLOBAL
       | SESSIONsql_max_join_sizenumericGLOBAL |
       SESSIONsql_modeenumerationGLOBAL |
       SESSIONsql_notesbooleanSESSIONsql_quote_show_createbooleanSESSIONsql_safe_updatesbooleanSESSIONsql_select_limitnumericSESSIONsql_slave_skip_counternumericGLOBALupdatable_views_with_limitenumerationGLOBAL
       |
       SESSIONsql_warningsbooleanSESSIONsync_binlognumericGLOBALsync_frmbooleanGLOBALstorage_engineenumerationGLOBAL
       | SESSIONtable_cachenumericGLOBALtable_typeenumerationGLOBAL |
       SESSIONthread_cache_sizenumericGLOBALtime_zonestringGLOBAL |
       SESSIONtimestampbooleanSESSIONtmp_table_sizeenumerationGLOBAL |
       SESSIONtransaction_alloc_block_sizenumericGLOBAL |
       SESSIONtransaction_prealloc_sizenumericGLOBAL |
       SESSIONtx_isolationenumerationGLOBAL |
       SESSIONunique_checksbooleanSESSIONwait_timeoutnumericGLOBAL |
       SESSIONwarning_countnumericSESSION.PP Variables that are marked as
       “string” take a string value. Variables that are marked as “numeric”
       take a numeric value. Variables that are marked as “boolean” can be set
       to 0, 1, ON or OFF. Variables that are marked as “enumeration” normally
       should be set to one of the available values for the variable, but can
       also be set to the number that corresponds to the desired enumeration
       value. For enumeration-valued system variables, the first enumeration
       value corresponds to 0. This differs from ENUM columns, for which the
       first enumeration value corresponds to 1.


SERVER STATUS VARIABLES

       The server maintains many status variables that provide information
       about its operations. You can view these variables and their values by
       using the SHOW STATUS statement:

       mysql> SHOW STATUS;
       +--------------------------+------------+
       | Variable_name            | Value      |
       +--------------------------+------------+
       | Aborted_clients          | 0          |
       | Aborted_connects         | 0          |
       | Bytes_received           | 155372598  |
       | Bytes_sent               | 1176560426 |
       | Connections              | 30023      |
       ...

       Many status variables are reset to 0 by the FLUSH STATUS statement.

       The status variables have the following meanings. The Com_xxx statement
       counter variables were added beginning with MySQL 3.23.47. The
       Qcache_xxx query cache variables were added beginning with MySQL 4.0.1.
       Otherwise, variables with no version indicated have been present since
       at least MySQL 3.22.

       ·  Aborted_clients

          The number of connections that were aborted because the client died
          without closing the connection properly. See Section 2.10,
          “Communication Errors and Aborted Connections”.

       ·  Aborted_connects

          The number of tries to connect to the MySQL server that failed. See
          Section 2.10, “Communication Errors and Aborted Connections”.

       ·  Binlog_cache_disk_use

          The number of transactions that used the temporary binary log cache
          but that exceeded the value of binlog_cache_size and used a
          temporary file to store statements from the transaction. This
          variable was added in MySQL 4.1.2.

       ·  Binlog_cache_use

          The number of transactions that used the temporary binary log cache.
          This variable was added in MySQL 4.1.2.

       ·  Bytes_received

          The number of bytes received from all clients. This variable was
          added in MySQL 3.23.7.

       ·  Bytes_sent

          The number of bytes sent to all clients. This variable was added in
          MySQL 3.23.7.

       ·  Com_xxx

          The Com_xxx statement counter variables were added beginning with
          MySQL 3.23.47. They indicate the number of times each xxx statement
          has been executed. There is one status variable for each type of
          statement. For example, Com_delete and Com_insert count DELETE and
          INSERT statements.

          New Com_stmt_xxx status variables have been added in MySQL 4.1.13.

          ·  Com_stmt_prepare

          ·  Com_stmt_execute

          ·  Com_stmt_send_long_data

          ·  Com_stmt_reset

          ·  Com_stmt_close

          Those variables stand for prepared statements commands. Their names
          refer to the COM_xxx command set used in the network layer; in other
          words: Their values are being increased whenever prepared statements
          API calls such as mysql_stmt_prepare(), mysql_stmt_execute(), and so
          forth are executed. However, Com_stmt_prepare, Com_stmt_execute and
          Com_stmt_close are also increased when one issues the following SQL
          statements: PREPARE, EXECUTE, or DEALLOCATE PREPARE respectively.
          Additionally, the values of the older (available since MySQL 4.1.3)
          statement counter variables Com_prepare_sql, Com_execute_sql, and
          Com_dealloc_sql are increased for the PREPARE, EXECUTE, and
          DEALLOCATE PREPARE statements.

          All of the Com_stmt_xxx variables are increased even if their
          argument (a prepared statement) is unknown or an error occurred
          during execution; in other words: Their values correspond to the
          number of requests issued, not to the number of requests
          successfully completed.

       ·  Connections

          The number of connection attempts (successful or not) to the MySQL
          server.

       ·  Created_tmp_disk_tables

          The number of temporary tables on disk created automatically by the
          server while executing statements. This variable was added in MySQL
          3.23.24.

       ·  Created_tmp_files

          How many temporary files mysqld has created. This variable was added
          in MySQL 3.23.28.

       ·  Created_tmp_tables

          The number of in-memory temporary tables created automatically by
          the server while executing statements. If Created_tmp_disk_tables is
          big, you may want to increase the tmp_table_size value to cause
          temporary tables to be memory-based instead of disk-based.

       ·  Delayed_errors

          The number of rows written with INSERT DELAYED for which some error
          occurred (probably duplicate key).

       ·  Delayed_insert_threads

          The number of INSERT DELAYED handler threads in use.

       ·  Delayed_writes

          The number of INSERT DELAYED rows written.

       ·  Flush_commands

          The number of executed FLUSH statements.

       ·  Handler_commit

          The number of internal COMMIT statements. This variable was added in
          MySQL 4.0.2.

       ·  Handler_discover

          The MySQL server can ask the NDB Cluster storage engine if it knows
          about a table with a given name. This is called discovery.
          Handler_discover indicates the number of times that tables have been
          discovered. This variable was added in MySQL 4.1.2.

       ·  Handler_delete

          The number of times a row was deleted from a table.

       ·  Handler_read_first

          The number of times the first entry was read from an index. If this
          is high, it suggests that the server is doing a lot of full index
          scans; for example, SELECT col1 FROM foo, assuming that col1 is
          indexed.

       ·  Handler_read_key

          The number of requests to read a row based on a key. If this is
          high, it is a good indication that your queries and tables are
          properly indexed.

       ·  Handler_read_next

          The number of requests to read the next row in key order. This is
          incremented if you are querying an index column with a range
          constraint or if you are doing an index scan.

       ·  Handler_read_prev

          The number of requests to read the previous row in key order. This
          read method is mainly used to optimize ORDER BY ... DESC. This
          variable was added in MySQL 3.23.6.

       ·  Handler_read_rnd

          The number of requests to read a row based on a fixed position. This
          is high if you are doing a lot of queries that require sorting of
          the result. You probably have a lot of queries that require MySQL to
          scan whole tables or you have joins that do not use keys properly.

       ·  Handler_read_rnd_next

          The number of requests to read the next row in the data file. This
          is high if you are doing a lot of table scans. Generally this
          suggests that your tables are not properly indexed or that your
          queries are not written to take advantage of the indexes you have.

       ·  Handler_rollback

          The number of internal ROLLBACK statements. This variable was added
          in MySQL 4.0.2.

       ·  Handler_update

          The number of requests to update a row in a table.

       ·  Handler_write

          The number of requests to insert a row in a table.

       ·  Key_blocks_not_flushed

          The number of key blocks in the key cache that have changed but
          haven’t yet been flushed to disk. This variable was added in MySQL
          4.1.1. It used to be known as Not_flushed_key_blocks.

       ·  Key_blocks_unused

          The number of unused blocks in the key cache. You can use this value
          to determine how much of the key cache is in use; see the discussion
          of key_buffer_size in the section called “SERVER SYSTEM VARIABLES”.
          This variable was added in MySQL 4.1.2.  the section called “SERVER
          SYSTEM VARIABLES”.

       ·  Key_blocks_used

          The number of used blocks in the key cache. This value is a
          high-water mark that indicates the maximum number of blocks that
          have ever been in use at one time.

       ·  Key_read_requests

          The number of requests to read a key block from the cache.

       ·  Key_reads

          The number of physical reads of a key block from disk. If Key_reads
          is big, then your key_buffer_size value is probably too small. The
          cache miss rate can be calculated as Key_reads/Key_read_requests.

       ·  Key_write_requests

          The number of requests to write a key block to the cache.

       ·  Key_writes

          The number of physical writes of a key block to disk.

       ·  Max_used_connections

          The maximum number of connections that have been in use
          simultaneously since the server started.

       ·  Not_flushed_delayed_rows

          The number of rows waiting to be written in INSERT DELAY queues.

       ·  Not_flushed_key_blocks

          The old name for Key_blocks_not_flushed before MySQL 4.1.1.

       ·  Open_files

          The number of files that are open.

       ·  Open_streams

          The number of streams that are open (used mainly for logging).

       ·  Open_tables

          The number of tables that are open.

       ·  Opened_tables

          The number of tables that have been opened. If Opened_tables is big,
          your table_cache value is probably too small.

       ·  Qcache_free_blocks

          The number of free memory blocks in query cache.

       ·  Qcache_free_memory

          The amount of free memory for query cache.

       ·  Qcache_hits

          The number of cache hits.

       ·  Qcache_inserts

          The number of queries added to the cache.

       ·  Qcache_lowmem_prunes

          The number of queries that were deleted from the cache because of
          low memory.

       ·  Qcache_not_cached

          The number of non-cached queries (not cachable, or not cached due to
          the query_cache_type setting).

       ·  Qcache_queries_in_cache

          The number of queries registered in the cache.

       ·  Qcache_total_blocks

          The total number of blocks in the query cache.

       ·  Questions

          The number of queries that have been sent to the server.

       ·  Rpl_status

          The status of failsafe replication (not yet implemented).

       ·  Select_full_join

          The number of joins that do not use indexes. If this value is not 0,
          you should carefully check the indexes of your tables. This variable
          was added in MySQL 3.23.25.

       ·  Select_full_range_join

          The number of joins that used a range search on a reference table.
          This variable was added in MySQL 3.23.25.

       ·  Select_range

          The number of joins that used ranges on the first table. (it is
          normally not critical even if this is big.) This variable was added
          in MySQL 3.23.25.

       ·  Select_range_check

          The number of joins without keys that check for key usage after each
          row. (If this is not equal to 0, you should very carefully check the
          indexes of your tables.) This variable was added in MySQL 3.23.25.

       ·  Select_scan

          The number of joins that did a full scan of the first table. This
          variable was added in MySQL 3.23.25.

       ·  Slave_open_temp_tables

          The number of temporary tables currently open by the slave SQL
          thread. This variable was added in MySQL 3.23.29.

       ·  Slave_running

          This is ON if this server is a slave that is connected to a master.
          This variable was added in MySQL 3.23.16.

       ·  Slave_retried_transactions

          Total (since startup) number of times the replication slave SQL
          thread has retried transactions. This variable was added in MySQL
          4.1.11.

       ·  Slow_launch_threads

          The number of threads that have taken more than slow_launch_time
          seconds to create. This variable was added in MySQL 3.23.15.

       ·  Slow_queries

          The number of queries that have taken more than long_query_time
          seconds. See Section 8.5, “The Slow Query Log”.

       ·  Sort_merge_passes

          The number of merge passes the sort algorithm has had to do. If this
          value is large, you should consider increasing the value of the
          sort_buffer_size system variable. This variable was added in MySQL
          3.23.28.

       ·  Sort_range

          The number of sorts that were done with ranges. This variable was
          added in MySQL 3.23.25.

       ·  Sort_rows

          The number of sorted rows. This variable was added in MySQL 3.23.25.

       ·  Sort_scan

          The number of sorts that were done by scanning the table. This
          variable was added in MySQL 3.23.25.

       ·  Ssl_xxx

          Variables used for SSL connections. These variables were added in
          MySQL 4.0.0.

       ·  Table_locks_immediate

          The number of times that a table lock was acquired immediately. This
          variable was added in MySQL 3.23.33.

       ·  Table_locks_waited

          The number of times that a table lock could not be acquired
          immediately and a wait was needed. If this is high, and you have
          performance problems, you should first optimize your queries, and
          then either split your table or tables or use replication. This
          variable was added in MySQL 3.23.33.

       ·  Threads_cached

          The number of threads in the thread cache. This variable was added
          in MySQL 3.23.17.

       ·  Threads_connected

          The number of currently open connections.

       ·  Threads_created

          The number of threads created to handle connections. If
          Threads_created is big, you may want to increase the
          thread_cache_size value. The cache hit rate can be calculated as
          Threads_created divided by Connections. This variable was added in
          MySQL 3.23.31.

       ·  Threads_running

          The number of threads that are not sleeping.

       ·  Uptime

          The number of seconds the server has been up.


SEE ALSO

       isamchk(1), isamlog(1), msql2mysql(1), myisamchk(1), myisamlog(1),
       myisampack(1), mysql(1), mysql.server(1), mysql_config(1),
       mysql_fix_privilege_tables(1), mysql_zap(1), mysqlaccess(1),
       mysqladmin(1), mysqlbinlog(1), mysqlcheck(1), mysqld_multi(1),
       mysqld_safe(1), mysqldump(1), mysqlhotcopy(1), mysqlimport(1),
       mysqlshow(1), pack_isam(1), perror(1), replace(1), safe_mysqld(1)

       For more information, please refer to the MySQL Reference Manual, which
       may already be installed locally and which is also available online at
       http://dev.mysql.com/doc/.


AUTHOR

       MySQL AB (http://www.mysql.com/).  This software comes with no
       warranty.



MySQL 4.1                         11/30/2005                         MYSQLD(1)

Man(1) output converted with man2html