GNU Info

Info Node: (mysql.info)SHOW VARIABLES

(mysql.info)SHOW VARIABLES


Next: SHOW LOGS Prev: SHOW STATUS Up: SHOW
Enter node , (file) or (file)node

`SHOW VARIABLES'
................

     SHOW VARIABLES [LIKE wild]

`SHOW VARIABLES' shows the values of some MySQL system variables.  You
can also get this information using the `mysqladmin variables' command.
If the default values are unsuitable, you can set most of these
variables using command-line options when `mysqld' starts up.  Note:
Command-line options.

The output resembles that shown below, though the format and numbers may
differ somewhat:

     +-------------------------+---------------------------+
     | Variable_name           | Value                     |
     +-------------------------+---------------------------+
     | ansi_mode               | OFF                       |
     | back_log                | 50                        |
     | basedir                 | /my/monty/                |
     | bdb_cache_size          | 16777216                  |
     | bdb_log_buffer_size     | 32768                     |
     | bdb_home                | /my/monty/data/           |
     | bdb_max_lock            | 10000                     |
     | bdb_logdir              |                           |
     | bdb_shared_data         | OFF                       |
     | bdb_tmpdir              | /tmp/                     |
     | binlog_cache_size       | 32768                     |
     | concurrent_insert       | ON                        |
     | connect_timeout         | 5                         |
     | datadir                 | /my/monty/data/           |
     | delay_key_write         | ON                        |
     | delayed_insert_limit    | 100                       |
     | delayed_insert_timeout  | 300                       |
     | delayed_queue_size      | 1000                      |
     | flush                   | OFF                       |
     | flush_time              | 0                         |
     | have_bdb                | YES                       |
     | have_innodb             | YES                       |
     | have_raid               | YES                       |
     | have_ssl                | NO                        |
     | init_file               |                           |
     | interactive_timeout     | 28800                     |
     | join_buffer_size        | 131072                    |
     | key_buffer_size         | 16776192                  |
     | language                | /my/monty/share/english/  |
     | large_files_support     | ON                        |
     | log                     | OFF                       |
     | log_update              | OFF                       |
     | log_bin                 | OFF                       |
     | log_slave_updates       | OFF                       |
     | long_query_time         | 10                        |
     | low_priority_updates    | OFF                       |
     | lower_case_table_names  | 0                         |
     | max_allowed_packet      | 1048576                   |
     | max_binlog_cache_size   | 4294967295                |
     | max_connections         | 100                       |
     | max_connect_errors      | 10                        |
     | max_delayed_threads     | 20                        |
     | max_heap_table_size     | 16777216                  |
     | max_join_size           | 4294967295                |
     | max_sort_length         | 1024                      |
     | max_tmp_tables          | 32                        |
     | max_write_lock_count    | 4294967295                |
     | myisam_recover_options  | DEFAULT                   |
     | myisam_sort_buffer_size | 8388608                   |
     | net_buffer_length       | 16384                     |
     | net_read_timeout        | 30                        |
     | net_retry_count         | 10                        |
     | net_write_timeout       | 60                        |
     | open_files_limit        | 0                         |
     | pid_file                | /my/monty/data/donna.pid  |
     | port                    | 3306                      |
     | protocol_version        | 10                        |
     | record_buffer           | 131072                    |
     | query_buffer_size       | 0                         |
     | safe_show_database      | OFF                       |
     | server_id               | 0                         |
     | skip_locking            | ON                        |
     | skip_networking         | OFF                       |
     | skip_show_database      | OFF                       |
     | slow_launch_time        | 2                         |
     | socket                  | /tmp/mysql.sock           |
     | sort_buffer             | 2097116                   |
     | table_cache             | 64                        |
     | table_type              | MYISAM                    |
     | thread_cache_size       | 4                         |
     | thread_stack            | 65536                     |
     | tmp_table_size          | 1048576                   |
     | tmpdir                  | /tmp/                     |
     | version                 | 3.23.29a-gamma-debug      |
     | wait_timeout            | 28800                     |
     +-------------------------+---------------------------+

Each option is described below. Values for buffer sizes, lengths, and
stack sizes are given in bytes.  You can specify values with a suffix
of `K' or `M' to indicate kilobytes or megabytes. For example, `16M'
indicates 16 megabytes.  The case of suffix letters does not matter;
`16M' and `16m' are equivalent:

