Several variables and options are new or changed in MySQL 5.4 to provide more flexible runtime configuration, and better “out of box” configuration of default values for MySQL operation on up to 16-way x86 servers and 64-way CMT servers with 4GB or more memory.
The changes to InnoDB
configuration values may cause issues if you upgrade to MySQL
5.4 from an older version or MySQL, or if you
upgrade from MySQL 5.4.0 through 5.4.2 to 5.4.3 or higher. See
Section 2.12.1.1, “Upgrading from MySQL 5.1 to 5.4”.
These system variables are new:
innodb_adaptive_flushing
:
Controls adaptive flushing of dirty pages. Default:
ON
.
innodb_change_buffering
:
Controls insert buffering. Default:
inserts
(buffer insert operations).
innodb_file_format
: The
format for new InnoDB tables. Default:
Antelope
.
innodb_file_format_check
:
Whether to perform file format compatibility checking.
Default: ON
.
innodb_io_capacity
: The
limit on the maximum number of I/O operations per second
(IOPS) the server can perform. Default: 200.
innodb_read_ahead_threshold
:
Controls sensitivity of linear read-ahead. Default: 56.
innodb_replication_delay
:
The replication thread delay (in ms) on the slave server if
innodb_thread_concurrency
is reached. Default: 0.
innodb_read_io_threads
,
innodb_write_io_threads
:
The number of background I/O threads to use for read
prefetch requests and for writing dirty pages from the
buffer cache to disk. Default: 4.
innodb_spin_wait_delay
:
Maximum delay between polls for a spin lock. Default: 6.
innodb_stats_sample_pages
:
How many index pages to sample for statistics calculations.
Default: 8.
innodb_strict_mode
: Whether
InnoDB returns errors rather than warnings for certain
exceptional conditions (analogous to strict SQL mode).
Default: OFF
.
innodb_use_sys_malloc
:
Whether InnoDB uses the OS (system) or its own memory
allocator. Default: ON
.
innodb_version
: The version
of InnoDB.
More information about the new system variables can be found in
the InnoDB Plugin
Manual at
http://www.innodb.com/products/innodb_plugin/plugin-documentation.
The default or minimum value of these existing system variables has changed:
innodb_additional_mem_pool_size
:
Default increased from 1MB to 8MB.
innodb_buffer_pool_size
:
Default increased from 8 MB to 128MB. Minimum increased from
1MB to 5MB.
innodb_file_io_threads
:
Removed (replaced by
innodb_read_io_threads
and
innodb_write_io_threads
).
innodb_log_buffer_size
:
Default increased from 1MB to 8MB.
innodb_max_dirty_pages_pct
:
Default decreased from 90 to 75. Maximum decreased from 100
to 99 to never allow a completely dirty buffer pool.
innodb_sync_spin_loops
:
Default changed from 20 to 30.
innodb_thread_concurrency
:
Default changed from 8 to 0. In effect, this changes
concurrency from 8 to “infinite”.
table_definition_cache
:
Default and minimum increased from 256 to 400.
table_open_cache
: Default
increased from 64 to 400.
These system variables have been made dynamic and can be modified at runtime:
innodb_adaptive_hash_index
(global value)
innodb_file_per_table
(global value)
innodb_io_capacity
(global
value)
innodb_lock_wait_timeout
(global and session values)
This status variable is new:
Innodb_have_atomic_builtins
:
Indicates whether the server was built with atomic
instructions.
This server option is new:
--super-large-pages
: Boolean
option. Large page support is enhanced for recent SPARC
platforms. Standard use of large pages in MySQL attempts to
use the largest size supported, up to 4MB. Under Solaris, a
“super large pages” feature enables uses of
pages up to 256MB. This feature can be enabled or disabled
by using the
--super-large-pages
or
--skip-super-large-pages
option.
User Comments
Add your own comment.