``ansi_mode'.'
     Is `ON' if `mysqld' was started with `--ansi'.  Note: ANSI 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(2)' 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 will be
     ineffective.

``basedir''
     The value of the `--basedir' option.

``bdb_cache_size''
     The buffer that is allocated to cache index and rows for `BDB'
     tables.  If you don't use `BDB' tables, you should start `mysqld'
     with `--skip-bdb' to not waste memory for this cache.

``bdb_log_buffer_size''
     The buffer that is allocated to cache index and rows for `BDB'
     tables.  If you don't use `BDB' tables, you should set this to 0 or
     start `mysqld' with `--skip-bdb' to not waste memory for this
     cache.

``bdb_home''
     The value of the `--bdb-home' option.

``bdb_max_lock''
     The maximum number of locks (1000 by default) you can have active
     on a BDB table. You should increase this if you get errors of type
     `bdb: Lock table is out of available locks' or `Got error 12 from
     ...' when you have do long transactions or when `mysqld' has to
     examine a lot of rows to calculate the query.

``bdb_logdir''
     The value of the `--bdb-logdir' option.

``bdb_shared_data''
     Is `ON' if you are using `--bdb-shared-data'.

``bdb_tmpdir''
     The value of the `--bdb-tmpdir' option.

``binlog_cache_size'.  The size of the cache to hold the SQL'
     statements for the binary log during a transaction.  If you often
     use big, multi-statement transactions you can increase this to get
     more performance. Note: COMMIT.

``character_set''
     The default character set.

``character_sets''
     The supported character sets.

``concurrent_inserts''
     If `ON' (the default), MySQL will allow you to use `INSERT' on
     `MyISAM' tables at the same time as you run `SELECT' queries on
     them.  You can turn this option off by starting `mysqld' with
     `--safe' or `--skip-new'.

``connect_timeout''
     The number of seconds the `mysqld' server is waiting for a connect
     packet before responding with `Bad handshake'.

``datadir''
     The value of the `--datadir' option.

``delay_key_write''
     If enabled (is on by default), MySQL will honor the
     `delay_key_write' option `CREATE TABLE'.  This means that the key
     buffer for tables with this option will not get flushed on every
     index update, but only when a table is closed.  This will speed up
     writes on keys a lot, but you should add automatic checking of all
     tables with `myisamchk --fast --force' if you use this.  Note that
     if you start `mysqld' with the `--delay-key-write-for-all-tables'
     option this means that all tables will be treated as if they were
     created with the `delay_key_write' option.  You can clear this flag
     by starting `mysqld' with `--skip-new' or `--safe-mode'.

``delayed_insert_limit''
     After inserting `delayed_insert_limit' rows, the `INSERT DELAYED'
     handler will check if there are any `SELECT' statements pending.
     If so, it allows these to execute before continuing.

``delayed_insert_timeout''
     How long a `INSERT DELAYED' thread should wait for `INSERT'
     statements before terminating.

``delayed_queue_size''
     What size queue (in rows) should be allocated for handling `INSERT
     DELAYED'.  If the queue becomes full, any client that does `INSERT
     DELAYED' will wait until there is room in the queue again.

``flush''
     This is `ON' if you have started MySQL with the `--flush' option.

``flush_time''
     If this is set to a non-zero value, then every `flush_time'
     seconds all tables will be closed (to free up resources and sync
     things to disk). We only recommend this option on Win95, Win98, or
     on systems where you have very little resources.

``have_bdb''
     `YES' if `mysqld' supports Berkeley DB tables. `DISABLED' if
     `--skip-bdb' is used.

``have_innodb''
     `YES' if `mysqld' supports InnoDB tables. `DISABLED' if
     `--skip-innodb' is used.

``have_raid''
     `YES' if `mysqld' supports the `RAID' option.

``have_ssl''
     `YES' if `mysqld' supports SSL (encryption) on the client/server
     protocol.

``init_file''
     The name of the file specified with the `--init-file' option when
     you start the server.  This is a file of SQL statements you want
     the server to execute when it starts.

``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).  The buffer is allocated one time for each full
     join between two tables. Increase this value to get a faster full
     join when adding indexes is not possible. (Normally the best way
     to get fast joins is to add indexes.)

``key_buffer_size''
     Index blocks are buffered and are shared by all threads.
     `key_buffer_size' is the size of the buffer used for index blocks.

     Increase this to get better index handling (for all reads and
     multiple writes) to as much as you can afford; 64M on a 256M
     machine that mainly runs MySQL is quite common.  If you, however,
     make this too big (more than 50% of your total memory?) your
     system may start to page and become REALLY slow. Remember that
     because MySQL does not cache data read, that you will have to
     leave some room for the OS filesystem cache.

     You can check the performance of the key buffer by doing `show
     status' and examine the variables `Key_read_requests',
     `Key_reads', `Key_write_requests', and `Key_writes'.  The
     `Key_reads/Key_read_request' ratio should normally be < 0.01.  The
     `Key_write/Key_write_requests' is usually near 1 if you are using
     mostly updates/deletes but may be much smaller if you tend to do
     updates that affect many at the same time or if you are using
     `delay_key_write'. Note: SHOW.

     To get even more speed when writing many rows at the same time, use
     `LOCK TABLES'.  Note: `LOCK TABLES'.

``language''
     The language used for error messages.

``large_file_support''
     If `mysqld' was compiled with options for big file support.

``locked_in_memory''
     If `mysqld' was locked in memory with `--memlock'

``log''
     If logging of all queries is enabled.

``log_update''
     If the update log is enabled.

``log_bin''
     If the binary log is enabled.

``log_slave_updates''
     If the updates from the slave should be logged.

``long_query_time''
     If a query takes longer than this (in seconds), the `Slow_queries'
     counter will be incremented. If you are using
     `--log-slow-queries', the query will be logged to the slow query
     logfile. Note: Slow query log.

``lower_case_table_names''
     If set to 1 table names are stored in lowercase on disk and table
     names will be case-insensitive.  Note: Name case sensitivity.

``max_allowed_packet''
     The maximum size of one packet. The 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 big `BLOB' columns. It should be as
     big as the biggest `BLOB' you want to use.  The current protocol
     limits `max_allowed_packet' to 16M.

``max_binlog_cache_size''
     If a multi-statement transaction requires more than this amount of
     memory, one will get the error "Multi-statement transaction
     required more than 'max_binlog_cache_size' bytes of storage".

``max_binlog_size''
     Available after 3.23.33. If a write to the binary (replication)
     log exceeds the given value, rotate the logs. You cannot set it to
     less than 1024 bytes, or more than 1 GB. Default is 1 GB.

``max_connections''
     The number of simultaneous clients allowed. Increasing this value
     increases the number of file descriptors that `mysqld' requires.
     See below for comments on file descriptor limits. Note: Too many
     connections.

``max_connect_errors''
     If there is more than this number of interrupted connections from
     a host this host will be blocked from further connections.  You
     can unblock a host with the command `FLUSH HOSTS'.

``max_delayed_threads''
     Don't 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 will be
     inserted as if the `DELAYED' attribute wasn't specified.

``max_heap_table_size''
     Don't allow creation of heap tables bigger than this.

``max_join_size''
     Joins that are probably going to read more than `max_join_size'
     records return an error. Set this value if your users tend to
     perform joins that lack a `WHERE' clause, that take a long time,
     and that return millions of rows.

``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_user_connections''
     The maximum number of active connections for a single user (0 = no
     limit).

``max_tmp_tables''
     (This option doesn't yet do anything.)  Maximum number of
     temporary tables a client can keep open at the same time.

``max_write_lock_count''
     After this many write locks, allow some read locks to run in
     between.

``myisam_recover_options''
     The value of the `--myisam-recover' option.

``myisam_sort_buffer_size''
     The buffer that is allocated when sorting the index when doing a
     `REPAIR' or when creating indexes with `CREATE INDEX' or `ALTER
     TABLE'.

``myisam_max_extra_sort_file_size'.'
     If the creating of the temporary file for fast index creation
     would be this much bigger than using the key cache, then 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.  *NOTE* that this parameter is given in megabytes!

``myisam_max_sort_file_size''
     The maximum size of the temporary file MySQL is allowed to use
     while recreating the index (during `REPAIR', `ALTER TABLE' or
     `LOAD DATA INFILE'.  If the file size would be bigger than this,
     the index will be created through the key cache (which is slower).
     *NOTE* that this parameter is given in megabytes!

``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 size of a query.  (That is,
     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''
     Number of seconds to wait for more data from a connection before
     aborting the read.  Note that when we don't expect data from a
     connection, the timeout is defined by `write_timeout'. See also
     `slave_read_timeout'.

``net_retry_count''
     If a read on a communication port is interrupted, retry this many
     times before giving up.  This value should be quite high on
     `FreeBSD' as internal interrupts are sent to all threads.

``net_write_timeout''
     Number of seconds to wait for a block to be written to a
     connection before aborting the write.

``open_files_limit''
     If this is not 0, then `mysqld' will use this value to reserve file
     descriptors to use with `setrlimit()'.  If this value is 0 then
     `mysqld' will reserve `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''
     The value of the `--pid-file' option.

``port''
     The value of the `--port' option.

``protocol_version''
     The protocol version used by the MySQL server.

``record_buffer''
     Each thread that does a sequential scan allocates a buffer of this
     size for each table it scans. If you do many sequential scans, you
     may want to increase this value.

``record_rnd_buffer''
     When reading rows in sorted order after a sort, the rows are read
     through this buffer to avoid a disk seeks.  If not set, then it's
     set to the value of `record_buffer'.

``query_buffer_size''
     The initial allocation of the query buffer. If most of your
     queries are long (like when inserting blobs), you should increase
     this!

``safe_show_databases''
     Don't show databases for which the user doesn't have any database
     or table privileges. This can improve security if you're concerned
     about people being able to see what databases other users have.
     See also `skip_show_databases'.

``server_id''
     The value of the `--server-id' option.

``skip_locking''
     Is OFF if `mysqld' uses external locking.

``skip_networking''
     Is ON if we only allow local (socket) connections.

``skip_show_databases''
     This prevents people from doing `SHOW DATABASES' if they don't have
     the `PROCESS_PRIV' privilege. This can improve security if you're
     concerned about people being able to see what databases other users
     have. See also `safe_show_databases'.

``slave_read_timeout''
     Number of seconds to wait for more data from a master/slave
     connection before aborting the read.

``slow_launch_time''
     If creating the thread takes longer than this value (in seconds),
     the `Slow_launch_threads' counter will be incremented.

``socket''
     The Unix socket used by the server.

``sort_buffer''
     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.  Note: Temporary files.

``table_cache''
     The number of open tables for all threads. Increasing this value
     increases the number of file descriptors that `mysqld' requires.
     MySQL needs two file descriptors for each unique open table.  See
     below for comments on file descriptor limits. You can check if you
     need to increase the table cache by checking the `Opened_tables'
     variable. Note: SHOW.  If this variable is big and you don't do
     `FLUSH TABLES' a lot (which just forces all tables to be closed and
     reopenend), then you should increase the value of this variable.

     Make sure that your operating system can handle the number of open
     file descriptors implied by the `table_cache' setting.  If
     `table_cache' is set too high, MySQL may run out of file
     descriptors and refuse connections, fail to perform queries, and
     be very unreliable.

     For information about how the table cache works, see Note: Table
     cache.

``table_type''
     The default table type

``thread_cache_size''
     How many threads we should keep in a cache for reuse.  When a
     client disconnects, the client's threads are put in the cache if
     there aren't more than `thread_cache_size' threads from before.
     All new threads are first taken from the cache, 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 doesn't give a notable performance
     improvement if you have a good thread implementation.)  By examing
     the difference between the `Connections' and `Threads_created' you
     can see how efficient the current thread cache is for you.

``thread_concurrency''
     On Solaris, `mysqld' will call `thr_setconcurrency()' with this
     value.  `thr_setconcurrency()' permits the application to give the
     threads system a hint for the desired number of threads that should
     be run at the same time.

``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.  Note: MySQL Benchmarks.

``timezone''
     The timezone for the server.

``tmp_table_size''
     If an in-memory temporary table exceeds this size, MySQL will
     automatically convert 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.

``version''
     The version number for the server.

``wait_timeout''
     The number of seconds the server waits for activity on a
     connection before closing it. See also `interactive_timeout'.

The manual section that describes tuning MySQL contains some
information of how to tune the above variables. Note: Server
parameters.


automatically generated by info2www version 1.2.2.9