Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.1Mb
EPUB - 7.5Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  ...  /  サーバーシステム変数

5.1.4 サーバーシステム変数

MySQL Server には MySQL Server の構成方法を指示する多くのシステム変数が保持されています。各システム変数にはデフォルト値があります。システム変数は、コマンド行のオプションを使用するか、オプションファイルでサーバー起動時に設定できます。これらのほとんどは、SET ステートメントを使用してサーバーの実行中に動的に変更でき、これによりサーバーを停止して再起動することなくサーバーの動作を変更できます。システム変数値を式によって参照できます。

システム変数の名前と値を表示するにはいくつかの方法があります。

  • サーバーのコンパイル時のデフォルトおよび読み取られるオプションファイルに基づいて、サーバーが使用する値を表示するには、次のコマンドを使用します。

    mysqld --verbose --help
    
  • すべてのオプションファイルの設定を無視し、サーバーのコンパイル時のデフォルトに基づいてサーバーが使用する値を表示するには、次のコマンドを使用します。

    mysqld --no-defaults --verbose --help
    
  • 実行中のサーバーによって使用される現在の値を表示するには、SHOW VARIABLES ステートメントを使用します。

このセクションでは各システム変数について説明します。バージョンが示されていない変数は、すべての MySQL 5.6 リリースに存在します。

次の表は使用可能なすべてのシステム変数をリストしたものです。

表 5.3 システム変数のサマリー

名前 コマンド行 オプションファイル システム変数 変数スコープ 動的
audit_log_buffer_size はい はい はい グローバル いいえ
audit_log_connection_policy はい はい はい グローバル はい
audit_log_current_session     はい 両方 いいえ
audit_log_exclude_accounts はい はい はい グローバル はい
audit_log_file はい はい はい グローバル いいえ
audit_log_flush     はい グローバル はい
audit_log_format はい はい はい グローバル いいえ
audit_log_include_accounts はい はい はい グローバル はい
audit_log_policy はい はい はい グローバル 異なる
audit_log_rotate_on_size はい はい はい グローバル はい
audit_log_statement_policy はい はい はい グローバル はい
audit_log_strategy はい はい はい グローバル いいえ
auto_increment_increment     はい 両方 はい
auto_increment_offset     はい 両方 はい
autocommit はい はい はい 両方 はい
automatic_sp_privileges     はい グローバル はい
back_log     はい グローバル いいえ
basedir はい はい はい グローバル いいえ
big-tables はい はい     はい
- 変数: big_tables     はい 両方 はい
bind-address はい はい     いいえ
- 変数: bind_address     はい グローバル いいえ
binlog_cache_size はい はい はい グローバル はい
binlog_checksum     はい グローバル はい
binlog_direct_non_transactional_updates はい はい はい 両方 はい
binlog_error_action はい はい はい 両方 はい
binlog-format はい はい     はい
- 変数: binlog_format     はい 両方 はい
binlog_gtid_recovery_simplified はい はい はい グローバル いいえ
binlog_max_flush_queue_time     はい グローバル はい
binlog_order_commits     はい グローバル はい
binlog_row_image はい はい はい 両方 はい
binlog_rows_query_log_events     はい 両方 はい
binlog_stmt_cache_size はい はい はい グローバル はい
binlogging_impossible_mode はい はい はい 両方 はい
block_encryption_mode はい はい はい 両方 はい
bulk_insert_buffer_size はい はい はい 両方 はい
character_set_client     はい 両方 はい
character_set_connection     はい 両方 はい
character_set_database[a]     はい 両方 はい
character-set-filesystem はい はい     はい
- 変数: character_set_filesystem     はい 両方 はい
character_set_results     はい 両方 はい
character-set-server はい はい     はい
- 変数: character_set_server     はい 両方 はい
character_set_system     はい グローバル いいえ
character-sets-dir はい はい     いいえ
- 変数: character_sets_dir     はい グローバル いいえ
collation_connection     はい 両方 はい
collation_database[b]     はい 両方 はい
collation-server はい はい     はい
- 変数: collation_server     はい 両方 はい
completion_type はい はい はい 両方 はい
concurrent_insert はい はい はい グローバル はい
connect_timeout はい はい はい グローバル はい
core_file     はい グローバル いいえ
daemon_memcached_enable_binlog はい はい はい グローバル いいえ
daemon_memcached_engine_lib_name はい はい はい グローバル いいえ
daemon_memcached_engine_lib_path はい はい はい グローバル いいえ
daemon_memcached_option はい はい はい グローバル いいえ
daemon_memcached_r_batch_size はい はい はい グローバル いいえ
daemon_memcached_w_batch_size はい はい はい グローバル いいえ
datadir はい はい はい グローバル いいえ
date_format     はい グローバル いいえ
datetime_format     はい グローバル いいえ
debug はい はい はい 両方 はい
debug_sync     はい セッション はい
default-storage-engine はい はい     はい
- 変数: default_storage_engine     はい 両方 はい
default_tmp_storage_engine はい はい はい 両方 はい
default_week_format はい はい はい 両方 はい
delay-key-write はい はい     はい
- 変数: delay_key_write     はい グローバル はい
delayed_insert_limit はい はい はい グローバル はい
delayed_insert_timeout はい はい はい グローバル はい
delayed_queue_size はい はい はい グローバル はい
disable-gtid-unsafe-statements はい はい はい グローバル いいえ
disable_gtid_unsafe_statements はい はい はい グローバル いいえ
disconnect_on_expired_password はい はい はい セッション いいえ
div_precision_increment はい はい はい 両方 はい
end_markers_in_json     はい 両方 はい
enforce-gtid-consistency はい はい はい グローバル いいえ
enforce_gtid_consistency はい はい はい グローバル いいえ
engine-condition-pushdown はい はい     はい
- 変数: engine_condition_pushdown     はい 両方 はい
eq_range_index_dive_limit     はい 両方 はい
error_count     はい セッション いいえ
event-scheduler はい はい     はい
- 変数: event_scheduler     はい グローバル はい
expire_logs_days はい はい はい グローバル はい
explicit_defaults_for_timestamp はい はい はい セッション いいえ
external_user     はい セッション いいえ
flush はい はい はい グローバル はい
flush_time はい はい はい グローバル はい
foreign_key_checks     はい 両方 はい
ft_boolean_syntax はい はい はい グローバル はい
ft_max_word_len はい はい はい グローバル いいえ
ft_min_word_len はい はい はい グローバル いいえ
ft_query_expansion_limit はい はい はい グローバル いいえ
ft_stopword_file はい はい はい グローバル いいえ
general-log はい はい     はい
- 変数: general_log     はい グローバル はい
general_log_file はい はい はい グローバル はい
group_concat_max_len はい はい はい 両方 はい
gtid_done     はい 両方 いいえ
gtid_executed     はい 両方 いいえ
gtid_lost     はい グローバル いいえ
gtid-mode はい はい     いいえ
- 変数: gtid_mode     はい グローバル いいえ
gtid_mode     はい グローバル いいえ
gtid_next     はい セッション はい
gtid_owned     はい 両方 いいえ
gtid_purged     はい グローバル はい
have_compress     はい グローバル いいえ
have_crypt     はい グローバル いいえ
have_csv     はい グローバル いいえ
have_dynamic_loading     はい グローバル いいえ
have_geometry     はい グローバル いいえ
have_innodb     はい グローバル いいえ
have_ndbcluster     はい グローバル いいえ
have_openssl     はい グローバル いいえ
have_partitioning     はい グローバル いいえ
have_profiling     はい グローバル いいえ
have_query_cache     はい グローバル いいえ
have_rtree_keys     はい グローバル いいえ
have_ssl     はい グローバル いいえ
have_symlink     はい グローバル いいえ
host_cache_size     はい グローバル はい
hostname     はい グローバル いいえ
identity     はい セッション はい
ignore-builtin-innodb はい はい     いいえ
- 変数: ignore_builtin_innodb     はい グローバル いいえ
ignore_db_dirs     はい グローバル いいえ
init_connect はい はい はい グローバル はい
init-file はい はい     いいえ
- 変数: init_file     はい グローバル いいえ
init_slave はい はい はい グローバル はい
innodb_adaptive_flushing はい はい はい グローバル はい
innodb_adaptive_flushing_lwm はい はい はい グローバル はい
innodb_adaptive_hash_index はい はい はい グローバル はい
innodb_adaptive_max_sleep_delay はい はい はい グローバル はい
innodb_additional_mem_pool_size はい はい はい グローバル いいえ
innodb_api_bk_commit_interval はい はい はい グローバル はい
innodb_api_disable_rowlock はい はい はい グローバル いいえ
innodb_api_enable_binlog はい はい はい グローバル いいえ
innodb_api_enable_mdl はい はい はい グローバル いいえ
innodb_api_trx_level はい はい はい グローバル はい
innodb_autoextend_increment はい はい はい グローバル はい
innodb_autoinc_lock_mode はい はい はい グローバル いいえ
innodb_buffer_pool_dump_at_shutdown はい はい はい グローバル はい
innodb_buffer_pool_dump_now はい はい はい グローバル はい
innodb_buffer_pool_filename はい はい はい グローバル はい
innodb_buffer_pool_instances はい はい はい グローバル いいえ
innodb_buffer_pool_load_abort はい はい はい グローバル はい
innodb_buffer_pool_load_at_startup はい はい はい グローバル いいえ
innodb_buffer_pool_load_now はい はい はい グローバル はい
innodb_buffer_pool_size はい はい はい グローバル いいえ
innodb_change_buffer_max_size はい はい はい グローバル はい
innodb_change_buffering はい はい はい グローバル はい
innodb_checksum_algorithm はい はい はい グローバル はい
innodb_checksums はい はい はい グローバル いいえ
innodb_cmp_per_index_enabled はい はい はい グローバル はい
innodb_commit_concurrency はい はい はい グローバル はい
innodb_compression_failure_threshold_pct はい はい はい グローバル はい
innodb_compression_level はい はい はい グローバル はい
innodb_compression_pad_pct_max はい はい はい グローバル はい
innodb_concurrency_tickets はい はい はい グローバル はい
innodb_data_file_path はい はい はい グローバル いいえ
innodb_data_home_dir はい はい はい グローバル いいえ
innodb_disable_sort_file_cache はい はい はい グローバル はい
innodb_doublewrite はい はい はい グローバル いいえ
innodb_fast_shutdown はい はい はい グローバル はい
innodb_file_format はい はい はい グローバル はい
innodb_file_format_check はい はい はい グローバル いいえ
innodb_file_format_max はい はい はい グローバル はい
innodb_file_per_table はい はい はい グローバル はい
innodb_flush_log_at_timeout     はい グローバル はい
innodb_flush_log_at_trx_commit はい はい はい グローバル はい
innodb_flush_method はい はい はい グローバル いいえ
innodb_flush_neighbors はい はい はい グローバル はい
innodb_flushing_avg_loops はい はい はい グローバル はい
innodb_force_load_corrupted はい はい はい グローバル いいえ
innodb_force_recovery はい はい はい グローバル いいえ
innodb_ft_aux_table     はい グローバル はい
innodb_ft_cache_size はい はい はい グローバル いいえ
innodb_ft_enable_diag_print はい はい はい グローバル はい
innodb_ft_enable_stopword はい はい はい グローバル はい
innodb_ft_max_token_size はい はい はい グローバル いいえ
innodb_ft_min_token_size はい はい はい グローバル いいえ
innodb_ft_num_word_optimize はい はい はい グローバル はい
innodb_ft_result_cache_limit はい はい はい グローバル はい
innodb_ft_server_stopword_table はい はい はい グローバル はい
innodb_ft_sort_pll_degree はい はい はい グローバル いいえ
innodb_ft_total_cache_size はい はい はい グローバル いいえ
innodb_ft_user_stopword_table はい はい はい 両方 はい
innodb_io_capacity はい はい はい グローバル はい
innodb_io_capacity_max はい はい はい グローバル はい
innodb_large_prefix はい はい はい グローバル はい
innodb_lock_wait_timeout はい はい はい 両方 はい
innodb_locks_unsafe_for_binlog はい はい はい グローバル いいえ
innodb_log_buffer_size はい はい はい グローバル いいえ
innodb_log_compressed_pages はい はい はい グローバル はい
innodb_log_file_size はい はい はい グローバル いいえ
innodb_log_files_in_group はい はい はい グローバル いいえ
innodb_log_group_home_dir はい はい はい グローバル いいえ
innodb_lru_scan_depth はい はい はい グローバル はい
innodb_max_dirty_pages_pct はい はい はい グローバル はい
innodb_max_dirty_pages_pct_lwm はい はい はい グローバル はい
innodb_max_purge_lag はい はい はい グローバル はい
innodb_max_purge_lag_delay はい はい はい グローバル はい
innodb_mirrored_log_groups はい はい はい グローバル いいえ
innodb_monitor_disable はい はい はい グローバル はい
innodb_monitor_enable はい はい はい グローバル はい
innodb_monitor_reset はい はい はい グローバル はい
innodb_monitor_reset_all はい はい はい グローバル はい
innodb_old_blocks_pct はい はい はい グローバル はい
innodb_old_blocks_time はい はい はい グローバル はい
innodb_online_alter_log_max_size はい はい はい グローバル はい
innodb_open_files はい はい はい グローバル いいえ
innodb_optimize_fulltext_only はい はい はい グローバル はい
innodb_page_size はい はい はい グローバル いいえ
innodb_print_all_deadlocks はい はい はい グローバル はい
innodb_purge_batch_size はい はい はい グローバル はい
innodb_purge_threads はい はい はい グローバル いいえ
innodb_random_read_ahead はい はい はい グローバル はい
innodb_read_ahead_threshold はい はい はい グローバル はい
innodb_read_io_threads はい はい はい グローバル いいえ
innodb_read_only はい はい はい グローバル いいえ
innodb_replication_delay はい はい はい グローバル はい
innodb_rollback_on_timeout はい はい はい グローバル いいえ
innodb_rollback_segments はい はい はい グローバル はい
innodb_sort_buffer_size はい はい はい グローバル いいえ
innodb_spin_wait_delay はい はい はい グローバル はい
innodb_stats_auto_recalc はい はい はい グローバル はい
innodb_stats_method はい はい はい グローバル はい
innodb_stats_on_metadata はい はい はい グローバル はい
innodb_stats_persistent はい はい はい グローバル はい
innodb_stats_persistent_sample_pages はい はい はい グローバル はい
innodb_stats_sample_pages はい はい はい グローバル はい
innodb_stats_transient_sample_pages はい はい はい グローバル はい
innodb_status_output はい はい はい グローバル はい
innodb_status_output_locks はい はい はい グローバル はい
innodb_strict_mode はい はい はい 両方 はい
innodb_support_xa はい はい はい 両方 はい
innodb_sync_array_size はい はい はい グローバル いいえ
innodb_sync_spin_loops はい はい はい グローバル はい
innodb_table_locks はい はい はい 両方 はい
innodb_thread_concurrency はい はい はい グローバル はい
innodb_thread_sleep_delay はい はい はい グローバル はい
innodb_undo_directory はい はい はい グローバル いいえ
innodb_undo_logs はい はい はい グローバル はい
innodb_undo_tablespaces はい はい はい グローバル いいえ
innodb_use_native_aio はい はい はい グローバル いいえ
innodb_use_sys_malloc はい はい はい グローバル いいえ
innodb_version     はい グローバル いいえ
innodb_write_io_threads はい はい はい グローバル いいえ
insert_id     はい セッション はい
interactive_timeout はい はい はい 両方 はい
join_buffer_size はい はい はい 両方 はい
keep_files_on_create はい はい はい 両方 はい
key_buffer_size はい はい はい グローバル はい
key_cache_age_threshold はい はい はい グローバル はい
key_cache_block_size はい はい はい グローバル はい
key_cache_division_limit はい はい はい グローバル はい
language はい はい はい グローバル いいえ
large_files_support     はい グローバル いいえ
large_page_size     はい グローバル いいえ
large-pages はい はい     いいえ
- 変数: large_pages     はい グローバル いいえ
last_insert_id     はい セッション はい
lc-messages はい はい     はい
- 変数: lc_messages     はい 両方 はい
lc-messages-dir はい はい     いいえ
- 変数: lc_messages_dir     はい グローバル いいえ
lc_time_names     はい 両方 はい
license     はい グローバル いいえ
local_infile     はい グローバル はい
lock_wait_timeout はい はい はい 両方 はい
locked_in_memory     はい グローバル いいえ
log はい はい はい グローバル はい
log-bin はい はい はい グローバル いいえ
log_bin     はい グローバル いいえ
log_bin_basename     はい グローバル いいえ
log_bin_index     はい グローバル いいえ
log-bin-trust-function-creators はい はい     はい
- 変数: log_bin_trust_function_creators     はい グローバル はい
log-bin-use-v1-row-events はい はい     いいえ
- 変数: log_bin_use_v1_row_events     はい グローバル いいえ
log_bin_use_v1_row_events はい はい はい グローバル いいえ
log-error はい はい     いいえ
- 変数: log_error     はい グローバル いいえ
log-output はい はい     はい
- 変数: log_output     はい グローバル はい
log-queries-not-using-indexes はい はい     はい
- 変数: log_queries_not_using_indexes     はい グローバル はい
log-slave-updates はい はい     いいえ
- 変数: log_slave_updates     はい グローバル いいえ
log_slave_updates はい はい はい グローバル いいえ
log_slow_admin_statements     はい グローバル はい
log-slow-queries はい はい     はい
- 変数: log_slow_queries     はい グローバル はい
log_slow_slave_statements     はい グローバル はい
log_throttle_queries_not_using_indexes     はい グローバル はい
log-warnings はい はい     はい
- 変数: log_warnings     はい 異なる はい
long_query_time はい はい はい 両方 はい
low-priority-updates はい はい     はい
- 変数: low_priority_updates     はい 両方 はい
lower_case_file_system     はい グローバル いいえ
lower_case_table_names はい はい はい グローバル いいえ
master_info_repository はい はい はい グローバル はい
master_verify_checksum     はい グローバル はい
max_allowed_packet はい はい はい グローバル はい
max_binlog_cache_size はい はい はい グローバル はい
max_binlog_size はい はい はい グローバル はい
max_binlog_stmt_cache_size はい はい はい グローバル はい
max_connect_errors はい はい はい グローバル はい
max_connections はい はい はい グローバル はい
max_delayed_threads はい はい はい 両方 はい
max_error_count はい はい はい 両方 はい
max_heap_table_size はい はい はい 両方 はい
max_insert_delayed_threads     はい 両方 はい
max_join_size はい はい はい 両方 はい
max_length_for_sort_data はい はい はい 両方 はい
max_prepared_stmt_count はい はい はい グローバル はい
max_relay_log_size はい はい はい グローバル はい
max_seeks_for_key はい はい はい 両方 はい
max_sort_length はい はい はい 両方 はい
max_sp_recursion_depth はい はい はい 両方 はい
max_user_connections はい はい はい 両方 はい
max_write_lock_count はい はい はい グローバル はい
metadata_locks_cache_size     はい グローバル いいえ
metadata_locks_hash_instances     はい グローバル いいえ
min-examined-row-limit はい はい はい 両方 はい
myisam_data_pointer_size はい はい はい グローバル はい
myisam_max_sort_file_size はい はい はい グローバル はい
myisam_mmap_size はい はい はい グローバル いいえ
myisam_recover_options     はい グローバル いいえ
myisam_repair_threads はい はい はい 両方 はい
myisam_sort_buffer_size はい はい はい 両方 はい
myisam_stats_method はい はい はい 両方 はい
myisam_use_mmap はい はい はい グローバル はい
named_pipe     はい グローバル いいえ
ndb_autoincrement_prefetch_sz はい はい はい 両方 はい
ndb-batch-size はい はい はい グローバル いいえ
ndb-blob-read-batch-bytes はい はい はい 両方 はい
ndb-blob-write-batch-bytes はい はい はい 両方 はい
ndb_cache_check_time はい はい はい グローバル はい
ndb-cluster-connection-pool はい はい はい グローバル いいえ
ndb-deferred-constraints はい はい     はい
- 変数: ndb_deferred_constraints     はい 両方 はい
ndb_deferred_constraints はい はい はい 両方 はい
ndb-distribution はい はい     はい
- 変数: ndb_distribution     はい グローバル はい
ndb_distribution はい はい はい グローバル はい
ndb_eventbuffer_max_alloc はい はい はい グローバル はい
ndb_extra_logging はい はい はい グローバル はい
ndb_force_send はい はい はい 両方 はい
ndb_index_stat_cache_entries はい はい はい 両方 はい
ndb_index_stat_enable はい はい はい 両方 はい
ndb_index_stat_option はい はい はい 両方 はい
ndb_index_stat_update_freq はい はい はい 両方 はい
ndb_join_pushdown     はい 両方 はい
ndb-log-apply-status はい はい     いいえ
- 変数: ndb_log_apply_status     はい グローバル いいえ
ndb_log_apply_status はい はい はい グローバル いいえ
ndb_log_bin はい   はい 両方 はい
ndb_log_binlog_index はい   はい グローバル はい
ndb-log-empty-epochs はい はい はい グローバル はい
ndb_log_empty_epochs はい はい はい グローバル はい
ndb-log-exclusive-reads はい はい     はい
- 変数: ndb_log_exclusive_reads     はい 両方 はい
ndb_log_exclusive_reads はい はい はい 両方 はい
ndb-log-orig はい はい     いいえ
- 変数: ndb_log_orig     はい グローバル いいえ
ndb_log_orig はい はい はい グローバル いいえ
ndb-log-transaction-id はい はい     いいえ
- 変数: ndb_log_transaction_id     はい グローバル いいえ
ndb_log_transaction_id     はい グローバル いいえ
ndb-log-update-as-write はい はい はい グローバル はい
ndb_log_updated_only はい はい はい グローバル はい
ndb_optimization_delay     はい グローバル はい
ndb_optimized_node_selection はい はい はい グローバル いいえ
ndb_recv_thread_cpu_mask     はい グローバル はい
ndb_show_foreign_key_mock_tables はい はい はい グローバル はい
ndb_slave_conflict_role はい はい はい グローバル はい
Ndb_slave_last_conflict_epoch     はい グローバル いいえ
Ndb_slave_max_replicated_epoch     はい グローバル いいえ
ndb_table_no_logging     はい セッション はい
ndb_table_temporary     はい セッション はい
ndb_use_copying_alter_table     はい 両方 いいえ
ndb_use_exact_count     はい 両方 はい
ndb_use_transactions はい はい はい 両方 はい
ndb_version     はい グローバル いいえ
ndb_version_string     はい グローバル いいえ
ndb-wait-connected はい はい はい グローバル いいえ
ndb-wait-setup はい はい はい グローバル いいえ
ndbinfo_database     はい グローバル いいえ
ndbinfo_max_bytes はい   はい 両方 はい
ndbinfo_max_rows はい   はい 両方 はい
ndbinfo_offline     はい グローバル はい
ndbinfo_show_hidden はい   はい 両方 はい
ndbinfo_table_prefix はい   はい 両方 はい
ndbinfo_version     はい グローバル いいえ
net_buffer_length はい はい はい 両方 はい
net_read_timeout はい はい はい 両方 はい
net_retry_count はい はい はい 両方 はい
net_write_timeout はい はい はい 両方 はい
new はい はい はい 両方 はい
old はい はい はい グローバル いいえ
old-alter-table はい はい     はい
- 変数: old_alter_table     はい 両方 はい
old_passwords     はい 両方 はい
open-files-limit はい はい     いいえ
- 変数: open_files_limit     はい グローバル いいえ
optimizer_join_cache_level はい はい はい 両方 はい
optimizer_prune_level はい はい はい 両方 はい
optimizer_search_depth はい はい はい 両方 はい
optimizer_switch はい はい はい 両方 はい
optimizer_trace     はい 両方 はい
optimizer_trace_features     はい 両方 はい
optimizer_trace_limit     はい 両方 はい
optimizer_trace_max_mem_size     はい 両方 はい
optimizer_trace_offset     はい 両方 はい
performance_schema はい はい はい グローバル いいえ
performance_schema_accounts_size はい はい はい グローバル いいえ
performance_schema_digests_size はい はい はい グローバル いいえ
performance_schema_events_stages_history_long_size はい はい はい グローバル いいえ
performance_schema_events_stages_history_size はい はい はい グローバル いいえ
performance_schema_events_statements_history_long_size はい はい はい グローバル いいえ
performance_schema_events_statements_history_size はい はい はい グローバル いいえ
performance_schema_events_waits_history_long_size はい はい はい グローバル いいえ
performance_schema_events_waits_history_size はい はい はい グローバル いいえ
performance_schema_hosts_size はい はい はい グローバル いいえ
performance_schema_max_cond_classes はい はい はい グローバル いいえ
performance_schema_max_cond_instances はい はい はい グローバル いいえ
performance_schema_max_file_classes はい はい はい グローバル いいえ
performance_schema_max_file_handles はい はい はい グローバル いいえ
performance_schema_max_file_instances はい はい はい グローバル いいえ
performance_schema_max_mutex_classes はい はい はい グローバル いいえ
performance_schema_max_mutex_instances はい はい はい グローバル いいえ
performance_schema_max_rwlock_classes はい はい はい グローバル いいえ
performance_schema_max_rwlock_instances はい はい はい グローバル いいえ
performance_schema_max_socket_classes はい はい はい グローバル いいえ
performance_schema_max_socket_instances はい はい はい グローバル いいえ
performance_schema_max_stage_classes はい はい はい グローバル いいえ
performance_schema_max_statement_classes はい はい はい グローバル いいえ
performance_schema_max_table_handles はい はい はい グローバル いいえ
performance_schema_max_table_instances はい はい はい グローバル いいえ
performance_schema_max_thread_classes はい はい はい グローバル いいえ
performance_schema_max_thread_instances はい はい はい グローバル いいえ
performance_schema_session_connect_attrs_size はい はい はい グローバル いいえ
performance_schema_setup_actors_size はい はい はい グローバル いいえ
performance_schema_setup_objects_size はい はい はい グローバル いいえ
performance_schema_users_size はい はい はい グローバル いいえ
pid-file はい はい     いいえ
- 変数: pid_file     はい グローバル いいえ
plugin_dir はい はい はい グローバル いいえ
port はい はい はい グローバル いいえ
preload_buffer_size はい はい はい 両方 はい
profiling     はい 両方 はい
profiling_history_size はい はい はい 両方 はい
protocol_version     はい グローバル いいえ
proxy_user     はい セッション いいえ
pseudo_slave_mode     はい セッション はい
pseudo_thread_id     はい セッション はい
query_alloc_block_size はい はい はい 両方 はい
query_cache_limit はい はい はい グローバル はい
query_cache_min_res_unit はい はい はい グローバル はい
query_cache_size はい はい はい グローバル はい
query_cache_type はい はい はい 両方 はい
query_cache_wlock_invalidate はい はい はい 両方 はい
query_prealloc_size はい はい はい 両方 はい
rand_seed1     はい セッション はい
rand_seed2     はい セッション はい
range_alloc_block_size はい はい はい 両方 はい
read_buffer_size はい はい はい 両方 はい
read_only はい はい はい グローバル はい
read_rnd_buffer_size はい はい はい 両方 はい
relay-log はい はい     いいえ
- 変数: relay_log     はい グローバル いいえ
relay_log_basename     はい グローバル いいえ
relay-log-index はい はい     いいえ
- 変数: relay_log_index     はい グローバル いいえ
relay_log_index はい はい はい グローバル いいえ
relay_log_info_file はい はい はい グローバル いいえ
relay_log_info_repository     はい グローバル はい
relay_log_purge はい はい はい グローバル はい
relay_log_recovery はい はい はい グローバル 異なる
relay_log_space_limit はい はい はい グローバル いいえ
report-host はい はい     いいえ
- 変数: report_host     はい グローバル いいえ
report-password はい はい     いいえ
- 変数: report_password     はい グローバル いいえ
report-port はい はい     いいえ
- 変数: report_port     はい グローバル いいえ
report-user はい はい     いいえ
- 変数: report_user     はい グローバル いいえ
rpl_semi_sync_master_enabled     はい グローバル はい
rpl_semi_sync_master_timeout     はい グローバル はい
rpl_semi_sync_master_trace_level     はい グローバル はい
rpl_semi_sync_master_wait_no_slave     はい グローバル はい
rpl_semi_sync_slave_enabled     はい グローバル はい
rpl_semi_sync_slave_trace_level     はい グローバル はい
rpl_stop_slave_timeout はい はい はい グローバル はい
secure-auth はい はい     はい
- 変数: secure_auth     はい グローバル はい
secure-file-priv はい はい     いいえ
- 変数: secure_file_priv     はい グローバル いいえ
server-id はい はい     はい
- 変数: server_id     はい グローバル はい
server-id-bits はい はい     いいえ
- 変数: server_id_bits     はい グローバル いいえ
server_id_bits はい はい はい グローバル いいえ
server_uuid     はい グローバル いいえ
sha256_password_private_key_path     はい グローバル いいえ
sha256_password_public_key_path     はい グローバル いいえ
shared_memory はい はい はい グローバル いいえ
shared_memory_base_name     はい グローバル いいえ
simplified_binlog_gtid_recovery はい はい はい グローバル いいえ
skip_external_locking はい はい はい グローバル いいえ
skip-name-resolve はい はい     いいえ
- 変数: skip_name_resolve     はい グローバル いいえ
skip-networking はい はい     いいえ
- 変数: skip_networking     はい グローバル いいえ
skip-show-database はい はい     いいえ
- 変数: skip_show_database     はい グローバル いいえ
slave_allow_batching はい はい はい グローバル はい
slave_checkpoint_group はい はい はい グローバル はい
slave_checkpoint_period はい はい はい グローバル はい
slave_compressed_protocol はい はい はい グローバル はい
slave_exec_mode はい はい はい グローバル はい
slave-load-tmpdir はい はい     いいえ
- 変数: slave_load_tmpdir     はい グローバル いいえ
slave_max_allowed_packet     はい グローバル はい
slave-net-timeout はい はい     はい
- 変数: slave_net_timeout     はい グローバル はい
slave_parallel_workers はい   はい グローバル はい
slave_pending_jobs_size_max     はい グローバル はい
slave_rows_search_algorithms     はい グローバル はい
slave-skip-errors はい はい     いいえ
- 変数: slave_skip_errors     はい グローバル いいえ
slave_sql_verify_checksum     はい グローバル はい
slave_transaction_retries はい はい はい グローバル はい
slave_type_conversions はい はい はい グローバル いいえ
slow_launch_time はい はい はい グローバル はい
slow-query-log はい はい     はい
- 変数: slow_query_log     はい グローバル はい
slow_query_log_file はい はい はい グローバル はい
socket はい はい はい グローバル いいえ
sort_buffer_size はい はい はい 両方 はい
sql_auto_is_null     はい 両方 はい
sql_big_selects     はい 両方 はい
sql_big_tables     はい 両方 はい
sql_buffer_result     はい 両方 はい
sql_log_bin     はい 両方 はい
sql_log_off     はい 両方 はい
sql_low_priority_updates     はい 両方 はい
sql_max_join_size     はい 両方 はい
sql-mode はい はい     はい
- 変数: sql_mode     はい 両方 はい
sql_notes     はい 両方 はい
sql_quote_show_create     はい 両方 はい
sql_safe_updates     はい 両方 はい
sql_select_limit     はい 両方 はい
sql_slave_skip_counter     はい グローバル はい
sql_warnings     はい 両方 はい
ssl-ca はい はい     いいえ
- 変数: ssl_ca     はい グローバル いいえ
ssl-capath はい はい     いいえ
- 変数: ssl_capath     はい グローバル いいえ
ssl-cert はい はい     いいえ
- 変数: ssl_cert     はい グローバル いいえ
ssl-cipher はい はい     いいえ
- 変数: ssl_cipher     はい グローバル いいえ
ssl-crl はい はい     いいえ
- 変数: ssl_crl     はい グローバル いいえ
ssl-crlpath はい はい     いいえ
- 変数: ssl_crlpath     はい グローバル いいえ
ssl-key はい はい     いいえ
- 変数: ssl_key     はい グローバル いいえ
storage_engine     はい 両方 はい
stored_program_cache はい はい はい グローバル はい
sync_binlog はい はい はい グローバル はい
sync_frm はい はい はい グローバル はい
sync_master_info はい はい はい グローバル はい
sync_relay_log はい はい はい グローバル はい
sync_relay_log_info はい はい はい グローバル はい
system_time_zone     はい グローバル いいえ
table_definition_cache     はい グローバル はい
table_open_cache     はい グローバル はい
table_open_cache_instances     はい グローバル いいえ
thread_cache_size はい はい はい グローバル はい
thread_concurrency はい はい はい グローバル いいえ
thread_handling はい はい はい グローバル いいえ
thread_pool_algorithm はい はい はい グローバル いいえ
thread_pool_high_priority_connection はい はい はい 両方 はい
thread_pool_max_unused_threads はい はい はい グローバル はい
thread_pool_prio_kickup_timer はい はい はい 両方 はい
thread_pool_size はい はい はい グローバル いいえ
thread_pool_stall_limit はい はい はい グローバル はい
thread_stack はい はい はい グローバル いいえ
time_format     はい グローバル いいえ
time_zone     はい 両方 はい
timed_mutexes はい はい はい グローバル はい
timestamp     はい セッション はい
tmp_table_size はい はい はい 両方 はい
tmpdir はい はい はい グローバル いいえ
transaction_alloc_block_size はい はい はい 両方 はい
transaction_allow_batching     はい セッション はい
transaction_prealloc_size はい はい はい 両方 はい
tx_isolation     はい 両方 はい
tx_read_only     はい 両方 はい
unique_checks     はい 両方 はい
updatable_views_with_limit はい はい はい 両方 はい
validate_password_dictionary_file     はい グローバル いいえ
validate_password_length     はい グローバル はい
validate_password_mixed_case_count     はい グローバル はい
validate_password_number_count     はい グローバル はい
validate_password_policy     はい グローバル はい
validate_password_special_char_count     はい グローバル はい
validate_user_plugins     はい グローバル いいえ
version     はい グローバル いいえ
version_comment     はい グローバル いいえ
version_compile_machine     はい グローバル いいえ
version_compile_os     はい グローバル いいえ
wait_timeout はい はい はい 両方 はい
warning_count     はい セッション いいえ

[a] このオプションは動的ですが、サーバーのみがこの情報を設定するようにしてください。この変数の値は手動で設定しないでください。

[b] このオプションは動的ですが、サーバーのみがこの情報を設定するようにしてください。この変数の値は手動で設定しないでください。


追加のシステム変数情報については、次のセクションを参照してください。

注記

次の変数説明の一部では、変数を有効にするまたは無効にすることについて述べています。これらの変数は SET ステートメントを ON または 1 に設定すると有効になり、あるいは OFF または 0 に設定すると無効になります。ただし、MySQL 5.6.2 より前では、このような値をコマンド行またはオプションファイルで設定するには 1 または 0 で設定する必要があり、ON または OFF に設定しても機能しません。たとえば、コマンド行において、--delay_key_write=1 は機能しますが、--delay_key_write=ON は機能しません。MySQL 5.6.2 以降では、起動時にブール変数を ONTRUEOFF、および FALSE に設定できます (大文字小文字を区別しない)。セクション4.2.5「プログラムオプション修飾子」を参照してください。

一部のシステム変数はバッファーまたはキャッシュのサイズを制御します。所定のバッファーについて、サーバーは内部データ構造を割り当てる必要がある場合もあります。これらの構造は、バッファーに割り当てられた合計メモリーから割り当てられ、必要なスペースの量はプラットフォームに依存することがあります。つまり、バッファーサイズを制御するシステム変数に値を割り当てたとき、実際に使用可能なスペースの量が、割り当てられた値と異なる場合もあることを意味します。一部の場合では、この量は割り当てられた値より少ないこともあります。また、サーバーが値を上方に調整することも考えられます。たとえば、最小値が 1024 の変数に値 0 を割り当てた場合、サーバーは値を 1024 に設定します。

バッファーサイズ、長さ、およびスタックサイズの値は、別途指定しないかぎりバイト単位で指定されます。

一部のシステム変数はファイル名の値を取ります。別途指定しないかぎり、値が相対パス名であれば、デフォルトのファイルの場所はデータディレクトリです。場所を明示的に指定するには、絶対パス名を使用します。たとえばデータディレクトリが /var/mysql/data だとします。ファイル値の変数が相対パス名として指定された場合、ファイルは /var/mysql/data の下に配置されます。値が絶対パス名である場合、その場所はパス名によって指定されます。

  • authentication_windows_log_level

    導入 5.6.10
    コマンド行形式 --authentication_windows_log_level
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 4

    この変数は、authentication_windows Windows 認証プラグインが使用可能で、デバッグコードが有効な場合のみ使用できます。セクション6.3.8.6「Windows ネイティブ認証プラグイン」を参照してください。

    この変数は、Windows 認証プラグインのロギングレベルを設定します。次の表は、許可される値を示しています。

    説明
    0 ロギングなし
    1 エラーメッセージのみログに記録します
    2 レベル 1 メッセージおよび警告メッセージをログに記録します
    3 レベル 2 メッセージおよび情報メモをログに記録します
    4 レベル 3 メッセージおよびデバッグメッセージをログに記録します

    この変数は MySQL 5.6.10 で追加されました。

  • authentication_windows_use_principal_name

    導入 5.6.10
    コマンド行形式 --authentication_windows_use_principal_name
    許可されている値 ブール
    デフォルト ON

    この変数は、authentication_windows Windows 認証プラグインが使用可能な場合のみ使用できます。セクション6.3.8.6「Windows ネイティブ認証プラグイン」を参照してください。

    InitSecurityContext() 関数を使用して認証するクライアントは、接続するサービスを識別する文字列を提供する必要があります (targetName)。MySQL は、サーバーが実行するアカウントの主体名 (UPN) を使用します。UPN は user_id@computer_name という形式で、使用される場所に登録される必要はありません。この UPN は、認証ハンドシェイクの最初にサーバーによって送信されます。

    この変数は、サーバーが初期チャレンジで UPN を送信するかどうかを制御します。デフォルトでは、変数は有効になっています。セキュリティー上の理由で、サーバーのアカウント名を平文でクライアントに送信しないようにするために、これを無効にできます。変数が無効な場合、サーバーは最初のチャレンジで常に 0x00 バイトを送信し、クライアントは targetName を指定せず、結果として NTLM 認証が使用されます。

    サーバーがその UPN を取得できない場合 (これは Kerberos 認証をサポートしない環境で主に発生します)、UPN はサーバーによって送信されず、NTLM 認証が使用されます。

    この変数は MySQL 5.6.10 で追加されました。

  • autocommit

    コマンド行形式 --autocommit[=#]
    システム変数 名前 autocommit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト ON

    自動コミットモード。1 に設定された場合、テーブルへのすべての変更はすぐに有効になります。0 に設定した場合、COMMIT を使用してトランザクションを受け入れるか、ROLLBACK でトランザクションをキャンセルする必要があります。autocommit が 0 で、これを 1 に変更した場合、MySQL はオープン中のすべてのトランザクションの自動的な COMMIT を実行します。トランザクションを始める別の方法は、START TRANSACTION または BEGIN ステートメントを利用する方法です。セクション13.3.1「START TRANSACTION、COMMIT、および ROLLBACK 構文」を参照してください。

    デフォルトでは、クライアント接続は autocommit を 1 に設定して開始されます。デフォルト 0 でクライアントを開始させるには、--autocommit=0 オプションを使用してサーバーを開始することによって、グローバルな autocommit 値を設定します。オプションファイルを使用して変数を設定するには、次の行を含めます。

    [mysqld]
    autocommit=0
    
  • automatic_sp_privileges

    システム変数 名前 automatic_sp_privileges
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト TRUE

    この変数の値が 1 (デフォルト) のとき、ユーザーがルーチンを実行して変更したりドロップしたりできない場合、サーバーは自動的に EXECUTE および ALTER ROUTINE の権限をストアドルーチンの作成者に付与します。(ルーチンをドロップするには ALTER ROUTINE 権限が必要です。)ルーチンがドロップされると、サーバーはそれらの権限を作成者から自動的にドロップします。automatic_sp_privileges が 0 の場合、サーバーはこれらの権限を自動的に追加またはドロップしません。

    ルーチンの作成者は、ルーチンの CREATE ステートメントを実行するために使用されるアカウントです。これは、ルーチン定義で DEFINER として名前が指定されているアカウントと同じでないことがあります。

    セクション20.2.2「ストアドルーチンと MySQL 権限」も参照してください。

  • back_log

    システム変数 名前 back_log
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (<= 5.6.5) 数値
    デフォルト 50
    最小値 1
    最大値 65535
    許可されている値 (>= 5.6.6) 数値
    デフォルト -1 (autosized)
    最小値 1
    最大値 65535

    MySQL で保持できる未処理の接続リクエストの数。これはメインの MySQL スレッドが非常に短時間で非常に多くの接続リクエストを受け取る場合に効果をあらわします。次に、メインスレッドが接続を検査し新規スレッドを開始するまで (非常に短いですが) 少し時間がかかります。back_log 値は、MySQL が新規リクエストへの回答を一時的に停止するまでの短い時間に、スタック可能なリクエストの数を示します。短い時間に大量の接続が予想される場合にかぎり、これを増加する必要があります。

    つまり、この値は着信 TCP/IP 接続の listen キューのサイズです。使用しているオペレーティングシステムには、このキューのサイズについて独自の制限があります。UNIX listen() システムコールのマニュアルページに、詳細情報があります。この変数の最大値については OS のドキュメントを確認してください。back_log をオペレーティングシステムの制限を超える設定はできません。

    MySQL 5.6.6 以降では、デフォルト値は次の数式に基づき、900 の上限までに制限されます。

    50 + (max_connections / 5)
    

    5.6.6 より前では、デフォルトは 50 です。

  • basedir

    コマンド行形式 --basedir=path
    システム変数 名前 basedir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    MySQL インストールの基本ディレクトリ。この変数は、--basedir オプションで設定できます。ほかの変数の相対パス名は、通常は基本ディレクトリを基準として解決されます。

  • big_tables

    コマンド行形式 --big-tables
    システム変数 名前 big_tables
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    1 に設定された場合、すべての一時テーブルはメモリーでなくディスクに保管されます。これはスピードが少し遅くなりますが、エラー The table tbl_name is full は、大きい一時テーブルを必要とする SELECT オペレーションでは発生しません。新規接続のデフォルト値は 0 です (インメモリーの一時テーブルを使用します)。通常は、インメモリーテーブルが必要に応じてディスクベースのテーブルに自動的に変換されるため、この変数をふたたび設定する必要はありません。

  • bind_address

    コマンド行形式 --bind-address=addr
    システム変数 (>= 5.6.1) 名前 bind_address
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (<= 5.6.5) 文字列
    デフォルト 0.0.0.0
    許可されている値 (>= 5.6.6) 文字列
    デフォルト *

    --bind-address オプションの値。この変数は MySQL 5.6.1 で追加されました。

  • block_encryption_mode

    導入 5.6.17
    コマンド行形式 --block_encryption_mode=#
    システム変数 名前 block_encryption_mode
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列
    デフォルト aes-128-ecb

    この変数は、AES などのブロックベースのアルゴリズムのブロック暗号化モードを制御します。これは AES_ENCRYPT() および AES_DECRYPT() の暗号化に影響します。

    block_encryption_modeaes-keylen-mode 形式の値を取り、ここで keylen はビット単位の鍵の長さ、mode は暗号化モードです。この値は大文字と小文字を区別しません。許可される keylen 値は 128、192、および 256 です。許可される暗号化モードは MySQL が OpenSSL または yaSSL のいずれを使用して構築されているかによって異なります。

    • OpenSSL の場合に許可される mode 値: ECBCBCCFB1CFB8CFB128OFB

    • yaSSL の場合に許可される mode 値: ECBCBC

    たとえば次のステートメントでは、AES 暗号化機能が 256 ビットの鍵の長さおよび CBC モードを使用します。

    SET block_encryption_mode = 'aes-256-cbc';
    

    サポートされない鍵の長さや SSL ライブラリがサポートしないモードを含む値に block_encryption_mode を設定しようとすると、エラーが発生します。

    この変数は MySQL 5.6.17 で追加されました。

  • bulk_insert_buffer_size

    コマンド行形式 --bulk_insert_buffer_size=#
    システム変数 名前 bulk_insert_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 0
    最大値 18446744073709551615

    MyISAM では、空ではないテーブルにデータを追加するとき、INSERT ... SELECTINSERT ... VALUES (...), (...), ...、および LOAD DATA INFILE の一括挿入をさらに高速にするツリー状の特殊なキャッシュを使用します。この変数は、スレッドあたりのバイト単位のキャッシュツリーのサイズを制限します。これを 0 に設定すると、この最適化が無効になります。デフォルトの値は 8M バイトです。

  • character_set_client

    システム変数 名前 character_set_client
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    クライアントから到達するステートメントの文字セット。この変数のセッション値は、クライアントがサーバーに接続するときにクライアントによってリクエストされる文字セットを使用して設定されます。(多くのクライアントは、この文字セットを明示的に指定するための --default-character-set オプションをサポートします。セクション10.1.4「接続文字セットおよび照合順序」も参照してください。)クライアントがリクエストする値が不明または利用できないか、サーバーがクライアントリクエストを無視するように構成されている場合、セッション値を設定するよう変数のグローバル値が使用されます。

    • クライアントの MySQL バージョンが MySQL 4.1 よりも古いため、文字セットをリクエストしない場合。

    • クライアントがリクエストする文字セットがサーバーで認識されない場合。たとえば、日本語に対応したクライアントが、sjis サポートを構成されていないサーバーに接続するときに sjis をリクエストする場合があります。

    • mysqld--skip-character-set-client-handshake オプションを使用して開始された場合、これによってクライアント文字セット構成が無視されます。これによって MySQL 4.0 の動作が再現されるため、すべてのクライアントをアップグレードしないでサーバーをアップグレードする場合に便利です。

    ucs2utf16utf16le、および utf32 をクライアント文字セットとして使用することはできず、つまりこれらは SET NAMES または SET CHARACTER SET でも機能しないことを意味します。

  • character_set_connection

    システム変数 名前 character_set_connection
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    文字セットイントロデューサを持たないリテラル用、および数字から文字列への変換用に使用される文字セット。

  • character_set_database

    システム変数 名前 character_set_database
    変数スコープ グローバル、セッション
    動的変数 はい
    脚注 このオプションは動的ですが、サーバーのみがこの情報を設定するようにしてください。この変数の値は手動で設定しないでください。
    許可されている値 文字列

    デフォルトデータベースで使用される文字セット。デフォルトのデータベースが変更されるたびに、サーバーはこの変数を設定します。デフォルトデータベースが存在しない場合、変数は character_set_server と同じ値になります。

  • character_set_filesystem

    コマンド行形式 --character-set-filesystem=name
    システム変数 名前 character_set_filesystem
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列
    デフォルト binary

    ファイルシステムの文字セット。この変数は、LOAD DATA INFILE および SELECT ... INTO OUTFILE ステートメントや LOAD_FILE() 関数などのファイル名を参照する文字列リテラルを解釈するために使用されます。このようなファイル名は、ファイルを開くよう試行する前に character_set_client から character_set_filesystem に変換されます。デフォルト値は binary で、変換が行われないことを意味します。マルチバイトファイル名が許可されるシステムについては、別の値が適切な場合もあります。たとえば、システムが UTF-8 を使用してファイル名を表現する場合、character_set_filesystem'utf8' に設定します。

  • character_set_results

    システム変数 名前 character_set_results
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    結果セットやエラーメッセージなどのクエリー結果をクライアントに返すために使用される文字セット。

  • character_set_server

    コマンド行形式 --character-set-server
    システム変数 名前 character_set_server
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列
    デフォルト latin1

    サーバーのデフォルト文字セット。

  • character_set_system

    システム変数 名前 character_set_system
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列
    デフォルト utf8

    識別子を格納するためにサーバーで使用される文字セット。この値は常に utf8 です。

  • character_sets_dir

    コマンド行形式 --character-sets-dir=path
    システム変数 名前 character_sets_dir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    文字セットがインストールされているディレクトリ。

  • collation_connection

    システム変数 名前 collation_connection
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    接続文字セットの照合順序。

  • collation_database

    システム変数 名前 collation_database
    変数スコープ グローバル、セッション
    動的変数 はい
    脚注 このオプションは動的ですが、サーバーのみがこの情報を設定するようにしてください。この変数の値は手動で設定しないでください。
    許可されている値 文字列

    デフォルトデータベースで使用される照合。デフォルトのデータベースが変更されるたびに、サーバーはこの変数を設定します。デフォルトデータベースが存在しない場合、変数は collation_server と同じ値になります。

  • collation_server

    コマンド行形式 --collation-server
    システム変数 名前 collation_server
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列
    デフォルト latin1_swedish_ci

    サーバーのデフォルトの照合順序。

  • completion_type

    コマンド行形式 --completion_type=#
    システム変数 名前 completion_type
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト NO_CHAIN
    有効な値 NO_CHAIN
    CHAIN
    RELEASE
    0
    1
    2

    トランザクション完了タイプ。この変数は、次の表に示す値を取ることができます。変数は、名前の値か対応する整数値のいずれかを使用して割り当てることができます。

    説明
    NO_CHAIN (または 0) COMMIT および ROLLBACK は影響されません。これはデフォルト値です。
    CHAIN (または 1) COMMIT および ROLLBACK は、それぞれ COMMIT AND CHAIN および ROLLBACK AND CHAIN と同等です。(終了したばかりのトランザクションと同じ分離レベルで新規トランザクションがすぐに開始します。)
    RELEASE (または 2) COMMIT および ROLLBACK は、それぞれ COMMIT RELEASE および ROLLBACK RELEASE と同等です。(サーバーはトランザクションの終了後に切断されます。)

    completion_type は、START TRANSACTION または BEGIN で開始されて COMMIT または ROLLBACK で終了するトランザクションに影響します。これは、セクション13.3.3「暗黙的なコミットを発生させるステートメント」に一覧表示されているステートメントの実行から生じる暗黙的なコミットに適用されません。また、XA COMMITXA ROLLBACK に対して、あるいは autocommit=1 の場合にも適用されません。

  • concurrent_insert

    コマンド行形式 --concurrent_insert[=#]
    システム変数 名前 concurrent_insert
    変数スコープ グローバル
    動的変数 はい
    許可されている値 列挙
    デフォルト AUTO
    有効な値 NEVER
    AUTO
    ALWAYS
    0
    1
    2

    AUTO (デフォルト) の場合、MySQL ではデータファイルの中間に空きブロックがない MyISAM テーブルに対して INSERT および SELECT ステートメントを同時に実行することが許可されます。--skip-new を指定して mysqld を開始した場合、この変数は NEVER に設定されます。

    この変数は、次の表に示す値を取ることができます。変数は、名前の値か対応する整数値のいずれかを使用して割り当てることができます。

    説明
    NEVER (または 0) 同時挿入を無効にします
    AUTO (または 1) (デフォルト) 空きブロックがない MyISAM テーブルについての同時挿入を有効にします
    ALWAYS (または 2) 空きブロックがあるテーブルであっても、すべての MyISAM テーブルについての同時挿入を有効にします。途中に空きブロックのあるテーブルが別のスレッドによって使用されている場合は、新しい行がテーブルの最後に挿入されます。そうでない場合は、MySQL は正常な書き込みロックを取得し、行を空きブロックに挿入します。

    セクション8.10.3「同時挿入」も参照してください。

  • connect_timeout

    コマンド行形式 --connect_timeout=#
    システム変数 名前 connect_timeout
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 10
    最小値 2
    最大値 31536000

    mysqld サーバーがハンドシェイクエラーを返すまでに接続パケットを待つ秒数。デフォルトは 10 秒です。

    「Lost connection to MySQL server at 'XXX', system error: errnoという形式のエラーがクライアントで頻繁に発生する場合、connect_timeout 値を増やすと役立つことがあります。

  • core_file

    導入 5.6.2
    システム変数 名前 core_file
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ブール
    デフォルト OFF

    サーバーがクラッシュした場合にコアファイルを書き込むかどうか。この変数は --core-file オプションによって設定されます。これは MySQL 5.6.2 で追加されました。

  • datadir

    コマンド行形式 --datadir=path
    システム変数 名前 datadir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    MySQL データディレクトリ。この変数は --datadir オプションで設定できます。

  • date_format

    この変数は使用されません。これは MySQL 5.6.7 以降で非推奨となり、今後の MySQL リリースで削除されます。

  • datetime_format

    この変数は使用されません。これは MySQL 5.6.7 以降で非推奨となり、今後の MySQL リリースで削除されます。

  • debug

    コマンド行形式 --debug[=debug_options]
    システム変数 名前 debug
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (Unix) 文字列
    デフォルト d:t:i:o,/tmp/mysqld.trace
    許可されている値 (Windows) 文字列
    デフォルト d:t:i:O,\mysqld.trace

    この変数は現在のデバッグ設定を指定します。これはデバッグサポートを使用して構築されたサーバーについてのみ使用できます。初期値は、サーバー始動時に指定された --debug オプションのインスタンスの値から取得されます。グローバル値およびセッション値を実行時に設定でき、セッション値についても SUPER 権限が必要です。

    + または - で始まる値を割り当てると、値は現在の値に追加されたり現在の値から削除されたりします。

    mysql> SET debug = 'T';
    mysql> SELECT @@debug;
    +---------+
    | @@debug |
    +---------+
    | T       |
    +---------+
    
    mysql> SET debug = '+P';
    mysql> SELECT @@debug;
    +---------+
    | @@debug |
    +---------+
    | P:T     |
    +---------+
    
    mysql> SET debug = '-P';
    mysql> SELECT @@debug;
    +---------+
    | @@debug |
    +---------+
    | T       |
    +---------+
    

    詳細については、セクション24.4.3「DBUG パッケージ」を参照してください。

  • debug_sync

    システム変数 名前 debug_sync
    変数スコープ セッション
    動的変数 はい
    許可されている値 文字列

    この変数は、Debug Sync 機能へのユーザーインタフェースです。Debug Sync を使用するには MySQL が -DENABLE_DEBUG_SYNC=1 オプションで構成されている必要があります (セクション2.9.4「MySQL ソース構成オプション」を参照)。Debug Sync がコンパイルされていない場合、このシステム変数は使用できません。

    グローバル変数値は読み取り専用で、この機能が有効かどうかを示します。デフォルトでは、Debug Sync は無効化されており、debug_sync の値は OFF です。サーバーが --debug-sync-timeout=N で開始した場合 (ここで、N は 0 より大きいタイムアウト値)、Debug Sync は有効化され、debug_sync の値は ON - current signal の後にシグナル名が続いたものになります。また、N は個々の同期点についてのデフォルトのタイムアウトになります。

    セッション値はすべてのユーザーによって読み取ることができ、グローバル変数と同じ値になります。セッション値は、同期点を制御するための SUPER 権限を持つユーザーによって設定できます。

    Debug Sync 機能および同期点の使用方法についての説明は、「MySQL Internals: Test Synchronization」を参照してください。

  • default_storage_engine

    コマンド行形式 --default-storage-engine=name
    システム変数 名前 default_storage_engine
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト InnoDB

    デフォルトのストレージエンジン。MySQL 5.6.3 以降では、この変数は永続的なテーブルについてのみストレージエンジンを設定します。TEMPORARY テーブルについてストレージエンジンを設定するには、default_tmp_storage_engine システム変数を設定します。

    使用可能かつ有効化できるストレージエンジンを表示するには、SHOW ENGINES ステートメントまたはクエリー INFORMATION_SCHEMA ENGINES テーブルを参照してください。

    default_storage_engine は、非推奨となった storage_engine に優先して使用するようにしてください。

    サーバー起動時のデフォルトストレージエンジンを無効にした場合、永続テーブルと TEMPORARY テーブルの両方のデフォルトエンジンを別のエンジンに設定しなければならず、そうしないとサーバーは起動しません。

  • default_tmp_storage_engine

    導入 5.6.3
    コマンド行形式 --default_tmp_storage_engine=name
    システム変数 名前 default_tmp_storage_engine
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト InnoDB

    TEMPORARY テーブルのデフォルトストレージエンジン (CREATE TEMPORARY TABLE で作成されたもの)。永続的なテーブルについてのストレージエンジンを設定するには、default_storage_engine システム変数を設定します。

    サーバー起動時のデフォルトストレージエンジンを無効にした場合、永続テーブルと TEMPORARY テーブルの両方のデフォルトエンジンを別のエンジンに設定しなければならず、そうしないとサーバーは起動しません。

    default_tmp_storage_engine は MySQL 5.6.3 で追加されました。

  • default_week_format

    コマンド行形式 --default_week_format=#
    システム変数 名前 default_week_format
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 7

    WEEK() 関数について使用するデフォルトモード値。セクション12.7「日付および時間関数」を参照してください。

  • delay_key_write

    コマンド行形式 --delay-key-write[=name]
    システム変数 名前 delay_key_write
    変数スコープ グローバル
    動的変数 はい
    許可されている値 列挙
    デフォルト ON
    有効な値 ON
    OFF
    ALL

    このオプションは、MyISAM テーブルにのみ適用されます。これは、CREATE TABLE ステートメントに使用できる DELAY_KEY_WRITE テーブルオプションの処理に影響する次のいずれかの値を指定できます。

    オプション 説明
    OFF DELAY_KEY_WRITE は無視されます。
    ON MySQL は CREATE TABLE ステートメントに指定される DELAY_KEY_WRITE オプションを優先します。これはデフォルト値です。
    ALL 新しくオープンしたすべてのテーブルは、DELAY_KEY_WRITE オプションを有効にして作成された場合と同様に処理されます。

    テーブルの DELAY_KEY_WRITE を有効にした場合、インデックス更新のたびにそのテーブルのキーバッファーがフラッシュされるのではなく、テーブルが閉じたときだけフラッシュされます。これによりキーの書き込みが非常に高速化されますが、この機能を使用する場合、--myisam-recover-options オプションを指定してサーバーを開始することによって、すべての MyISAM テーブルの自動チェックを追加します (たとえば、--myisam-recover-options=BACKUP,FORCE)。セクション5.1.3「サーバーコマンドオプション」およびセクション15.2.1「MyISAM 起動オプション」を参照してください。

    警告

    --external-locking で外部ロックを有効にした場合、キーの遅延書き込みを使用するテーブルについてのインデックス破損に対する保護はありません。

  • delayed_insert_limit

    非推奨 5.6.7
    コマンド行形式 --delayed_insert_limit=#
    システム変数 名前 delayed_insert_limit
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 100
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 100
    最小値 1
    最大値 18446744073709551615

    delayed_insert_limit 件の遅延した行を非トランザクションテーブルに挿入したあと、INSERT DELAYED ハンドラスレッドは、保留中の SELECT ステートメントがないかどうかを検査します。その場合、遅延した行の挿入を続行する前に、それらの実行を許可します。

    MySQL 5.6.7 以降では、このシステム変数は非推奨となり (DELAYED 挿入が非推奨となったため)、今後のリリースで削除される予定です。

  • delayed_insert_timeout

    非推奨 5.6.7
    コマンド行形式 --delayed_insert_timeout=#
    システム変数 名前 delayed_insert_timeout
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 300

    終了する前に、INSERT DELAYED ハンドラスレッドが INSERT ステートメントを待機する秒数。

    MySQL 5.6.7 以降では、このシステム変数は非推奨となり (DELAYED 挿入が非推奨となったため)、今後のリリースで削除される予定です。

  • delayed_queue_size

    非推奨 5.6.7
    コマンド行形式 --delayed_queue_size=#
    システム変数 名前 delayed_queue_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 1000
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 1000
    最小値 1
    最大値 18446744073709551615

    これは、非トランザクションテーブルに対する INSERT DELAYED ステートメントを処理するときに、キューに入れる行の数に関するテーブルごとの制限です。キューがいっぱいになると、INSERT DELAYED ステートメントを実行するすべてのクライアントは、キューにふたたび空きができるまで待機します。

    MySQL 5.6.7 以降では、このシステム変数は非推奨となり (DELAYED 挿入が非推奨となったため)、今後のリリースで削除される予定です。

  • disconnect_on_expired_password

    導入 5.6.10
    コマンド行形式 --disconnect_on_expired_password=#
    システム変数 名前 disconnect_on_expired_password
    変数スコープ セッション
    動的変数 いいえ
    許可されている値 ブール
    デフォルト ON

    この変数は、期限切れのパスワードを持つクライアントをサーバーが処理する方法を制御します。

    • クライアントが期限切れパスワードを処理できるように指定されている場合、disconnect_on_expired_password の値は無関係です。サーバーはクライアントが接続することを許可しますが、クライアントをサンドボックスモードに設定します。

    • クライアントが期限切れパスワードを処理できるように指定しない場合、サーバーは disconnect_on_expired_password の値に従ってクライアントを処理します。

      • disconnect_on_expired_password: が有効な場合、サーバーはクライアントを切断します。

      • disconnect_on_expired_password: が無効な場合、サーバーはクライアントの接続を許可しますが、クライアントをサンドボックスモードに設定します。

    期限切れパスワードに関するクライアントとサーバーの対話の設定の詳細については、セクション6.3.6「パスワードの期限切れとサンドボックスモード」を参照してください。

    この変数は MySQL 5.6.10 で追加されました。

  • div_precision_increment

    コマンド行形式 --div_precision_increment=#
    システム変数 名前 div_precision_increment
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 4
    最小値 0
    最大値 30

    この変数は、/ 演算子で実行される除算の結果のスケールを増やす桁数を示します。デフォルト値は 4 です。最小値および最大値は、それぞれ 0 および 30 です。次の例は、デフォルト値を増やした効果を説明したものです。

    mysql> SELECT 1/7;
    +--------+
    | 1/7    |
    +--------+
    | 0.1429 |
    +--------+
    mysql> SET div_precision_increment = 12;
    mysql> SELECT 1/7;
    +----------------+
    | 1/7            |
    +----------------+
    | 0.142857142857 |
    +----------------+
    
  • engine_condition_pushdown

    非推奨 5.5.3, by optimizer_switch
    削除 5.6.1
    コマンド行形式 --engine-condition-pushdown
    システム変数 名前 engine_condition_pushdown
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト ON

    この変数は MySQL 5.6.1 で削除されました。optimizer_switch 変数の engine_condition_pushdown フラグを代わりに使用します。セクション8.8.5.2「切り替え可能な最適化の制御」を参照してください。

  • end_markers_in_json

    導入 5.6.5
    システム変数 名前 end_markers_in_json
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    オプティマイザ JSON 出力がエンドマーカーを追加するかどうか。

  • eq_range_index_dive_limit

    導入 5.6.5
    システム変数 名前 eq_range_index_dive_limit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 10
    最小値 0
    最大値 4294967295

    この変数は、オプティマイザが限定する行数を推定するときに、インデックスダイブの使用からインデックス統計の使用に切り換える場合の等価比較条件内の等価範囲の数を指定します。これは次に示す同等のいずれかの形式を持つ式の評価に適用され、このときオプティマイザは一意でないインデックスを使用して col_name 値を参照します。

    col_name IN(val1, ..., valN)
    col_name = val1 OR ... OR col_name = valN
    

    どちらの場合も、式に N 個の等価範囲が含まれています。オプティマイザはインデックスダイブまたはインデックス統計を使用すると行の推定を実行できます。eq_range_index_dive_limit が 0 より大きい場合、eq_range_index_dive_limit 以上の等価範囲があれば、オプティマイザはインデックスダイブの代わりに既存のインデックス統計を使用します。したがって、N 個までの等価範囲に対してインデックスダイブの使用を可能にするには、eq_range_index_dive_limitN + 1 に設定します。インデックス統計の使用を無効にして、N に関係なくインデックスダイブを常に使用するには、eq_range_index_dive_limit を 0 に設定します。

    詳細については、セクション8.2.1.3.3「複数値比較の等価範囲の最適化」を参照してください。

    この変数は MySQL 5.6.5 で追加されました。5.6.5 より前では、オプティマイザはすべての場合にインデックスダイブを使用して行の推定を実行します。

    最適な推定を行うためにテーブルインデックス統計を更新するには、ANALYZE TABLE を使用します。

  • error_count

    メッセージを生成した最後のステートメントから発生したエラーの数。この変数は読み取り専用です。セクション13.7.5.18「SHOW ERRORS 構文」を参照してください。

  • event_scheduler

    コマンド行形式 --event-scheduler[=value]
    システム変数 名前 event_scheduler
    変数スコープ グローバル
    動的変数 はい
    許可されている値 列挙
    デフォルト OFF
    有効な値 ON
    OFF
    DISABLED

    この変数はイベントスケジューラのステータスを示し、可能な値は ONOFF、および DISABLED で、デフォルトは OFF です。この変数と、イベントスケジューラの操作におけるその効果は、イベントの章の概要セクションでさらに詳しく説明されています。

  • expire_logs_days

    コマンド行形式 --expire_logs_days=#
    システム変数 名前 expire_logs_days
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 99

    バイナリログファイルの自動削除のための日数。デフォルトは 0 で 自動削除しないことを意味します。削除は起動時およびバイナリログがフラッシュされるときに発生する可能性があります。ログのフラッシュは、セクション5.2「MySQL Server ログ」に記載されているように発生します。

    バイナリログファイルを手動で削除するには、PURGE BINARY LOGS ステートメントを使用します。セクション13.4.1.1「PURGE BINARY LOGS 構文」を参照してください。

  • explicit_defaults_for_timestamp

    導入 5.6.6
    コマンド行形式 --explicit_defaults_for_timestamp=#
    システム変数 名前 explicit_defaults_for_timestamp
    変数スコープ セッション
    動的変数 いいえ
    許可されている値 ブール
    デフォルト FALSE

    MySQL では、TIMESTAMP データ型は非標準的な方式であるという点でほかのデータ型と異なります。

    • NULL 属性で明示的に宣言されない TIMESTAMP カラムには、NOT NULL 属性が割り当てられます。(ほかのデータ型のカラムは、NOT NULL として明示的に宣言されない場合、NULL 値が許可されます。)そのようなカラムを NULL に設定すると、カラムは現在のタイムスタンプに設定されます。

    • テーブル内の最初の TIMESTAMP カラムは、NULL 属性や明示的な DEFAULT または ON UPDATE 句で宣言されない場合、DEFAULT CURRENT_TIMESTAMP および ON UPDATE CURRENT_TIMESTAMP 属性が自動的に割り当てられます。

    • 最初のカラムに続く TIMESTAMP カラムは、NULL 属性または明示的な DEFAULT 句で宣言されない場合、DEFAULT '0000-00-00 00:00:00' (ゼロタイムスタンプ) が自動的に割り当てられます。そのようなカラムに対して明示的な値を指定しない挿入された行については、カラムに '0000-00-00 00:00:00' が自動的に割り当てられて、警告は発生しません。

    これらの非標準の動作は TIMESTAMP についてはデフォルトのままですが、MySQL 5.6.6 以降では非推奨となり、起動時に次の警告が表示されます。

    [Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
    Please use --explicit_defaults_for_timestamp server option (see
    documentation for more details).
    

    警告が示すように、非標準の動作をオフにするには、新しい explicit_defaults_for_timestamp システム変数を起動時に有効にします。この変数を有効にすると、サーバーは TIMESTAMP を、代わりに次のように処理します。

    • 明示的に NOT NULL として宣言されない TIMESTAMP カラムでは、NULL 値が許可されます。そのようなカラムを NULL に設定することで、カラムは現在のタイムスタンプではなく NULL に設定されます。

    • TIMESTAMP カラムに DEFAULT CURRENT_TIMESTAMP または ON UPDATE CURRENT_TIMESTAMP 属性が自動的に割り当てられません。これらの属性は、明示的に指定する必要があります。

    • NOT NULL として宣言され、明示的な DEFAULT 句を持たない TIMESTAMP カラムは、デフォルト値を持たないものとして処理されます。そのようなカラムについて明示的な値を指定しない挿入された行の場合、結果は SQL モードによって異なります。厳密 SQL モードが有効である場合、エラーが発生します。厳密 SQL モードが有効でない場合、カラムには暗黙的なデフォルトの '0000-00-00 00:00:00' が割り当てられ、警告が発生します。これは、MySQL が DATETIME などのほかの時間型を処理する方法に類似しています。

    注記

    explicit_defaults_for_timestamp は、それ自体が非推奨です。これは、その唯一の目的が、将来の MySQL リリースで削除される現在非推奨となった TIMESTAMP 動作に対する制御を許可するためです。その削除が行われると、explicit_defaults_for_timestamp は目的を失うため、同様に削除されます。

    この変数は MySQL 5.6.6 で追加されました。

  • external_user

    システム変数 名前 external_user
    変数スコープ セッション
    動的変数 いいえ
    許可されている値 文字列

    クライアントを認証するために使用されるプラグインによって設定された、認証プロセス中に使用される外部ユーザー名。ネイティブ (組み込み型) の MySQL 認証や、プラグインで値が設定されない場合、この変数は NULL です。セクション6.3.9「プロキシユーザー」を参照してください。

  • flush

    コマンド行形式 --flush
    システム変数 名前 flush
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    ON の場合、各 SQL ステートメントのあとでサーバーはすべての変更をデスクにフラッシュ (同期) します。通常、MySQL では各 SQL ステートメントの終了後にのみすべての変更内容をディスクに書き込み、ディスクへの同期はオペレーティングシステムが処理します。セクションB.5.4.2「MySQL が繰り返しクラッシュする場合の対処方法」を参照してください。--flush オプションで mysqld を起動した場合、この変数は ON に設定されます。

  • flush_time

    コマンド行形式 --flush_time=#
    システム変数 名前 flush_time
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    許可されている値 (Windows, <= 5.6.5) 数値
    デフォルト 1800
    最小値 0
    許可されている値 (Windows, >= 5.6.6) 数値
    デフォルト 0
    最小値 0

    これがゼロ以外の値に設定されると、すべてのテーブルは flush_time 秒ごとに閉じられて、リソースが解放され、フラッシュされていないデータがディスクへ同期されます。このオプションは、リソースが非常に限定されたシステムでのみ使用することを推奨します。デフォルトは 0 ですが、MySQL 5.6.6 以前では、Windows のデフォルトは 1800 です。

  • foreign_key_checks

    1 (デフォルト) に設定すると、InnoDB テーブルについての外部キー制約が検査されます。0 に設定すると、そのような制約は無視されます。MySQL Cluster NDB 7.3.2 以降では、NDB テーブルでこの変数を設定することは、それを InnoDB テーブルで実行することと同じ効果が得られます。以前では、この設定は無視され、そのようなすべての検査が強制されていました (バグ #14095855)。一般的に、通常の操作中はこの設定を有効にしたままにすることで、参照整合性を強制します。外部キーの検査を無効化することは、テーブルの親子関係によって要求される順序と異なる順序でこれらのテーブルをリロードする場合に役立つことがあります。セクション14.6.6「InnoDB と FOREIGN KEY 制約」を参照してください。

    foreign_key_checks を 0 に設定すると、データ定義ステートメントにも影響します。DROP SCHEMA は、スキーマの外部のテーブルによって参照されている外部キーを持つテーブルをスキーマが含む場合であってもスキーマをドロップし、DROP TABLE は、別のテーブルによって参照されている外部キーを持つテーブルをドロップします。

    注記

    foreign_key_checks を 1 に設定すると、既存のテーブルデータのスキャンがトリガーされません。したがって、foreign_key_checks = 0 のときにテーブルに追加された行は、一貫性が検証されません。

  • ft_boolean_syntax

    コマンド行形式 --ft_boolean_syntax=name
    システム変数 名前 ft_boolean_syntax
    変数スコープ グローバル
    動的変数 はい
    許可されている値 文字列
    デフォルト + -><()~*:""&|

    IN BOOLEAN MODE を使用して実行されるブール全文検索によってサポートされる演算子のリスト。セクション12.9.2「ブール全文検索」を参照してください。

    デフォルトの変数値は '+ -><()~*:""&|' です。値を変更するルールは次のようになります。

    • 演算子の機能は、文字列内の位置によって決定されます。

    • 置換する値は 14 文字である必要があります。

    • 各文字は、英数字以外の ASCII 文字である必要があります。

    • 1 番目または 2 番目の文字がスペースである必要があります。

    • 位置 11 および 12 にある句を引用する演算子を除き、重複は許可されません。これらの 2 つの文字は同じである必要はありませんが、同じであってもよいのはこれら 2 つだけです。

    • 位置 10、13、および 14 (デフォルトで :&、および | に設定) は将来の拡張用に予約されています。

  • ft_max_word_len

    コマンド行形式 --ft_max_word_len=#
    システム変数 名前 ft_max_word_len
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    最小値 10

    MyISAM FULLTEXT インデックスに含めることができる最大の単語の長さ。

    注記

    この変数を変更したあと、MyISAM テーブルの FULLTEXT インデックスを再構築する必要があります。REPAIR TABLE tbl_name QUICK を使用します。

  • ft_min_word_len

    コマンド行形式 --ft_min_word_len=#
    システム変数 名前 ft_min_word_len
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 4
    最小値 1

    MyISAM FULLTEXT インデックスに含めることができる最小の単語の長さ。

    注記

    この変数を変更したあと、MyISAM テーブルの FULLTEXT インデックスを再構築する必要があります。REPAIR TABLE tbl_name QUICK を使用します。

  • ft_query_expansion_limit

    コマンド行形式 --ft_query_expansion_limit=#
    システム変数 名前 ft_query_expansion_limit
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 20
    最小値 0
    最大値 1000

    WITH QUERY EXPANSION を使用して実行する全文検索で使用する最上位の一致の数。

  • ft_stopword_file

    コマンド行形式 --ft_stopword_file=file_name
    システム変数 名前 ft_stopword_file
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    MyISAM テーブルの全文検索について、ストップワードのリストの読み取り元ファイル。サーバーは、別のディレクトリを指定する絶対パス名が指定されないかぎり、データディレクトリ内のファイルを検索します。ファイル内のすべての単語が使用され、コメントは受け付けされません。デフォルトでは、ストップワードの組み込みリストが使用されます (storage/myisam/ft_static.c ファイルに定義されています)。この変数を空の文字列 ('') に設定すると、ストップワードフィルタリングが無効になります。セクション12.9.4「全文ストップワード」も参照してください。

    注記

    この変数またはストップワードファイルの内容を変更したあと、MyISAM テーブルの FULLTEXT インデックスを再構築する必要があります。REPAIR TABLE tbl_name QUICK を使用します。

  • general_log

    コマンド行形式 --general-log
    システム変数 名前 general_log
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    一般クエリーログを有効にするかどうか。値が 0 (または OFF) の場合はログを無効にし、1 (または ON) の場合はログを有効にします。デフォルト値は --general_log オプションが指定されているかどうかによって異なります。ログ出力先は log_output システム変数によって制御され、この値を NONE にした場合はログが有効になっていてもログエントリは書き込まれません。

  • general_log_file

    コマンド行形式 --general-log-file=file_name
    システム変数 名前 general_log_file
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ファイル名
    デフォルト host_name.log

    一般クエリーログファイルの名前。デフォルト値は host_name.log ですが、初期値は --general_log_file オプションを使用すると変更できます。

  • group_concat_max_len

    コマンド行形式 --group_concat_max_len=#
    システム変数 名前 group_concat_max_len
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 1024
    最小値 4
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 1024
    最小値 4
    最大値 18446744073709551615

    GROUP_CONCAT() 関数について許可されるバイト単位の最大の結果の長さ。デフォルトは 1024 です。

  • have_compress

    zlib 圧縮ライブラリがサーバーで利用できる場合は YES、そうでない場合は NO。利用できない場合、COMPRESS() および UNCOMPRESS() 関数は使用できません。

  • have_crypt

    crypt() システムコールがサーバーで利用できる場合は YES、そうでない場合は NO。利用できない場合、ENCRYPT() 関数は使用できません。

  • have_csv

    mysqldCSV テーブルをサポートする場合は YES、そうでない場合は NO

    この変数は MySQL 5.6.1 で削除されました。代わりに SHOW ENGINES を使用してください。

  • have_dynamic_loading

    mysqld がプラグインの動的ロードをサポートする場合は YES、そうでない場合は NO

  • have_geometry

    サーバーが空間データ型をサポートする場合は YES、そうでない場合は NO

  • have_innodb

    mysqldInnoDB テーブルをサポートする場合は YES--skip-innodb が使用される場合は DISABLED

    この変数は MySQL 5.6.1 で削除されました。代わりに SHOW ENGINES を使用してください。

  • have_openssl

    この変数は have_ssl のエイリアスです。

  • have_partitioning

    mysqld がパーティショニングをサポートする場合は YES

    この変数は MySQL 5.6.1 で削除されました。代わりに SHOW PLUGINS を使用してください。詳細については、第19章「パーティション化を参照してください。

  • have_profiling

    ステートメントプロファイリング機能が存在する場合は YES、そうでない場合は NO。存在する場合、この機能を有効または無効にするかが profiling システム変数によって制御されます。セクション13.7.5.32「SHOW PROFILES 構文」を参照してください。

    この変数は MySQL 5.6.8 で非推奨となり、将来の MySQL リリースで削除されます。

  • have_query_cache

    mysqld がクエリーキャッシュをサポートする場合は YES、そうでない場合は NO

  • have_rtree_keys

    RTREE インデックスを利用できる場合は YES、そうでない場合は NO。(これらは MyISAM テーブル内の空間インデックスで使用されます。)

  • have_ssl

    mysqld が SSL 接続をサポートする場合は YES、そうでない場合は NODISABLED の場合、サーバーは SSL サポート付きでコンパイルされているが、適切な --ssl-xxx オプションを指定して開始されなかったことを示します。詳細については、セクション6.3.10.2「SSL を使用するための MySQL の構成」を参照してください。

  • have_symlink

    シンボリックリンクサポートを有効化している場合は YES、そうでない場合はNO。これは Unix では DATA DIRECTORY および INDEX DIRECTORY のテーブルオプションをサポートし、Windows ではデータディレクトリの symlink をサポートするために必要です。--skip-symbolic-links オプションを指定してサーバーが開始された場合、この値は DISABLED です。

  • host_cache_size

    導入 5.6.5
    システム変数 名前 host_cache_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.7) 数値
    デフォルト 128
    最小値 0
    最大値 65536
    許可されている値 (>= 5.6.8) 数値
    デフォルト -1 (autosized)
    最小値 0
    最大値 65536

    内部ホストキャッシュのサイズ (セクション8.11.5.2「DNS ルックアップの最適化とホストキャッシュ」を参照してください)。サイズを 0 に設定すると、ホストキャッシュが無効になります。実行時にキャッシュサイズを変更すると、暗黙的に FLUSH HOSTS 操作によってホストキャッシュがクリアされ、host_cache テーブルが切り捨てられます。

    デフォルト値は 128 で、500 までの max_connections の値については 1 が加算され、max_connections の値が 500 を超えて 20 増えるごとに 1 が加算され、上限は 2000 までに制限されます。MySQL 5.6.8 より前では、デフォルトは 128 です。

    --skip-host-cache の使用は host_cache_size システム変数を 0 に設定することに似ていますが、host_cache_size の方が柔軟性が高く、これはサーバー起動時だけでなく実行時にもホストキャッシュのサイズを変更したり有効化または無効化したりするために使用できるためです。

    --skip-host-cache を指定してサーバーを開始しても、host_cache_size の値の変更を妨げるわけではありませんが、この変更は効果がなく、host_cache_size を 0 より大きく設定してもキャッシュはふたたび有効化されません。

    この変数は MySQL 5.6.5 で追加されました。

  • hostname

    システム変数 名前 hostname
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    サーバーは起動時に、この変数をサーバーホスト名に設定します。

  • identity

    この変数は last_insert_id 変数のシノニムです。これはほかのデータベースシステムとの互換性のために存在します。この値は SELECT @@identity で読み取ることができ、SET identity で設定できます。

  • ignore_db_dirs

    導入 5.6.3
    システム変数 名前 ignore_db_dirs
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    データディレクトリ内でデータベースディレクトリとして考慮されない、カンマで区切られた名前のリスト。この値は、サーバー起動時に指定されるすべての --ignore-db-dir の実例によって設定されます。

    この変数は MySQL 5.6.3 で追加されました。

  • init_connect

    コマンド行形式 --init-connect=name
    システム変数 名前 init_connect
    変数スコープ グローバル
    動的変数 はい
    許可されている値 文字列

    接続する各クライアントに対してサーバーによって実行される文字列。文字列は 1 つ以上の SQL ステートメントで構成され、セミコロン文字で区切られます。たとえば、各クライアントセッションは、デフォルトでは自動コミットモードが有効な状態で開始します。古いサーバー (MySQL 5.5.8 より前) では、自動コミットをデフォルトで無効にするよう指定するためのグローバルな autocommit システム変数が存在しませんが、同じ効果を得るための回避策として init_connect を使用できます。

    SET GLOBAL init_connect='SET autocommit=0';
    

    init_connect 変数はコマンド行またはオプションファイルにも設定できます。ここに示されたような変数を、オプションファイルを使用して設定するには、次の行を含めます。

    [mysqld]
    init_connect='SET autocommit=0'
    

    init_connect の内容は、SUPER 権限を持つユーザーに対して実行されません。これを行うのは、init_connect の値が誤っていても、すべてのクライアントの接続を妨げないようにするためです。たとえば、値に含まれているステートメントが構文エラーを含むため、クライアント接続が失敗することがあります。SUPER 権限を持つユーザーに対して init_connect を実行しないことで、これらのユーザーは接続を開き、init_connect 値を修正できます。

  • init_file

    コマンド行形式 --init-file=file_name
    システム変数 名前 init_file
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    サーバーを起動したときに、--init-file オプションで指定するファイルの名前。これは、サーバーが起動したときにサーバーで実行する SQL ステートメントを含むファイルにしてください。各ステートメントは単一の行にして、コメントを含めなでください。各ステートメントの末尾に ;\g\G などのステートメントターミネータを指定しないようにしてください。

  • innodb_xxx

    InnoDB システム変数は、セクション14.12「InnoDB の起動オプションおよびシステム変数」にリストされています。これらの変数は、InnoDB テーブルのストレージ、メモリー使用、および I/O パターンの多くの側面を制御し、InnoDB がデフォルトストレージエンジンになったため、特に重要です。

  • insert_id

    AUTO_INCREMENT 値を挿入するときに、後に続く INSERT または ALTER TABLE ステートメントによって使用される値。これは主にバイナリログと一緒に使用されます。

  • interactive_timeout

    コマンド行形式 --interactive_timeout=#
    システム変数 名前 interactive_timeout
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 28800
    最小値 1

    サーバーが対話型の接続で、対話型の接続を閉じる前にアクティビティーを待機する秒数。対話型クライアントは、mysql_real_connect()CLIENT_INTERACTIVE オプションを使用するクライアントと定義されます。wait_timeoutも参照してください。

  • join_buffer_size

    コマンド行形式 --join_buffer_size=#
    システム変数 名前 join_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (Windows, <= 5.6.5) 数値
    デフォルト 131072
    最小値 128
    最大値 4294967295
    許可されている値 (Windows, >= 5.6.6) 数値
    デフォルト 262144
    最小値 128
    最大値 4294967295
    許可されている値 (その他, 32 ビットプラットフォーム, <= 5.6.5) 数値
    デフォルト 131072
    最小値 128
    最大値 4294967295
    許可されている値 (その他, 32 ビットプラットフォーム, >= 5.6.6) 数値
    デフォルト 262144
    最小値 128
    最大値 4294967295
    許可されている値 (その他, 64 ビットプラットフォーム, <= 5.6.5) 数値
    デフォルト 131072
    最小値 128
    最大値 18446744073709547520
    許可されている値 (その他, 64 ビットプラットフォーム, >= 5.6.6) 数値
    デフォルト 262144
    最小値 128
    最大値 18446744073709547520

    単純インデックススキャン、範囲インデックススキャン、およびインデックスを使用しないため完全テーブルスキャンを実行する結合について、使用されるバッファーの最小サイズ。通常の場合、高速な結合を得るための最適な方法は、インデックスを追加することです。インデックスを追加できない場合、より高速な完全結合を得るために、join_buffer_size の値を大きくします。2 つのテーブル間の完全結合 1 つに対して 1 つの結合バッファーが割り当てられます。インデックスが使用されない複数テーブル間の複雑な結合については、複数の結合バッファーが必要になることもあります。

    バッチキーアクセス (BKA) を使用しないかぎり、一致する各行を保持するために必要な量よりも大きいバッファーを設定することの利点はなく、すべての結合は少なくとも最小のサイズを割り当てるため、この変数をグローバルに大きい値に設定する場合は注意してください。グローバル設定を小さくしておき、大規模な結合を実行するセッションでのみ大きい設定に変更することを推奨します。メモリーを使用するほとんどのクエリーによって必要なサイズよりもグローバルサイズを大きくすると、メモリー割り当て時間が原因でパフォーマンスが著しく低下することがあります。

    BKA が使用される場合、join_buffer_size の値によって、ストレージエンジンへの個々のリクエストでのキーのバッチの大きさが定義されます。バッファーが大きいほど、結合操作の右側テーブルへの順次アクセスが増え、パフォーマンスを著しく向上させることができます。

    デフォルトは MySQL 5.6.6 以降では 256K バイトで、それより前は 128K バイトです。join_buffer_size で許可される最大の設定値は 4G バイト −1 です。64 ビットプラットフォームの場合は大きい値が許可されます (64 ビットの Windows の場合は例外で、大きい値は 4G バイト − 1 に切り捨てられて警告が出ます)。

    結合バッファリングについての追加情報は、セクション8.2.1.10「Nested Loop 結合アルゴリズム」を参照してください。バッチキーアクセスについては、セクション8.2.1.14「Block Nested Loop 結合と Batched Key Access 結合」を参照してください。

  • keep_files_on_create

    コマンド行形式 --keep_files_on_create=#
    システム変数 名前 keep_files_on_create
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    MyISAM テーブルが DATA DIRECTORY オプションなしで作成される場合、.MYD ファイルがデータベースディレクトリ内に作成されます。デフォルトでは、MyISAM が既存の .MYD ファイルを検出した場合、そのファイルを上書きします。INDEX DIRECTORY オプションを指定せずに作成されたテーブルについて、.MYI ファイルに同じことが当てはまります。この動作を抑制するには、keep_files_on_create 変数を ON (1) に設定します。この場合、MyISAM は既存のファイルを上書きせず、代わりにエラーが返されます。デフォルト値は OFF (0) です。

    MyISAM テーブルが DATA DIRECTORY または INDEX DIRECTORY オプションを使用して作成され、既存の .MYD または .MYI ファイルが見つかった場合、MyISAM は常にエラーを返します。指定されたディレクトリ内のファイルは上書きされません。

  • key_buffer_size

    コマンド行形式 --key_buffer_size=#
    システム変数 名前 key_buffer_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 8
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 8
    最大値 OS_PER_PROCESS_LIMIT

    MyISAM テーブルのインデックスブロックはバッファリングされ、すべてのスレッドで共有されます。key_buffer_size は、インデックスブロックに使用されるバッファーのサイズです。キーバッファーはキーキャッシュとしても知られています。

    32 ビットプラットフォームでは、key_buffer_size に許可される最大の設定値は 4G バイト − 1 です。64 ビットプラットフォームでは、さらに大きい値が許可されます。実質的な最大サイズは、使用可能な物理 RAM や、オペレーティングシステムまたはハードウェアプラットフォームによって課されるプロセスごとの RAM 制限によって、もっと小さいことがあります。この変数の値は、リクエストされるメモリーの量を示します。サーバーは内部的に、この量までのできるだけ多くのメモリーを割り当てますが、実際の割り当てがもっと少なくなることもあります。

    値を増やすことで、すべての読み取りおよび複数の書き込みのインデックス処理を改善できます。システムの主な機能が MyISAM ストレージエンジンを使用して MySQL を実行する場合、マシンの合計メモリーの 25% がこの変数の許容可能な値です。ただし、値を大きくし過ぎると (マシンの合計メモリーの 50% 超)、システムのページングが始まってきわめて低速になることがあります。これは MySQL がデータ読み取りのためのファイルシステムキャッシュの実行をオペレーティングシステムに依存しているためで、ファイルシステムキャッシュのためにいくらかの空きを残しておく必要があります。また、MyISAM に追加して使用するほかのストレージエンジンのメモリー要件も考慮します。

    多くの行の同時書き込みなどスピードを高めるには、LOCK TABLES を使用します。セクション8.2.2.1「INSERT ステートメントの速度」を参照してください。

    キーバッファーのパフォーマンスを確認するために、SHOW STATUS ステートメントを発行し、Key_read_requestsKey_readsKey_write_requests、および Key_writes のステータス変数を調べることができます。(セクション13.7.5「SHOW 構文」を参照してください。)Key_reads/Key_read_requests の比率は通常は 0.01 より小さくなります。操作がほとんど更新と削除だけの場合は Key_writes/Key_write_requests の比率は 1 に近くなりますが、同時に多くの行に影響を与える更新を行う場合や、DELAY_KEY_WRITE テーブルオプションを使用する場合はもっと小さくなることがあります。

    使用中のキーバッファーの部分は、key_buffer_size に加えて、Key_blocks_unused ステータス変数と、key_cache_block_size システム変数から利用可能なバッファーブロックサイズを使用して決定できます。

    1 - ((Key_blocks_unused * key_cache_block_size) / key_buffer_size)
    

    キーバッファー内の一部のスペースは、管理構造の内部で割り当てられるため、この値は概算です。これらの構造についてのオーバーヘッドの量に影響する要素には、ブロックサイズおよびポインタサイズがあります。ブロックサイズが増加すると、オーバーヘッドで失われるキーバッファーのパーセントが減少する傾向にあります。ブロックが大きくなると、読み取り操作の数が少なくなりますが (読み取りあたりで取得されるキーが増えるため)、検査されないキーの読み取りが逆に増加します (ブロック内の一部のキーがクエリーに関連していない場合)。

    MyISAM の複数キーキャッシュを作成できます。グループとしてではなく個別の各キャッシュに対して 4G バイトのサイズ制限が適用されます。セクション8.9.2「MyISAM キーキャッシュ」を参照してください。

  • key_cache_age_threshold

    コマンド行形式 --key_cache_age_threshold=#
    システム変数 名前 key_cache_age_threshold
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 300
    最小値 100
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 300
    最小値 100
    最大値 18446744073709551615

    この値は、キーキャッシュのホットサブリストからウォームサブリストへのバッファーの格下げを制御します。値が低いと格下げが早く行われます。最小値は 100 です。デフォルト値は 300 です。セクション8.9.2「MyISAM キーキャッシュ」を参照してください。

  • key_cache_block_size

    コマンド行形式 --key_cache_block_size=#
    システム変数 名前 key_cache_block_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 1024
    最小値 512
    最大値 16384

    キーキャッシュ内のバイト単位のブロックのサイズ。デフォルト値は 1024 です。セクション8.9.2「MyISAM キーキャッシュ」を参照してください。

  • key_cache_division_limit

    コマンド行形式 --key_cache_division_limit=#
    システム変数 名前 key_cache_division_limit
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 100
    最小値 1
    最大値 100

    キーキャッシュバッファーリストのホットサブリストとウォームサブリストの間の分割点。値は、ウォームサブリスト用に使用するバッファーリストのパーセントです。許可される値の範囲は 1 から 100 です。デフォルト値は 100 です。セクション8.9.2「MyISAM キーキャッシュ」を参照してください。

  • large_files_support

    システム変数 名前 large_files_support
    変数スコープ グローバル
    動的変数 いいえ

    大きなファイルをサポートするオプションで mysqld をコンパイルしているかどうか。

  • large_pages

    コマンド行形式 --large-pages
    システム変数 名前 large_pages
    変数スコープ グローバル
    動的変数 いいえ
    プラットフォーム固有 Linux
    許可されている値 (Linux) ブール
    デフォルト FALSE

    大規模ページサポートが (--large-pages オプションで) 有効になっているかどうか。セクション8.11.4.2「ラージページのサポートの有効化」を参照してください。

  • large_page_size

    システム変数 名前 large_page_size
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (Linux) 数値
    デフォルト 0

    大規模ページサポートが有効化されている場合、これはメモリーページのサイズを示します。現在、大規模メモリーページは Linux でのみサポートされており、ほかのプラットフォームではこの変数の値は常に 0 です。セクション8.11.4.2「ラージページのサポートの有効化」を参照してください。

  • last_insert_id

    LAST_INSERT_ID() から返される値。これは、テーブルを更新するステートメント内で LAST_INSERT_ID() を使用するときにバイナリログ内に格納されます。この変数を設定しても、mysql_insert_id() C API 関数によって返される値は更新されません。

  • lc_messages

    コマンド行形式 --lc-messages=name
    システム変数 名前 lc_messages
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列
    デフォルト en_US

    エラーメッセージに使用するロケール。デフォルトは en_US です。サーバーは引数を言語名に変換し、これを lc_messages_dir の値と組み合わせてエラーメッセージファイルの場所を生成します。セクション10.2「エラーメッセージ言語の設定」を参照してください。

  • lc_messages_dir

    コマンド行形式 --lc-messages-dir=dir_name
    システム変数 名前 lc_messages_dir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    エラーメッセージが配置されているディレクトリ。サーバーはこの値を lc_messages の値と一緒に使用して、エラーメッセージファイルの場所を生成します。セクション10.2「エラーメッセージ言語の設定」を参照してください。

  • lc_time_names

    システム変数 名前 lc_time_names
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    この変数は、日および月の名前と略語を表示するために使用する言語を制御するロケールを指定します。この変数は DATE_FORMAT()DAYNAME()、および MONTHNAME() 関数の出力に影響を与えます。ロケール名は、'ja_JP''pt_BR' などの POSIX 規格の値です。システムのロケール設定に関係なく、デフォルト値は 'en_US' です。詳細については、セクション10.7「MySQL Server のロケールサポート」を参照してください。

  • license

    システム変数 名前 license
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列
    デフォルト GPL

    サーバーが持つライセンスのタイプ。

  • local_infile

    システム変数 名前 local_infile
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール

    LOAD DATA INFILE ステートメントで LOCAL がサポートされているかどうか。この変数が無効な場合、クライアントは LOAD DATA ステートメントで LOCAL を使用できません。セクション6.1.6「LOAD DATA LOCAL のセキュリティーの問題」を参照してください。

  • lock_wait_timeout

    コマンド行形式 --lock_wait_timeout=#
    システム変数 名前 lock_wait_timeout
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 31536000
    最小値 1
    最大値 31536000

    この変数は、メタデータロックを取得するための試行のタイムアウトを秒単位で指定します。許可される値の範囲は 1 から 31536000 (1 年) です。デフォルトは 31536000 です。

    このタイムアウトは、メタデータロックを使用するすべてのステートメントに適用されます。これらには、テーブル、ビュー、ストアドプロシージャー、ストアドファンクションの DML 操作および DDL 操作のほかに、LOCK TABLESFLUSH TABLES WITH READ LOCK、および HANDLER ステートメントが含まれます。

    このタイムアウトは、GRANT または REVOKE ステートメントやテーブルロギングステートメントによって変更される付与テーブルなど、mysql データベース内のシステムテーブルへの暗黙的なアクセスには適用されません。タイムアウトは、SELECTUPDATE などによって直接アクセスされるシステムテーブルに適用されます。

    タイムアウト値は、メタデータロック試行ごとに別々に適用されます。ある特定のステートメントが複数のロックを必要とする場合もあるため、タイムアウトエラーを報告する前に、ステートメントが lock_wait_timeout 値よりも長くブロックする可能性もあります。ロックタイムアウトが発生すると、ER_LOCK_WAIT_TIMEOUT が報告されます。

    lock_wait_timeout は、常に 1 年のタイムアウトで実行される遅延挿入に適用されません。これは不要なタイムアウトを回避するために行われます。遅延挿入を発行するセッションは、遅延挿入タイムアウトの通知を受け取らないためです。

  • locked_in_memory

    システム変数 名前 locked_in_memory
    変数スコープ グローバル
    動的変数 いいえ

    mysqld--memlock によってメモリー内でロックされたかどうか。

  • log

    非推奨 5.1.29, by general-log
    削除 5.6.1
    コマンド行形式 --log[=file_name]
    システム変数 名前 log
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ファイル名

    この変数は MySQL 5.6.1 で削除されました。代わりに general_log を使用してください。

  • log_bin_trust_function_creators

    コマンド行形式 --log-bin-trust-function-creators
    システム変数 名前 log_bin_trust_function_creators
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト FALSE

    この変数は、バイナリロギングが有効な場合に適用されます。これは、安全ではないイベントがバイナリログに書き込まれる原因となるストアドファンクションを、ストアドファンクションの生成者が作成しないということを信頼できるかどうかを制御します。0 (デフォルト) に設定した場合、ユーザーは CREATE ROUTINE または ALTER ROUTINE 権限に加えて SUPER 権限を持たないかぎり、ストアドファンクションを作成または変更することが許可されません。0 に設定することで、関数を DETERMINISTIC 特性で、あるいは READS SQL DATA または NO SQL 特性で宣言する必要があるという制約も強制されます。変数が 1 に設定された場合、MySQL はストアドファンクション作成にこれらの制約を強制しません。この変数はトリガー作成にも適用されます。セクション20.7「ストアドプログラムのバイナリロギング」を参照してください。

  • log_error

    コマンド行形式 --log-error[=file_name]
    システム変数 名前 log_error
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    エラーログの場所か、サーバーが標準エラー出力にエラーメッセージを書き込む場合は空白。セクション5.2.2「エラーログ」 を参照してください。

  • log_output

    コマンド行形式 --log-output=name
    システム変数 名前 log_output
    変数スコープ グローバル
    動的変数 はい
    許可されている値 セット
    デフォルト FILE
    有効な値 TABLE
    FILE
    NONE

    一般クエリーログおよびスロークエリーログの出力先。値は TABLE (テーブルへのログ)、FILE (ファイルへのログ)、NONE (テーブルまたはファイルをログしない) という 1 つ以上の単語のカンマ区切りリストにできます。デフォルト値は FILE です。NONE がある場合は、ほかの指定子よりも優先されます。値が NONE の場合、ログが有効であってもログエントリは書き込まれません。ログが有効でない場合、log_output の値が NONE でなくてもロギングは実行されません。詳細については、セクション5.2.1「一般クエリーログおよびスロークエリーログの出力先の選択」を参照してください。

  • log_queries_not_using_indexes

    コマンド行形式 --log-queries-not-using-indexes
    システム変数 名前 log_queries_not_using_indexes
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    インデックスを使用しないクエリーがスロークエリーログに記録されるかどうか。セクション5.2.5「スロークエリーログ」を参照してください。

  • log_slow_admin_statements

    導入 5.6.11
    システム変数 名前 log_slow_admin_statements
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    スロークエリーログに書き込まれるステートメントにスロー管理ステートメントを含めます。管理ステートメントには、ALTER TABLEANALYZE TABLECHECK TABLECREATE INDEXDROP INDEXOPTIMIZE TABLE、および REPAIR TABLE が含まれます。

    この変数は --log-slow-admin-statements オプションの置換として MySQL 5.6.11 で追加されました。システム変数はオプションと同じ方法でコマンド行またはオプションファイルに設定できるため、サーバー起動時に何らかの変更を行う必要はありませんが、システム変数は実行時に値を検査または設定することも可能です。

  • log_slow_queries

    非推奨 5.1.29, by slow-query-log
    削除 5.6.1
    コマンド行形式 --log-slow-queries[=name]
    システム変数 名前 log_slow_queries
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール

    この変数は MySQL 5.6.1 で削除されました。代わりに slow_query_log を使用してください。

  • log_throttle_queries_not_using_indexes

    導入 5.6.5
    システム変数 名前 log_throttle_queries_not_using_indexes
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0

    log_queries_not_using_indexes が有効な場合、log_throttle_queries_not_using_indexes 変数は、スロークエリーログに書き込み可能な分あたりのクエリー数を制限します。値 0 (デフォルト) は制限なしを意味します。詳細は、セクション5.2.5「スロークエリーログ」を参照してください。

    この変数は MySQL 5.6.5 で追加されました。

  • log_warnings

    コマンド行形式 --log-warnings[=#]
    システム変数 (<= 5.6.3) 名前 log_warnings
    変数スコープ グローバル、セッション
    動的変数 はい
    システム変数 (>= 5.6.4) 名前 log_warnings
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 1
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 1
    最小値 0
    最大値 18446744073709551615

    追加の警告メッセージをエラーログに生成するかどうか。この変数はデフォルトで有効 (1) になっており、これを 0 に設定することによって無効にできます。値が 0 より大きい場合、サーバーはステートメントベースのロギングについて、安全ではないステートメントに関するメッセージをログに記録します。値が 1 より大きい場合、新規接続試行の接続の中止およびアクセス拒否エラーがログに記録されます。

  • long_query_time

    コマンド行形式 --long_query_time=#
    システム変数 名前 long_query_time
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 10
    最小値 0

    クエリーの時間がこの秒数よりかかると、サーバーは Slow_queries ステータス変数を増やします。スロークエリーログが有効な場合、クエリーはスロークエリーログファイルに記録されます。この値は CPU 時間でなくリアルタイムで測定されるため、負荷の軽いシステムでしきい値を下回るクエリーが、負荷の重いシステムではしきい値を超える場合もあります。long_query_time の最小値およびデフォルト値は、それぞれ 0 および 10 です。値はマイクロ秒の精度まで指定できます。ファイルへのロギングの場合、時間はマイクロ秒の部分も含めて書き込まれます。テーブルへのロギングの場合、時間の整数部のみ書き込まれ、マイクロ秒の部分は無視されます。セクション5.2.5「スロークエリーログ」を参照してください。

  • low_priority_updates

    コマンド行形式 --low-priority-updates
    システム変数 名前 low_priority_updates
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト FALSE

    1 に設定された場合、すべての INSERTUPDATEDELETE、および LOCK TABLE WRITE ステートメントは、影響を受けるテーブルでの保留中の SELECT または LOCK TABLE READ がなくなるまで待機します。これは、テーブルレベルロックのみを使用するストレージエンジン (MyISAMMEMORY、および MERGE) にのみ影響を与えます。

  • lower_case_file_system

    システム変数 名前 lower_case_file_system
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ブール

    この変数は、データディレクトリが配置されているファイルシステムでのファイル名の大文字小文字の区別を示します。OFF はファイル名が大文字小文字を区別することを意味し、ON は大文字小文字を区別しないことを意味します。この変数は、ファイルシステム属性を反映するため読み取り専用で、変数を設定してもファイルシステムに影響しません。

  • lower_case_table_names

    コマンド行形式 --lower_case_table_names[=#]
    システム変数 名前 lower_case_table_names
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 2

    0 に設定されると、テーブル名は指定したとおりに格納され、比較では大文字と小文字が区別されます。1 に設定されると、テーブル名はディスク上に小文字で格納され、比較では大文字と小文字は区別されません。2 に設定されると、テーブル名は指定したとおりに格納されますが、小文字で比較されます。このオプションはデータベース名やテーブルエイリアスにも適用されます。追加情報については セクション9.2.2「識別子の大文字と小文字の区別」を参照してください。

    大文字小文字を区別しないファイル名を持つシステム (Windows や OS X など) で MySQL を実行する場合、この変数を 0 に設定しないでください。そのようなシステムでこの変数を 0 に設定し、大文字を小文字に (あるいは小文字を大文字に) 入れ替えて MyISAM テーブルスペースにアクセスすると、インデックスの破損が発生することがあります。Windows では、デフォルト値は 1 です。OS X では、デフォルト値は 2 です。

    InnoDB テーブルを使用する場合、名前を強制的に小文字に変換するために、すべてのプラットフォームでこの値を 1 に設定します。

    MySQL 5.6 でのこの変数の設定は、大文字小文字の区別に関するレプリケーションのフィルタ処理オプションの動作に影響します。これは以前のバージョンの MySQL からの変更点です。(バグ #51639) 詳細については、セクション17.2.3「サーバーがレプリケーションフィルタリングルールをどのように評価するか」を参照してください。

    以前のバージョンの MySQL では、レプリケーションマスターとスレーブの lower_case_table_names に異なる設定を使用すると、スレーブが大文字小文字を区別するファイルシステムを使用していた場合にレプリケーションが失敗する可能性がありました。この問題は MySQL 5.6.1 で解決されました。詳細については、セクション17.4.1.34「レプリケーションと変数」を参照してください。

  • max_allowed_packet

    コマンド行形式 --max_allowed_packet=#
    システム変数 名前 max_allowed_packet
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.5) 数値
    デフォルト 1048576
    最小値 1024
    最大値 1073741824
    許可されている値 (>= 5.6.6) 数値
    デフォルト 4194304
    最小値 1024
    最大値 1073741824

    1 つのパケット、生成された文字列または中間文字列、または mysql_stmt_send_long_data() C API 関数によって送信されたすべてのパラメータの最大サイズ。デフォルトは、MySQL 5.6.6 では 4M バイト、それより前については 1M バイトです。

    パケットメッセージバッファーは net_buffer_length バイトに初期化されますが、必要に応じて max_allowed_packet バイトまで大きくできます。この値はデフォルトでは小さいため、大きい (正しくない可能性がある) パケットをキャッチできません。

    大きい BLOB カラムまたは長い文字列を使用している場合、この値を大きくする必要があります。使用する最大の BLOB と同じ大きさにしてください。max_allowed_packet のプロトコル制限は 1G バイトです。値は 1024 の倍数にします。倍数でない場合、もっとも近い倍数に切り下げられます。

    max_allowed_packet 変数の値を変更することによってメッセージバッファーサイズを変更するとき、クライアントプログラムでそれが可能である場合は、クライアント側のバッファーサイズも変更します。クライアントライブラリに組み込まれるデフォルトの max_allowed_packet 値は 1G バイトですが、個々のクライアントプログラムはこれをオーバーライドできます。たとえば、mysql および mysqldump のデフォルトは、それぞれ 16M バイトおよび 24M バイトです。また、コマンド行またはオプションファイル内で max_allowed_packet を設定することによって、クライアント側の値を変更することもできます。

    この変数のセッションの値は、読み取り専用です。

  • max_connect_errors

    コマンド行形式 --max_connect_errors=#
    システム変数 名前 max_connect_errors
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム, <= 5.6.5) 数値
    デフォルト 10
    最小値 1
    最大値 4294967295
    許可されている値 (32 ビットプラットフォーム, >= 5.6.6) 数値
    デフォルト 100
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム, <= 5.6.5) 数値
    デフォルト 10
    最小値 1
    最大値 18446744073709551615
    許可されている値 (64 ビットプラットフォーム, >= 5.6.6) 数値
    デフォルト 100
    最小値 1
    最大値 18446744073709551615

    ホストからの連続する接続リクエストが、接続に成功することなくこの数を超えて中断した場合、サーバーはホストのその後の接続をブロックします。ブロックされたホストは、ホストキャッシュをフラッシュしてブロック解除できます。これを行うには、FLUSH HOSTS ステートメントを発行するか、mysqladmin flush-hosts コマンドを実行します。以前の接続が中断されたあと、max_connect_errors 回の試行よりも少ない回数で接続が正常に確立された場合、ホストのエラーカウントはゼロにクリアされます。ただし、ホストがブロックされた場合、ホストキャッシュをフラッシュすることが、ホストのブロックを解除するためのただ 1 つの方法です。デフォルトは、MySQL 5.6.6 以降では 100 で、それより前では 10 です。

  • max_connections

    コマンド行形式 --max_connections=#
    システム変数 名前 max_connections
    変数スコープ グローバル
    動的変数 はい
    許可されている値 整数
    デフォルト 151
    最小値 1
    最大値 100000

    許可される最大のクライアントの同時接続数。デフォルトでは、これは 151 です。詳細については、セクションB.5.2.7「接続が多すぎます」を参照してください。

    この値を大きくすると、mysqld が要求するファイルディスクリプタの数が増加します。必要な数のディスクリプタが利用できない場合、サーバーは max_connections の値を削減します。ファイルディスクリプタの制限に関する解説は、セクション8.4.3.1「MySQL でのテーブルのオープンとクローズの方法」を参照してください。

    max_connections 制限に到達したことにより接続が拒否されると、Connection_errors_max_connections ステータス変数が増加します。

  • max_delayed_threads

    非推奨 5.6.7
    コマンド行形式 --max_delayed_threads=#
    システム変数 名前 max_delayed_threads
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 20
    最小値 0
    最大値 16384

    非トランザクションテーブル用の INSERT DELAYED ステートメントを処理するには、この数を超えるスレッドを開始しないでください。すべての INSERT DELAYED スレッドが使用中になったあとで、データを新規テーブルに挿入しようとした場合、DELAYED 属性が指定されていない場合と同様に行が挿入されます。これを 0 に設定すると、MySQL は DELAYED 行を処理するスレッドを作成せず、実質的に DELAYED が完全に無効になります。

    この変数の SESSION 値について、有効な値は 0 または GLOBAL 値のみです。

    MySQL 5.6.7 以降では、このシステム変数は非推奨となり (DELAYED 挿入が非推奨となったため)、今後のリリースで削除される予定です。

  • max_error_count

    コマンド行形式 --max_error_count=#
    システム変数 名前 max_error_count
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 64
    最小値 0
    最大値 65535

    SHOW ERRORSSHOW WARNINGS ステートメントで表示するために格納される、エラー、警告、および注記メッセージの最大数。これは診断領域内の条件領域の数と同じで、GET DIAGNOSTICS によって調査できる条件数と同じです。

  • max_heap_table_size

    コマンド行形式 --max_heap_table_size=#
    システム変数 名前 max_heap_table_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 16777216
    最小値 16384
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 16777216
    最小値 16384
    最大値 1844674407370954752

    この変数は、ユーザーが作成した MEMORY テーブルの増加が許可される最大サイズを設定します。この変数の値は MEMORY テーブルの MAX_ROWS 値を計算するために使用されます。この変数を設定しても、既存の MEMORY テーブルに影響しませんが、CREATE TABLE などのステートメントでテーブルを再作成したり、ALTER TABLE または TRUNCATE TABLE でテーブルを変更したりした場合は影響します。サーバーを再起動しても、既存の MEMORY テーブルの最大サイズがグローバルの max_heap_table_size 値に設定されます。

    この変数は、内部インメモリーテーブルのサイズを制限するために tmp_table_size と一緒に使用されることもあります。セクション8.4.4「MySQL が内部一時テーブルを使用する仕組み」を参照してください。

    max_heap_table_size は複製されません。詳しくは、セクション17.4.1.21「レプリケーションと MEMORY テーブル」およびセクション17.4.1.34「レプリケーションと変数」を参照してください。

  • max_insert_delayed_threads

    非推奨 5.6.7
    システム変数 名前 max_insert_delayed_threads
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値

    この変数は、max_delayed_threads のシノニムです。

    MySQL 5.6.7 以降では、このシステム変数は非推奨となり (DELAYED 挿入が非推奨となったため)、今後のリリースで削除される予定です。

  • max_join_size

    コマンド行形式 --max_join_size=#
    システム変数 名前 max_join_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 18446744073709551615
    最小値 1
    最大値 18446744073709551615

    検査が必要となる行数 (単一テーブルステートメントの場合) または行の組み合わせの数 (複数テーブルステートメントの場合) が、max_join_size をおそらく超えるか、ディスクシークが max_join_size 回を超えて実行される可能性があるステートメントを許可しません。この値を設定することで、キーが適切に使用されず長い時間がかかりそうなステートメントをキャッチできます。ユーザーが、WHERE 句のない結合、長い時間がかかる結合、または数百万行を返す結合を実行する傾向がある場合にこれを設定します。

    この変数を DEFAULT 以外の値に設定すると、sql_big_selects の値が 0 にリセットされます。sql_big_selects 値を再設定すると、max_join_size 変数は無視されます。

    クエリー結果がクエリーキャッシュ内にある場合、結果サイズの検査は実行されません。これは、結果は以前計算されており、結果をクライアントに送信するサーバーに負荷をかけないためです。

  • max_length_for_sort_data

    コマンド行形式 --max_length_for_sort_data=#
    システム変数 名前 max_length_for_sort_data
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 1024
    最小値 4
    最大値 8388608

    使用する filesort アルゴリズムを決定するインデックス値のサイズの制限。セクション8.2.1.15「ORDER BY の最適化」を参照してください。

  • max_prepared_stmt_count

    コマンド行形式 --max_prepared_stmt_count=#
    システム変数 名前 max_prepared_stmt_count
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 16382
    最小値 0
    最大値 1048576

    この変数は、サーバー内のプリペアドステートメントの総数を制限します。(すべてのセッションでのプリペアドステートメントの合計数。)これは、大量のステートメントを作成することによってサーバーの実行するメモリーを不足させることに基づくサービス妨害攻撃の可能性がある環境で使用できます。値が現在のプリペアドステートメントの数より低く設定された場合、既存のステートメントは影響を受けずに使用できますが、現在の数が制限を下回るまで新しいステートメントを作成できません。デフォルト値は 16,382 です。許可される値の範囲は 0 から 100 万までです。値を 0 に設定すると、プリペアドステートメントが無効になります。

  • max_relay_log_size

    コマンド行形式 --max_relay_log_size=#
    システム変数 名前 max_relay_log_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 1073741824

    レプリケーションスレーブによるリレーログへの書き込みによって、現在のログファイルサイズがこの変数の値を超えた場合、スレーブはリレーログをローテーションします (現在のファイルを閉じて新しいファイルを開きます)。max_relay_log_size が 0 の場合、サーバーはバイナリログとリレーログの両方に max_binlog_size を使用します。max_relay_log_size が 0 より大きい場合、リレーログのサイズを抑制し、2 つのログに異なるサイズを持たせることが可能になります。max_relay_log_size を 4096 バイトと 1G バイト (両端の値を含む) の間に設定するか、0 にする必要があります。デフォルト値は 0 です。セクション17.2.1「レプリケーション実装の詳細」を参照してください。

  • max_seeks_for_key

    コマンド行形式 --max_seeks_for_key=#
    システム変数 名前 max_seeks_for_key
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4294967295
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 18446744073709551615
    最小値 1
    最大値 18446744073709551615

    キーに基づいて行を参照するとき、推定されるシークの最大数を制限します。MySQL オプティマイザは、インデックスをスキャンすることによってテーブル内で一致する行を検索するとき、インデックスの実際のカーディナリティーに関係なく、この数を超えるキーシークは不要であると推定します (セクション13.7.5.23「SHOW INDEX 構文」を参照してください)。これを低い値 (100 など) に設定することで、MySQL でテーブルスキャンよりもインデックスを優先するように強制できます。

  • max_sort_length

    コマンド行形式 --max_sort_length=#
    システム変数 名前 max_sort_length
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 1024
    最小値 4
    最大値 8388608

    データ値をソートするときに使用するバイト数。それぞれの値の最初の max_sort_length バイトだけを使用し、残りは無視されます。

    MySQL 5.6.9 以降では、max_sort_length は整数、小数、浮動小数点数、および時間データ型について無視されます。

  • max_sp_recursion_depth

    コマンド行形式 --max_sp_recursion_depth[=#]
    システム変数 名前 max_sp_recursion_depth
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最大値 255

    任意のストアドプロシージャーを再帰的に呼び出すことができる回数。このオプションのデフォルト値は 0 で、これはストアドプロシージャーの再帰を完全に無効化します。最大値は 255 です。

    ストアドプロシージャーの再帰により、スレッドスタック領域の要求が増加します。max_sp_recursion_depth の値を増やした場合、サーバー起動時に thread_stack の値を増やすことによってスレッドスタックサイズを増やすことが必要な場合もあります。

  • max_tmp_tables

    この変数は使用されません。これは MySQL 5.6.7 以降で非推奨となり、今後の MySQL リリースで削除されます。

  • max_user_connections

    コマンド行形式 --max_user_connections=#
    システム変数 名前 max_user_connections
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 4294967295

    任意の MySQL ユーザーアカウントに許可された最大同時接続数。値 0 (デフォルト) は制限なしを意味します。

    この変数は、サーバー起動時または実行時に設定できるグローバル値を持ちます。また、現在のセッションに関連付けられたアカウントに適用される、実際の同時接続制限を示す読み取り専用のセッション値も持ちます。セッション値は次のように初期化されます。

    • ユーザーアカウントの MAX_USER_CONNECTIONS リソース制限がゼロでない場合、セッション max_user_connections の値はその制限値に設定されます。

    • そうでない場合、セッション max_user_connections の値はグローバル値に設定されます。

    アカウントのリソース制限は GRANT ステートメントによって指定されます。セクション6.3.4「アカウントリソース制限の設定」およびセクション13.7.1.4「GRANT 構文」を参照してください。

  • max_write_lock_count

    コマンド行形式 --max_write_lock_count=#
    システム変数 名前 max_write_lock_count
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4294967295
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 18446744073709551615
    最小値 1
    最大値 18446744073709551615

    この大きさの書き込みロックのあと、保留中の読み取りロックリクエストの処理を間で許可します。

  • metadata_locks_cache_size

    導入 5.6.4
    システム変数 名前 metadata_locks_cache_size
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 1024
    最小値 1
    最大値 1048576

    メタデータロックキャッシュのサイズ。サーバーはこのキャッシュを使用して、同期オブジェクトの作成および破棄を回避します。これは、このような操作にコストがかかる、Windows XP などのシステムで特に役立ちます。この変数は MySQL 5.6.4 で追加されました。

  • metadata_locks_hash_instances

    導入 5.6.8
    システム変数 名前 metadata_locks_hash_instances
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 8
    最小値 1
    最大値 1024

    一連のメタデータロックは別々のハッシュにパーティション化されて、別々のロックハッシュを使用して競合を削減するために使用する異なるオブジェクトにアクセスする接続が可能になります。metadata_locks_hash_instances システム変数は、ハッシュの数を指定します (デフォルトは 8)。この変数は MySQL 5.6.8 で追加されました。

  • min_examined_row_limit

    コマンド行形式 --min-examined-row-limit=#
    システム変数 名前 min_examined_row_limit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 0
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 0
    最小値 0
    最大値 18446744073709551615

    これよりも少ない行数を検査するクエリーは、スロークエリーログに記録されません。

  • multi_range_count

    コマンド行形式 --multi_range_count=#
    システム変数 名前 multi_range_count
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 256
    最小値 1
    最大値 4294967295

    範囲選択時にテーブルハンドラに一度に送信する範囲の最大数。デフォルト値は 256 です。複数の範囲をハンドラに一度に送信することで、一部の選択のパフォーマンスが劇的に向上します。これは NDBCLUSTER テーブルハンドラについて特に当てはまり、範囲リクエストをすべてのノードに送信する必要があります。これらのリクエストのバッチを一度に送信することで、通信コストが著しく低下します。

    この変数は MySQL 5.6.7 で削除されました。

  • myisam_data_pointer_size

    コマンド行形式 --myisam_data_pointer_size=#
    システム変数 名前 myisam_data_pointer_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 6
    最小値 2
    最大値 7

    MAX_ROWS オプションが指定されていない場合に MyISAM テーブルの CREATE TABLE によって使用されるバイト単位のデフォルトポインタサイズ。この値を 2 より小さくしたり 7 より大きくしたりすることはできません。デフォルト値は 6 です。セクションB.5.2.12「テーブルが満杯です」を参照してください。

  • myisam_max_sort_file_size

    コマンド行形式 --myisam_max_sort_file_size=#
    システム変数 名前 myisam_max_sort_file_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 2147483648
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 9223372036854775807

    MyISAM インデックスを再作成するとき (REPAIR TABLEALTER TABLE、または LOAD DATA INFILE 中に)、MySQL が使用を許可されている一時ファイルの最大サイズ。ファイルサイズがこの値より大きい場合、さらに低速なキーキャッシュを代わりに使用してインデックスが作成されます。値はバイト単位で指定されます。

    MyISAM インデックスファイルがこのサイズを超えて、ディスクスペースが使用できる場合、この値を大きくするとパフォーマンスが向上することがあります。このスペースは、元のインデックスファイルが配置されているディレクトリを含むファイルシステム内で利用する必要があります。

  • myisam_mmap_size

    コマンド行形式 --myisam_mmap_size=#
    システム変数 名前 myisam_mmap_size
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4294967295
    最小値 7
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 18446744073709551615
    最小値 7
    最大値 18446744073709551615

    圧縮された MyISAM ファイルのメモリーマッピングに使用する最大のメモリー量。圧縮された MyISAM テーブルが多く使用される場合、この値を減らすことで、メモリースワッピングの問題が生じるおそれを低下できます。

  • myisam_recover_options

    システム変数 名前 myisam_recover_options
    変数スコープ グローバル
    動的変数 いいえ

    --myisam-recover-options オプションの値。セクション5.1.3「サーバーコマンドオプション」を参照してください。

  • myisam_repair_threads

    コマンド行形式 --myisam_repair_threads=#
    システム変数 名前 myisam_repair_threads
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 1
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 1
    最小値 1
    最大値 18446744073709551615

    この値が 1 より大きい場合、MyISAM テーブルインデックスは Repair by sorting プロセス中に並列で作成されます (各インデックスはインデックス独自のスレッド内)。デフォルト値は 1 です。

    注記

    複数スレッドの修復は、まだベータ品質コードです。

  • myisam_sort_buffer_size

    コマンド行形式 --myisam_sort_buffer_size=#
    システム変数 名前 myisam_sort_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (Windows) 数値
    デフォルト 8388608
    最小値 4096
    最大値 4294967295
    許可されている値 (その他, 32 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 4096
    最大値 4294967295
    許可されている値 (その他, 64 ビットプラットフォーム) 数値
    デフォルト 8388608
    最小値 4096
    最大値 18446744073709551615

    REPAIR TABLE 中に MyISAM インデックスをソートするときや、CREATE INDEX または ALTER TABLE を使用してインデックスを作成するときに割り当てられるバッファーのサイズ。

    myisam_sort_buffer_size に対して許可される最大の設定値は 4G バイト − 1 です。64 ビットプラットフォームの場合は大きい値が許可されます (64 ビットの Windows の場合は例外で、大きい値は 4G バイト − 1 に切り捨てられて警告が出ます)。

  • myisam_stats_method

    コマンド行形式 --myisam_stats_method=name
    システム変数 名前 myisam_stats_method
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト nulls_unequal
    有効な値 nulls_equal
    nulls_unequal
    nulls_ignored

    MyISAM テーブルのインデックス値の分布に関する統計を収集するときに、サーバーが NULL 値を扱う方法。この変数は、nulls_equalnulls_unequal、および nulls_ignored の 3 つの値を指定できます。nulls_equal の場合、すべての NULL インデックス値を同等として扱い、NULL 値の数とサイズが同等の単一値グループを生成します。nulls_unequal の場合、NULL 値同士を同等として扱わず、それぞれの NULL はサイズが 1 の別個のグループを生成します。nulls_ignored の場合、NULL 値は無視されます。

    テーブル統計を生成するために使用する方法は、セクション8.3.7「InnoDB および MyISAM インデックス統計コレクション」に記載されているように、オプティマイザがクエリー実行のためのインデックスを選択する方法に影響を与えます。

  • myisam_use_mmap

    コマンド行形式 --myisam_use_mmap
    システム変数 名前 myisam_use_mmap
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    MyISAM テーブルの読み取りおよび書き込みでメモリーマッピングを使用します。

  • named_pipe

    システム変数 名前 named_pipe
    変数スコープ グローバル
    動的変数 いいえ
    プラットフォーム固有 Windows
    許可されている値 (Windows) ブール
    デフォルト OFF

    (Windows のみ。)サーバーが名前付きパイプでの接続をサポートしているかどうかを指定します。

  • net_buffer_length

    コマンド行形式 --net_buffer_length=#
    システム変数 名前 net_buffer_length
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 16384
    最小値 1024
    最大値 1048576

    各クライアントスレッドは、接続バッファーおよび結果バッファーに関連付けられています。両者は net_buffer_length で与えられたサイズで開始されますが、必要に応じて、max_allowed_packet バイトまで動的に拡大できます。結果バッファーは、各 SQL ステートメントのあとで net_buffer_length に縮小されます。

    この変数は通常は変更しませんが、メモリーが非常に少ない場合、クライアントによって送信される予想されるステートメントの長さに設定できます。ステートメントがこの長さを超えた場合、接続バッファーは自動的に拡大されます。net_buffer_length の最大値は 1M バイトに設定できます。

    この変数のセッションの値は、読み取り専用です。

  • net_read_timeout

    コマンド行形式 --net_read_timeout=#
    システム変数 名前 net_read_timeout
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 30
    最小値 1

    読み取りを中止する前に接続からのデータを待機する秒数。サーバーがクライアントからの読み込みを行うとき、net_read_timeout は中止するタイミングを制御するタイムアウト値です。サーバーがクライアントに書き込みを行うとき、net_write_timeout は中止するタイミングを制御するタイムアウト値です。slave_net_timeoutも参照してください。

  • net_retry_count

    コマンド行形式 --net_retry_count=#
    システム変数 名前 net_retry_count
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 10
    最小値 1
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 10
    最小値 1
    最大値 18446744073709551615

    通信ポートでの読み取りまたは書き込みが中断された場合、停止するまでこの回数だけ再試行します。FreeBSD では内部の中断がすべてのスレッドに送信されるため、この値をきわめて高く設定するようにしてください。

  • net_write_timeout

    コマンド行形式 --net_write_timeout=#
    システム変数 名前 net_write_timeout
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 60
    最小値 1

    書き込みを中止する前にブロックが接続に書き込まれるのを待機する秒数。net_read_timeout も参照してください。

  • new

    コマンド行形式 --new
    システム変数 名前 new
    変数スコープ グローバル、セッション
    動的変数 はい
    無効化 skip-new
    許可されている値 ブール
    デフォルト FALSE

    この変数は、一部の 4.1 の動作をオンにするために MySQL 4.0 で使用されており、下位互換性のために保持されています。MySQL 5.6 では、この値は常に OFF です。

  • old

    コマンド行形式 --old
    システム変数 名前 old
    変数スコープ グローバル
    動的変数 いいえ

    old は互換性変数です。これはデフォルトでは無効化されていますが、以前のバージョンに存在した動作にサーバーを戻すために、起動時に有効にできます。

    現時点では、old が有効化された場合、インデックスヒントのデフォルトのスコープを、MySQL 5.1.17 以前に使用されていたものに変更します。つまり、FOR 句を使用しないインデックスヒントは、インデックスが行の取得に使用する方法についてのみ適用され、ORDER BY 句または GROUP BY 句の解決には適用されません。(セクション13.2.9.3「インデックスヒントの構文」を参照してください。)レプリケーションのセットアップでこれを有効にする場合は注意してください。ステートメントベースのバイナリロギングで、マスターとスレーブに異なるモードを指定するとレプリケーションエラーが発生する場合があります。

  • old_alter_table

    コマンド行形式 --old-alter-table
    システム変数 名前 old_alter_table
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    この変数を有効にすると、サーバーは ALTER TABLE 操作を処理する最適化された方法を使用しません。一時テーブルの使用に戻り、データのコピー後、MySQL 5.0 以前で使用されていたように、一時テーブルを元のテーブルの名前に変更します。ALTER TABLE の操作について詳しくは、セクション13.1.7「ALTER TABLE 構文」を参照してください。

  • old_passwords

    システム変数 名前 old_passwords
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (<= 5.6.5) ブール
    デフォルト 0
    許可されている値 (>= 5.6.6) 列挙
    デフォルト 0
    有効な値 0
    1
    2

    この変数は、PASSWORD() 関数によって使用されるパスワードハッシュ方式を制御します。これは、IDENTIFIED BY 句を使用してパスワードを指定する CREATE USER および GRANT ステートメントによって実行されるパスワードハッシュにも影響します。

    次の表は、old_passwords の許可される値、それぞれの値に対するパスワードハッシュ方式、およびそれぞれの方式でハッシュされたパスワードを使用する認証プラグインを示します。これらの値は MySQL 5.6.6 以降で許可されます。5.6.6 より前では、許可される値は 0 (または OFF) および 1 (または ON) です。

    パスワードハッシュ方式 関連付けられた認証プラグイン
    0 MySQL 4.1 ネイティブハッシュ mysql_native_password
    1 4.1 以前の (古い) ハッシュ mysql_old_password
    2 SHA-256 ハッシュ sha256_password

    old_passwords=1 の場合、PASSWORD(str)OLD_PASSWORD(str) と同じ値を返します。後者の関数は old_passwords の値によって影響を受けません。

    old_passwords=2 を設定する場合、セクション6.3.8.4「SHA-256 認証プラグイン」sha256_password プラグインを使用するための指示に従ってください。

    MySQL 5.6.6 以降では、サーバーは起動中に、デフォルトの認証プラグインによって必要となるパスワードハッシュ方式と整合性がとれるようにグローバルの old_passwords 値を設定します。--default-authentication-plugin オプションが別のものに設定されないかぎり、デフォルトプラグインは mysql_native_password です。

    MySQL 5.6.10 以降では、クライアントがサーバーに正常に接続すると、サーバーはアカウント認証方式について適切なセッション old_passwords 値を設定します。たとえば、アカウントが sha256_password 認証プラグインを使用する場合、サーバーは old_passwords=2 を設定します。

    認証プラグインおよびハッシュ形式についての追加情報は、セクション6.3.7「プラガブル認証」およびセクション6.1.2.4「MySQL でのパスワードハッシュ」を参照してください。

    注記

    4.1 より前のハッシュ方式を使用するパスワードはネイティブのパスワードハッシュ方式を使用するパスワードよりもセキュアでないため、使用しないようにしてください。4.1 よりも前のパスワードは非推奨であり、これらのサポートは今後の MySQL リリースで削除される予定です。その結果、PASSWORD() で 4.1 以前のパスワードハッシュを生成する old_passwords=1 も非推奨となります。アカウントのアップグレード手順については、セクション6.3.8.3「4.1 よりも前のパスワードハッシュ方式と mysql_old_password プラグインからの移行」を参照してください。

  • open_files_limit

    コマンド行形式 --open-files-limit=#
    システム変数 名前 open_files_limit
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (<= 5.6.7) 数値
    デフォルト 0
    最小値 0
    最大値 platform dependent
    許可されている値 (>= 5.6.8) 数値
    デフォルト 5000, with possible adjustment
    最小値 0
    最大値 platform dependent

    オペレーティングシステムで mysqld が開くことを許可するファイル数。実行時でのこの変数の値はシステムによって許可される実際の値であるため、サーバー起動時に指定した値と異なる場合があります。MySQL がオープンファイルの数を変更できないシステムでは、値は 0 です。

    実際の open_files_limit の値は、システム起動時に指定された値 (ある場合) と、max_connections および table_open_cache の値に基づき、次の式を使用します。

    1) 10 + max_connections + (table_open_cache * 2)
    2) max_connections * 5
    3) open_files_limit value specified at startup, 5000 if none
    

    サーバーはこれらの 3 つの値の最大値を使用して、ファイルディスクリプタの数を取得しようとします。その数のディスクリプタが取得できない場合、サーバーはシステムに許可されるできるだけ多くの数を取得しようとします。

  • optimizer_join_cache_level

    導入 5.6.1
    削除 5.6.3
    コマンド行形式 --optimizer_join_cache_level=#
    システム変数 名前 optimizer_join_cache_level
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 4
    最小値 0
    最大値 4

    MySQL 5.6.3 より前では、この変数は結合バッファー管理に使用されます。これは結合操作のための結合バッファーの使用法を制御します。MySQL 5.6.3 以降では、これは削除されて optimizer_switch 変数が代わりに使用されます。セクション8.2.1.14「Block Nested Loop 結合と Batched Key Access 結合」を参照してください。

    次の表は、許可される optimizer_join_cache_level 値を示します。

    オプション 説明
    0 すべての結合操作で結合バッファーは使用されません。この設定は、結合バッファリングの使用を可能にする非ゼロ値でのパフォーマンスと比較した、結合の基準パフォーマンスの評価に役立てることができます。
    1 これはデフォルト値です。結合バッファーは、元の Block Nested-Loop (BNL) 結合アルゴリズムによって実行される内部結合についてのみ利用されます。このアルゴリズムが適用された場合、内部テーブルの行は、テーブルスキャン、単純インデックススキャン、または範囲インデックススキャンによってアクセスされます。
    2 サーバーは、その最初のオペランドが結合バッファー自体を使用する結合操作によって生成される場合、結合操作に対して増分結合バッファーを使用します。
    3 1 つの内部テーブルを持つ外部結合操作および内部結合について、BNL アルゴリズムが使用されます。
    4 BNL アルゴリズムは、内部テーブルに対して増分バッファーを使用します。この場合、BNL アルゴリズムはネストされた外部結合 (いくつかの内部テーブルを持つ外部結合) について使用できます。このような操作は、最初のものを除くすべての内部テーブルを結合するために増分結合バッファーが使用される場合にのみ実行できます。
  • optimizer_prune_level

    コマンド行形式 --optimizer_prune_level[=#]
    システム変数 名前 optimizer_prune_level
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 1

    見込みのない部分的プランをオプティマイザ検索スペースから削除するために、クエリー最適化中に適用される経験則を制御します。値 0 は、オプティマイザが網羅的な検索を実行できるよう経験則を無効にします。値 1 は、中間プランによって取得された行の数に基づいて、オプティマイザにプランを削除させます。

  • optimizer_search_depth

    コマンド行形式 --optimizer_search_depth[=#]
    システム変数 名前 optimizer_search_depth
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 62
    最小値 0
    最大値 62

    クエリーオプティマイザによって実行される検索の最大の深さ。クエリー内の関係の数より値が大きいと、適切なクエリー計画が得られますが、クエリーの実行計画の生成に時間がかかります。クエリー内の関係の数より値が小さいと、実行プランがすばやく返されますが、結果のプランがまったく最適にならないことがあります。0 に設定された場合、システムは合理的な値を自動的に選択します。

  • optimizer_switch

    コマンド行形式 --optimizer_switch=value
    システム変数 名前 optimizer_switch
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (5.6.0) セット
    有効な値 engine_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    許可されている値 (>= 5.6.1, <= 5.6.2) セット
    有効な値 engine_condition_pushdown={on|off}
    index_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    mrr={on|off}
    mrr_cost_based={on|off}
    許可されている値 (>= 5.6.3, <= 5.6.4) セット
    有効な値 batched_key_access={on|off}
    block_nested_loop={on|off}
    engine_condition_pushdown={on|off}
    index_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    mrr={on|off}
    mrr_cost_based={on|off}
    許可されている値 (>= 5.6.5, <= 5.6.6) セット
    有効な値 batched_key_access={on|off}
    block_nested_loop={on|off}
    engine_condition_pushdown={on|off}
    firstmatch={on|off}
    index_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    loosescan={on|off}
    materialization={on|off}
    mrr={on|off}
    mrr_cost_based={on|off}
    semijoin={on|off}
    許可されている値 (>= 5.6.7, <= 5.6.8) セット
    有効な値 batched_key_access={on|off}
    block_nested_loop={on|off}
    engine_condition_pushdown={on|off}
    firstmatch={on|off}
    index_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    loosescan={on|off}
    materialization={on|off}
    mrr={on|off}
    mrr_cost_based={on|off}
    semijoin={on|off}
    subquery_materialization_cost_based={on|off}
    許可されている値 (>= 5.6.9) セット
    有効な値 batched_key_access={on|off}
    block_nested_loop={on|off}
    engine_condition_pushdown={on|off}
    firstmatch={on|off}
    index_condition_pushdown={on|off}
    index_merge={on|off}
    index_merge_intersection={on|off}
    index_merge_sort_union={on|off}
    index_merge_union={on|off}
    loosescan={on|off}
    materialization={on|off}
    mrr={on|off}
    mrr_cost_based={on|off}
    semijoin={on|off}
    subquery_materialization_cost_based={on|off}
    use_index_extensions={on|off}

    optimizer_switch システム変数を使用するとオプティマイザの動作を制御できます。この変数の値はフラグのセットで、各フラグは対応するオプティマイザの動作の有効または無効を示す on または off を値を持ちます。この変数はグローバル値およびセッション値を持ち、実行時に変更できます。グローバル値のデフォルトはサーバーの起動時に設定できます。

    オプティマイザの現在のフラグセットを表示するには、変数値を選択します。

    mysql> SELECT @@optimizer_switch\G
    *************************** 1. row ***************************
    @@optimizer_switch: index_merge=on,index_merge_union=on,
                        index_merge_sort_union=on,
                        index_merge_intersection=on,
                        engine_condition_pushdown=on,
                        index_condition_pushdown=on,
                        mrr=on,mrr_cost_based=on,
                        block_nested_loop=on,batched_key_access=off,
                        materialization=on,semijoin=on,loosescan=on,
                        firstmatch=on,
                        subquery_materialization_cost_based=on,
                        use_index_extensions=on
    

    この変数の構文と、制御するオプティマイザの動作の詳細については、セクション8.8.5.2「切り替え可能な最適化の制御」を参照してください。

  • optimizer_trace

    導入 5.6.3
    システム変数 名前 optimizer_trace
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    この変数はオプティマイザのトレースを制御します。詳細については、「MySQL Internals: Tracing the Optimizer」を参照してください。この変数は MySQL 5.6.3 で追加されました。

  • optimizer_trace_features

    導入 5.6.3
    システム変数 名前 optimizer_trace_features
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    この変数は選択されたオプティマイザトレース機能を有効または無効にします。詳細については、「MySQL Internals: Tracing the Optimizer」を参照してください。この変数は MySQL 5.6.3 で追加されました。

  • optimizer_trace_limit

    導入 5.6.3
    システム変数 名前 optimizer_trace_limit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 1

    表示するオプティマイザトレースの最大数。詳細については、「MySQL Internals: Tracing the Optimizer」を参照してください。この変数は MySQL 5.6.3 で追加されました。

  • optimizer_trace_max_mem_size

    導入 5.6.3
    システム変数 名前 optimizer_trace_max_mem_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 16384

    格納されるオプティマイザトレースの最大累積サイズ。詳細については、「MySQL Internals: Tracing the Optimizer」を参照してください。この変数は MySQL 5.6.3 で追加されました。

  • optimizer_trace_offset

    導入 5.6.3
    システム変数 名前 optimizer_trace_offset
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト -1

    表示するオプティマイザトレースのオフセット。詳細については、「MySQL Internals: Tracing the Optimizer」を参照してください。この変数は MySQL 5.6.3 で追加されました。

  • performance_schema_xxx

    パフォーマンススキーマのシステム変数は、セクション22.12「パフォーマンススキーマシステム変数」にリストされています。これらの変数は、パフォーマンススキーマ操作を構成するために使用されることもあります。

  • pid_file

    コマンド行形式 --pid-file=file_name
    システム変数 名前 pid_file
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    プロセス ID (PID) ファイルのパス名。この変数は、--pid-file オプションで設定できます。

  • plugin_dir

    コマンド行形式 --plugin_dir=path
    システム変数 名前 plugin_dir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名
    デフォルト BASEDIR/lib/plugin

    プラグインディレクトリのパス名。

    プラグインディレクトリがサーバーによって書き込み可能な場合、ユーザーは SELECT ... INTO DUMPFILE を使用して、ディレクトリ内のファイルに実行可能コードを書き込むことができます。これを防ぐために、plugin_dir をサーバーに対して読み取り専用にしたり、SELECT 書き込みが安全に実行できるディレクトリに --secure-file-priv を設定したりできます。

  • port

    コマンド行形式 --port=#
    システム変数 名前 port
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 3306
    最小値 0
    最大値 65535

    サーバーが TCP/IP 接続を listen するポートの数。この変数は、--port オプションで設定できます。

  • preload_buffer_size

    コマンド行形式 --preload_buffer_size=#
    システム変数 名前 preload_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 32768
    最小値 1024
    最大値 1073741824

    インデックスをプリロードしたときに割り当てられるバッファーのサイズ。

  • profiling

    0 または OFF (デフォルト) に設定した場合、ステートメントのプロファイリングは無効になります。1 または ON に設定した場合、ステートメントのプロファイリングは有効になり、SHOW PROFILE および SHOW PROFILES ステートメントはプロファイリング情報へのアクセスを提供します。セクション13.7.5.32「SHOW PROFILES 構文」を参照してください。

    この変数は MySQL 5.6.8 で非推奨となり、将来の MySQL リリースで削除されます。

  • profiling_history_size

    profiling が有効な場合にプロファイリング情報を保持する対象となるステートメントの数。デフォルト値は 15 です。最大値は 100 です。値を 0 に設定すると、プロファイリングは実質的に無効になります。セクション13.7.5.32「SHOW PROFILES 構文」を参照してください。

    この変数は MySQL 5.6.8 で非推奨となり、将来の MySQL リリースで削除されます。

  • protocol_version

    システム変数 名前 protocol_version
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値

    MySQL Server によって使用されるクライアント/サーバープロトコルのバージョン。

  • proxy_user

    システム変数 名前 proxy_user
    変数スコープ セッション
    動的変数 いいえ
    許可されている値 文字列

    現在のクライアントが別のユーザーのプロキシの場合、この変数はプロキシユーザーのアカウント名です。そうでない場合、この変数は NULL です。セクション6.3.9「プロキシユーザー」を参照してください。

  • pseudo_slave_mode

    導入 5.6.10
    システム変数 名前 pseudo_slave_mode
    変数スコープ セッション
    動的変数 はい
    許可されている値 数値

    この変数は内部サーバーで使用します。これは MySQL 5.6.10 で追加されました。

  • pseudo_thread_id

    システム変数 名前 pseudo_thread_id
    変数スコープ セッション
    動的変数 はい
    許可されている値 数値

    この変数は内部サーバーで使用します。

  • query_alloc_block_size

    コマンド行形式 --query_alloc_block_size=#
    システム変数 名前 query_alloc_block_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 1024
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 1024
    最大値 18446744073709551615
    ブロックサイズ 1024

    ステートメントの解析および実行中に作成されるオブジェクトに対して割り当てられるメモリーブロックの割り当てサイズ。メモリーのフラグメント化について問題がある場合、このパラメータを増やすと役立つ場合があります。

  • query_cache_limit

    コマンド行形式 --query_cache_limit=#
    システム変数 名前 query_cache_limit
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 1048576
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 1048576
    最小値 0
    最大値 18446744073709551615

    このバイト数より大きい結果をキャッシュしません。デフォルト値は 1M バイトです。

  • query_cache_min_res_unit

    コマンド行形式 --query_cache_min_res_unit=#
    システム変数 名前 query_cache_min_res_unit
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 512
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 512
    最大値 18446744073709551615

    クエリーキャッシュによって割り当てられたブロックの最小サイズ (バイト単位)。デフォルト値は 4096 (4K バイト) です。この変数の調整についての情報は、セクション8.9.3.3「クエリーキャッシュの構成」に提供されています。

  • query_cache_size

    コマンド行形式 --query_cache_size=#
    システム変数 名前 query_cache_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム, <= 5.6.7) 数値
    デフォルト 0
    最小値 0
    最大値 4294967295
    許可されている値 (32 ビットプラットフォーム, >= 5.6.8) 数値
    デフォルト 1048576
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム, <= 5.6.7) 数値
    デフォルト 0
    最小値 0
    最大値 18446744073709551615
    許可されている値 (64 ビットプラットフォーム, >= 5.6.8) 数値
    デフォルト 1048576
    最小値 0
    最大値 18446744073709551615

    クエリー結果をキャッシュするために割り当てられたメモリーの量。デフォルトでは、クエリーキャッシュは無効化されます。これはデフォルト値の 1M と、query_cache_type のデフォルトの 0 を使用することによって実行できます。(MySQL 5.6.8 より前では、デフォルトサイズは 0 で、デフォルトの query_cache_type は 1 です。クエリーキャッシュを使用しない場合、オーバーヘッドを大幅に削減するには query_cache_type=0 でサーバーを開始する必要もあります。)

    許可される値は 1024 の倍数で、その他の値はもっとも近い倍数に切り下げられます。query_cache_type が 0 に設定されても、query_cache_size バイトのメモリーは割り当てられることに注意してください。詳細については、セクション8.9.3.3「クエリーキャッシュの構成」を参照してください。

    クエリーキャッシュはその構造を割り当てるために最低約 40K バイトのサイズが必要です。(正確なサイズはシステムアーキテクチャーによります。)query_cache_size の値を小さく設定しすぎると、セクション8.9.3.3「クエリーキャッシュの構成」に記載されているような警告が発生します。

  • query_cache_type

    コマンド行形式 --query_cache_type=#
    システム変数 名前 query_cache_type
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (<= 5.6.7) 列挙
    デフォルト 1
    有効な値 0
    1
    2
    許可されている値 (>= 5.6.8) 列挙
    デフォルト 0
    有効な値 0
    1
    2

    クエリーキャッシュタイプを設定します。GLOBAL 値を設定すると、これ以降に接続するクライアントのタイプが設定されます。個別のクライアントは SESSION 値を設定することで、クエリーキャッシュの独自の使用に影響を及ぼします。設定可能な値を次の表に示します。

    オプション 説明
    0 または OFF クエリーキャッシュに結果をキャッシュしたり、クエリーキャッシュから結果を取得したりしません。これはクエリーキャッシュバッファーを割り当て解除しません。これを行うには query_cache_size を 0 に設定します。
    1 または ON SELECT SQL_NO_CACHE で始まるものを除くキャッシュ可能なすべてのクエリー結果をキャッシュします。
    2 または DEMAND SELECT SQL_CACHE で始まるキャッシュ可能なクエリーのみ結果をキャッシュします。

    この変数のデフォルトは、MySQL 5.6.8 以降では OFF で、それより前は ON です。

    query_cache_type を 0 に設定してサーバーを開始した場合、クエリーキャッシュ相互排他ロックを取得できません。これは、クエリーキャッシュを実行時に有効化できず、クエリー実行のオーバーヘッドが削減されることを意味します。

  • query_cache_wlock_invalidate

    コマンド行形式 --query_cache_wlock_invalidate
    システム変数 名前 query_cache_wlock_invalidate
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト FALSE

    通常、あるクライアントが MyISAM テーブルの WRITE ロックを獲得した場合、クエリー結果がクエリーキャッシュ内にあると、別のクライアントがそのテーブルから読み取るステートメントの発行はブロックされません。この値を 1 にした場合、テーブルに対する WRITE ロックが獲得されて、そのテーブルを参照するクエリーキャッシュ内のすべてのクエリーが無効化されます。これにより、そのテーブルにアクセスしようとするほかのクライアントは、ロック有効時に待機するよう強制されます。

  • query_prealloc_size

    コマンド行形式 --query_prealloc_size=#
    システム変数 名前 query_prealloc_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 8192
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 8192
    最大値 18446744073709551615
    ブロックサイズ 1024

    ステートメントの解析および実行に使用される永続バッファーのサイズ。このバッファーは、ステートメント間で解放されません。複雑なクエリーを発行する場合、query_prealloc_size の値を大きくすると、クエリー実行操作時にサーバーがメモリー割り当てを実行する必要性が低くなるため、パフォーマンスの向上に役立つ場合があります。

  • rand_seed1

    rand_seed1 および rand_seed2 変数は、セッション変数としてのみ存在し、設定はできますが読み取ることはできません。変数は SHOW VARIABLES の出力に表示されますが、その値は表示されません。

    これらの変数の目的は、RAND() 関数のレプリケーションをサポートすることです。RAND() を呼び出すステートメントでは、マスターは 2 つの値をスレーブに渡し、スレーブではこれらの値は乱数ジェネレータにシードを指定するために使用されます。スレーブはこれらの値を使用して、セッション変数 rand_seed1 および rand_seed2 を設定し、スレーブの RAND() はマスターと同じ値を生成します。

  • rand_seed2

    rand_seed1 の説明を参照してください。

  • range_alloc_block_size

    コマンド行形式 --range_alloc_block_size=#
    システム変数 名前 range_alloc_block_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 2048
    最小値 2048
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 4096
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 4096
    最大値 18446744073709547520
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 2048
    最小値 2048
    最大値 18446744073709551615
    ブロックサイズ 1024

    範囲の最適化を行うときに割り当てられるブロックのサイズ。

  • read_buffer_size

    コマンド行形式 --read_buffer_size=#
    システム変数 名前 read_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 131072
    最小値 8200
    最大値 2147479552

    MyISAM テーブルの順次スキャンを実行する各スレッドは、スキャンする各テーブルにこのサイズ (バイト単位) のバッファーを割り当てます。多くの順次スキャンを実行する場合、この値を増やした方がよい場合もあり、デフォルトは 131072 です。この変数の値は 4K バイトの倍数にしてください。これが 4K バイトの倍数でない値に設定された場合、値は 4K バイトにもっとも近い倍数に切り下げられます。

    このオプションは、すべての検索エンジンの次のコンテキストでも使用されます。

    • ORDER BY で行をソートするとき、インデックスを一時ファイル (一時テーブルではない) にキャッシュする場合。

    • パーティションに一括挿入する場合。

    • ネストされたクエリーの結果をキャッシュする場合。

    さらに、ストレージエンジンに固有の 1 つの方法、つまり MEMORY テーブルのメモリーブロックサイズを決定するためにも使用されます。

    read_buffer_size で許可される最大の設定は 2G バイトです。

    さまざまな操作中でのメモリー使用についての詳細は、セクション8.11.4.1「MySQL のメモリーの使用方法」を参照してください。

  • read_only

    コマンド行形式 --read-only
    システム変数 名前 read_only
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト false

    この変数はデフォルトでオフにされています。これが有効にされた場合、サーバーは SUPER 権限を持つユーザーか、(スレーブサーバー上で) スレーブスレッドによって実行される更新を除く更新を許可しません。レプリケーションセットアップでは、スレーブサーバーで read_only を有効にして、スレーブがマスターサーバーからの更新のみ受け入れ、クライアントからは受け入れないようにすると便利です。

    read_onlyTEMPORARY テーブルに適用されず、サーバーがログテーブルに行を挿入しないようにすることもできません (セクション5.2.1「一般クエリーログおよびスロークエリーログの出力先の選択」を参照してください)。この変数の目的は、テーブルの構造または内容への変更を防ぐことであるため、ANALYZE TABLE または OPTIMIZE TABLE ステートメントの使用を妨げることはありません。分析および最適化は、そのような変更の条件を備えていません。つまり、例を挙げると、読み取り専用スレーブでの一貫性検査は、mysqlcheck --all-databases --analyze を使用して実行できるということを意味します。

    read_onlyGLOBAL 変数としてのみ存在するため、値を変更するには SUPER 権限が必要です。マスターサーバー上での read_only への変更は、スレーブサーバーに複製されません。マスター上での設定に関係なく、値をスレーブサーバー上で設定できます。

    重要

    MySQL 5.6 で、read_only を有効にすると、SUPER 権限を持っていないすべてのユーザーは、SET PASSWORD ステートメントを使用できなくなります。これは必ずしもすべての MySQL リリースシリーズに当てはまるわけではありません。1 つの MySQL リリースシリーズから別のリリースシリーズ (たとえば、MySQL 5.0 マスターから MySQL 5.1 あるいはそれ以降のスレーブ) にレプリケーションするとき、マスターとスレーブの両方が実行するバージョンのドキュメントを確認し、この read_only の動作が同じか同じでないかを判定し、異なる場合は、アプリケーションに影響があるかどうかを調べます。

    次の条件が適用されます。

    • 明示的なロック (LOCK TABLES で取得) または保留中のトランザクションがある場合に read_only を有効にしようとすると、エラーが発生します。

    • 他のクライアントが明示的なテーブルロックを保持しているか、保留中のトランザクションを持っている場合に read_only の有効化を試行すると、ロックが解放されてトランザクションが終了するまで試行がブロックされます。read_only の有効化の試行が保留されているとき、ほかのクライアントによるテーブルロックあるいはトランザクションの開始のリクエストもまた read_only が設定されるまでブロックされます。

    • グローバル読み取りロック (FLUSH TABLES WITH READ LOCK で取得) にはテーブルロックが含まれていないため、read_only を有効化できます。

    MySQL 5.6 で、メタデータロックを保持するアクティブなトランザクションに対して read_only を設定する試行は、それらのトランザクションが終了するまでブロックされます。

  • read_rnd_buffer_size

    コマンド行形式 --read_rnd_buffer_size=#
    システム変数 名前 read_rnd_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 262144
    最小値 1
    最大値 2147483647

    この変数は、MyISAM テーブルからの読み取り、ストレージエンジン、および Multi-Range Read の最適化のために使用されます。

    キーソート操作のあとで、MyISAM テーブルの行をソート順に読み取るとき、ディスクシークを回避するため行はこのバッファーから読み取られます。セクション8.2.1.15「ORDER BY の最適化」を参照してください。この変数を大きい値に設定すると、ORDER BY のパフォーマンスを大幅に向上できます。ただし、これは各クライアントに割り当てられるバッファーであるため、グローバル変数を大きい値に設定しないでください。代わりに、大規模なクエリーを実行する必要があるクライアント内からのみセッション変数を変更します。

    read_rnd_buffer_size の許可される最大の設定は 2G バイトです。

    さまざまな操作中でのメモリー使用についての詳細は、セクション8.11.4.1「MySQL のメモリーの使用方法」を参照してください。Multi-Range Read の最適化については、セクション8.2.1.13「Multi-Range Read の最適化」を参照してください。

  • relay_log_purge

    コマンド行形式 --relay_log_purge
    システム変数 名前 relay_log_purge
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト TRUE

    リレーログファイルが不要になったときに自動的にパージするよう無効または有効にします。デフォルト値は 1 (ON) です。

  • relay_log_space_limit

    コマンド行形式 --relay_log_space_limit=#
    システム変数 名前 relay_log_space_limit
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 0
    最小値 0
    最大値 4294967295
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 0
    最小値 0
    最大値 18446744073709551615

    すべてのリレーログに使用するスペースの最大量。

  • report_host

    コマンド行形式 --report-host=host_name
    システム変数 名前 report_host
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    --report-host オプションの値。

  • report_password

    コマンド行形式 --report-password=name
    システム変数 名前 report_password
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    --report-password オプションの値。MySQL レプリケーションユーザーアカウントについて使用されるパスワードと同じではありません。

  • report_port

    コマンド行形式 --report-port=#
    システム変数 名前 report_port
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (<= 5.6.4) 数値
    デフォルト 0
    最小値 0
    最大値 65535
    許可されている値 (>= 5.6.5) 数値
    デフォルト [slave_port]
    最小値 0
    最大値 65535

    --report-port オプションの値。

  • report_user

    コマンド行形式 --report-user=name
    システム変数 名前 report_user
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    --report-user オプションの値。MySQL レプリケーションユーザーアカウントについての名前と同じではありません。

  • rpl_semi_sync_master_enabled

    システム変数 名前 rpl_semi_sync_master_enabled
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    準同期レプリケーションがマスター上で有効かどうかを制御します。プラグインを有効または無効にするには、この変数を ON または OFF (あるいは 1 または 0) にそれぞれ設定します。デフォルトは OFF です。

    この変数は、マスター側の準同期レプリケーションプラグインがインストールされている場合のみ利用できます。

  • rpl_semi_sync_master_timeout

    システム変数 名前 rpl_semi_sync_master_timeout
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 10000

    タイムアウトが発生して非同期レプリケーションに戻すまでに、スレーブからの肯定応答のコミットをマスターが待機する時間を制御する、ミリ秒単位の値。デフォルト値は 10000 (10 秒) です。

    この変数は、マスター側の準同期レプリケーションプラグインがインストールされている場合のみ利用できます。

  • rpl_semi_sync_master_trace_level

    システム変数 名前 rpl_semi_sync_master_trace_level
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 32

    マスターの準同期レプリケーションデバッグトレースレベル。現在は 4 つのレベルが定義されています。

    • 1 = 一般レベル (時間関数の失敗など)

    • 16 = 詳細レベル (詳細情報)

    • 32 = ネット待機レベル (ネットワーク待機についての詳細情報)

    • 64 = 関数レベル (関数の入口および出口についての情報)

    この変数は、マスター側の準同期レプリケーションプラグインがインストールされている場合のみ利用できます。

  • rpl_semi_sync_master_wait_no_slave

    システム変数 名前 rpl_semi_sync_master_wait_no_slave
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト ON

    準同期レプリケーションでは、各トランザクションについて、マスターはいずれかの準同期スレーブからの受け取りの認証を、タイムアウトになるまで待機します。この期間中に応答がなければ、マスターは通常のレプリケーションに戻ります。この変数は、タイムアウト期間中にスレーブカウントが減少してゼロになったとしても、マスターは通常のレプリケーションに戻る前に、タイムアウトが終了するまで待機するかどうかを制御します。

    値が ON (デフォルト) の場合、タイムアウト期間中に (たとえばスレーブが未接続となった場合)、スレーブカウントが減少してゼロになるよう許可されます。マスターは引き続きタイムアウトを待機しているため、タイムアウト期間中にいずれかのスレーブが再接続してトランザクションを認証した場合、準同期レプリケーションは続行します。

    値が OFF の場合、タイムアウト期間中にスレーブカウントが減少してゼロになると、マスターは通常のレプリケーションに戻ります。

    この変数は、マスター側の準同期レプリケーションプラグインがインストールされている場合のみ利用できます。

  • rpl_semi_sync_slave_enabled

    システム変数 名前 rpl_semi_sync_slave_enabled
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    準同期レプリケーションをスレーブ上で有効にするかどうかを制御します。プラグインを有効または無効にするには、この変数を ON または OFF (あるいは 1 または 0) にそれぞれ設定します。デフォルトは OFF です。

    この変数は、スレーブ側の準同期レプリケーションプラグインがインストールされている場合にのみ利用できます。

  • rpl_semi_sync_slave_trace_level

    システム変数 名前 rpl_semi_sync_slave_trace_level
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 32

    スレーブの準同期レプリケーションデバッグトレースレベル。許可できる値については、rpl_semi_sync_master_trace_level を参照してください。

    この変数は、スレーブ側の準同期レプリケーションプラグインがインストールされている場合にのみ利用できます。

  • secure_auth

    コマンド行形式 --secure-auth
    システム変数 名前 secure_auth
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.4) ブール
    デフォルト OFF
    許可されている値 (>= 5.6.5) ブール
    デフォルト ON

    この変数が有効な場合、サーバーは、古い (4.1 以前の) 形式で格納されているパスワードを持つアカウントを使用しようとしたクライアントの接続をブロックします。

    古い形式を使用したパスワードの使用 (セキュリティー保護されていないネットワーク上での通信) を防ぐには、この変数を有効にします。MySQL 5.6.5 より前では、この変数はデフォルトで無効です。MySQL 5.6.5 以降では、これはデフォルトで有効です。

    この変数が有効で、権限テーブルが 4.1 以前の形式である場合、サーバーの起動が失敗します。セクションB.5.2.4「クライアントは認証プロトコルに対応できません」を参照してください。

    注記

    4.1 より前のハッシュ方式を使用するパスワードはネイティブのパスワードハッシュ方式を使用するパスワードよりもセキュアでないため、使用しないようにしてください。4.1 よりも前のパスワードは非推奨であり、これらのサポートは今後の MySQL リリースで削除される予定です。そのため、secure_auth の無効化も非推奨です。

  • secure_file_priv

    コマンド行形式 --secure-file-priv=path
    システム変数 名前 secure_file_priv
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    デフォルトでは、この変数は空です。ディレクトリの名前に設定すると、LOAD_FILE() 関数と、LOAD DATA および SELECT ... INTO OUTFILE ステートメントの効果を制限し、そのディレクトリ内のファイルにのみ機能します。

  • server_id

    コマンド行形式 --server-id=#
    システム変数 名前 server_id
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 4294967295

    マスターおよびスレーブそれぞれに一意の識別子を付与するレプリケーションで使用されるサーバー ID。この変数は、--server-id オプションによって設定されます。レプリケーションに参加する各サーバーは、そのサーバーの ID となる 1 から 232 − 1 の範囲の正の整数を、選択します。

  • sha256_password_private_key_path

    導入 5.6.6
    システム変数 名前 sha256_password_private_key_path
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名
    デフォルト private_key.pem

    sha256_password 認証プラグイン用の RSA 秘密鍵ファイルのパス名。ファイル名が相対パスとして指定された場合、サーバーのデータディレクトリを基準として解釈されます。ファイルは PEM 形式である必要があります。このファイルは秘密鍵を格納しているため、MySQL Server のみがファイルを読み取りできるようにファイルのアクセスモードを制限します。

    RSA 鍵ファイルの作成の説明を含む sha256_password についての情報は、セクション6.3.8.4「SHA-256 認証プラグイン」を参照してください。

    この変数は、MySQL が OpenSSL を使用して構築されている場合のみ利用できます。これは MySQL 5.6.6 で追加されました。(MySQL Community Edition は yaSSL を使用して構築されています。)

  • sha256_password_public_key_path

    導入 5.6.6
    システム変数 名前 sha256_password_public_key_path
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名
    デフォルト public_key.pem

    sha256_password 認証プラグイン用の RSA 公開鍵ファイルのパス名。ファイル名が相対パスとして指定された場合、サーバーのデータディレクトリを基準として解釈されます。ファイルは PEM 形式である必要があります。このファイルは公開鍵を格納しているため、クライアントユーザーに対してコピーを自由に配布できます。(RSA パスワード暗号化を使用してサーバーに接続するときに公開鍵を明示的に指定するクライアントは、サーバーで使用されるものと同じ公開鍵を使用する必要があります。)

    RSA 鍵ファイルの作成と、クライアントが RSA 公開鍵を指定する方法についての説明を含む、sha256_password についての情報は、セクション6.3.8.4「SHA-256 認証プラグイン」を参照してください。

    この変数は、MySQL が OpenSSL を使用して構築されている場合のみ利用できます。これは MySQL 5.6.6 で追加されました。(MySQL Community Edition は yaSSL を使用して構築されています。)

  • shared_memory

    コマンド行形式 --shared-memory-base-name=name
    システム変数 名前 shared_memory
    変数スコープ グローバル
    動的変数 いいえ
    プラットフォーム固有 Windows

    (Windows のみ。)サーバーが共有メモリー接続を許可するかどうか。

  • shared_memory_base_name

    システム変数 名前 shared_memory_base_name
    変数スコープ グローバル
    動的変数 いいえ
    プラットフォーム固有 Windows

    (Windows のみ。)共有メモリー接続に使用する共有メモリーの名前。これは、単一の物理マシン上で複数の MySQL インスタンスを実行する場合に便利です。デフォルト名は MYSQL です。名前は大文字と小文字を区別します。

  • skip_external_locking

    コマンド行形式 --skip-external-locking
    システム変数 名前 skip_external_locking
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ブール
    デフォルト ON

    これは、mysqld が外部ロック (システムロック) を使用する場合は OFF で、外部ロックが無効な場合は ON です。これは、MyISAM テーブルアクセスにのみ影響します。

    この変数は、--external-locking または --skip-external-locking オプションによって設定されます。MySQL 4.0 以降では、外部ロックはデフォルトで無効化されています。

    外部ロックは MyISAM テーブルアクセスにのみ影響します。使用できるまたはできない状況も含めた詳細情報については、セクション8.10.5「外部ロック」を参照してください。

  • skip_name_resolve

    コマンド行形式 --skip-name-resolve
    システム変数 名前 skip_name_resolve
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ブール
    デフォルト OFF

    この変数は、--skip-name-resolve オプションの値から設定されます。これが OFF の場合、mysqld はクライアント接続を検査するときにホスト名を解決します。これが ON の場合、mysqld は IP 番号のみを使用し、この状況では、付与テーブル内のすべての Host カラム値が IP アドレスまたは localhost である必要があります。セクション8.11.5.2「DNS ルックアップの最適化とホストキャッシュ」を参照してください。

  • skip_networking

    コマンド行形式 --skip-networking
    システム変数 名前 skip_networking
    変数スコープ グローバル
    動的変数 いいえ

    サーバーがローカル接続 (TCP/IP 以外) のみ許可する場合、これは ON です。Unix の場合、ローカル接続には Unix ソケットファイルが使用されます。Windows の場合、ローカル接続には名前付きパイプまたは共有メモリーが使用されます。この変数は、--skip-networking オプションを使用して ON に設定できます。

  • skip_show_database

    コマンド行形式 --skip-show-database
    システム変数 名前 skip_show_database
    変数スコープ グローバル
    動的変数 いいえ

    これは、SHOW DATABASES 権限を持っていないユーザーが SHOW DATABASES ステートメントを使用することを防ぎます。ほかのユーザーに属するデータベースをユーザーが表示できることに不安がある場合に、セキュリティーを高めることができます。この効果は SHOW DATABASES 権限によって異なります。変数の値が ON の場合、SHOW DATABASES ステートメントは SHOW DATABASES 権限を持つユーザーにのみ許可され、ステートメントはすべてのデータベース名を表示します。値が OFF の場合、SHOW DATABASES はすべてのユーザーに許可されますが、ユーザーが SHOW DATABASES またはほかの権限を持つデータベースの名前のみが表示されます。(すべてのグローバル権限がデータベースのための権限とみなされることに注意してください。)

  • slow_launch_time

    コマンド行形式 --slow_launch_time=#
    システム変数 名前 slow_launch_time
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 2

    スレッドを作成する時間がこの秒数より長くかかると、サーバーは Slow_launch_threads ステータス変数を増やします。

  • slow_query_log

    コマンド行形式 --slow-query-log
    システム変数 名前 slow_query_log
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    スロークエリーログを有効にするかどうか。値が 0 (または OFF) の場合はログを無効にし、1 (または ON) の場合はログを有効にします。デフォルト値は、--slow_query_log オプションが指定されているかどうかによって異なります。ログ出力先は log_output システム変数によって制御され、この値を NONE にした場合はログが有効になっていてもログエントリは書き込まれません。

    スローの程度は、long_query_time 変数の値によって決定されます。セクション5.2.5「スロークエリーログ」を参照してください。

  • slow_query_log_file

    コマンド行形式 --slow-query-log-file=file_name
    システム変数 名前 slow_query_log_file
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ファイル名
    デフォルト host_name-slow.log

    スロークエリーログファイルの名前。デフォルト値は host_name-slow.log ですが、初期値は --slow_query_log_file オプションを使用すると変更できます。

  • socket

    コマンド行形式 --socket=file_name
    システム変数 名前 socket
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名
    デフォルト /tmp/mysql.sock

    Unix プラットフォームでは、この変数は、ローカルクライアント接続に使用されるソケットファイルの名前です。デフォルトは /tmp/mysql.sock です。(一部の配布形式ではディレクトリが異なる場合があり、たとえば RPM の場合は /var/lib/mysql です。)

    Windows では、この変数は、ローカルクライアント接続に使用される名前付きパイプの名前です。デフォルト値は MySQL です (大文字小文字の区別はありません)。

  • sort_buffer_size

    コマンド行形式 --sort_buffer_size=#
    システム変数 名前 sort_buffer_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (Windows, <= 5.6.3) 数値
    デフォルト 2097144
    最小値 32768
    最大値 4294967295
    許可されている値 (Windows, >= 5.6.4) 数値
    デフォルト 262144
    最小値 32768
    最大値 4294967295
    許可されている値 (その他, 32 ビットプラットフォーム, <= 5.6.3) 数値
    デフォルト 2097144
    最小値 32768
    最大値 4294967295
    許可されている値 (その他, 32 ビットプラットフォーム, >= 5.6.4) 数値
    デフォルト 262144
    最小値 32768
    最大値 4294967295
    許可されている値 (その他, 64 ビットプラットフォーム, <= 5.6.3) 数値
    デフォルト 2097144
    最小値 32768
    最大値 18446744073709551615
    許可されている値 (その他, 64 ビットプラットフォーム, >= 5.6.4) 数値
    デフォルト 262144
    最小値 32768
    最大値 18446744073709551615

    ソートを実行する必要がある各セッションは、このサイズのバッファーを割り当てます。sort_buffer_size はいずれかのストレージエンジンに固有ではなく、一般的な方法で最適化に適用されます。例については、セクション8.2.1.15「ORDER BY の最適化」を参照してください。

    SHOW GLOBAL STATUS の出力に表示される秒あたりの Sort_merge_passes の数が多い場合、sort_buffer_size 値を増やすことで、クエリー最適化またはインデックスの改善によって改善できない ORDER BY または GROUP BY 操作を高速化することを検討できます。

    MySQL 5.6.4 以降では、オプティマイザは必要なスペースを算出しようとしますが、さらに多く上限まで割り当てることができます。MySQL 5.6.4 より前では、オプティマイザはバッファーのすべてが必要ない場合でも、バッファー全体を割り当てます。いずれの場合も、これを必要以上に大きくグローバルに設定すると、ソートを実行するほとんどのクエリーが低速化します。これはセッション設定として増やし、かつ大きいサイズを必要とするセッションに制限することを推奨します。Linux の場合、256K バイトおよび 2M バイトのしきい値があり、それより大きい値にするとメモリー割り当てが著しく低速になるため、これらのいずれかの値より低くすることを検討してください。実験して、ワークロードに最適な値を見つけてください。セクションB.5.4.4「MySQL が一時ファイルを格納する場所」を参照してください。

    許可される sort_buffer_size の最大の設定値は 4G バイト − 1 です。64 ビットプラットフォームの場合は大きい値が許可されます (64 ビットの Windows の場合は例外で、大きい値は 4G バイト − 1 に切り捨てられて警告が出ます)。

  • sql_auto_is_null

    システム変数 名前 sql_auto_is_null
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 0

    この変数が 1 に設定されている場合は、自動的に生成された AUTO_INCREMENT 値を正常に挿入するステートメントの後に、次の形式のステートメントを発行すれば、その値を検索できます。

    SELECT * FROM tbl_name WHERE auto_col IS NULL
    

    ステートメントが行を返す場合、返される値は LAST_INSERT_ID() 関数を呼び出した場合と同じです。複数行の挿入後の戻り値などについての詳細は、セクション12.14「情報関数」を参照してください。AUTO_INCREMENT 値を正常に挿入できなかった場合、SELECT ステートメントは行を返しません。

    IS NULL 比較を使用して AUTO_INCREMENT 値を取得する動作は、Access などの一部の ODBC プログラムによって使用されます。Obtaining Auto-Increment Valuesを参照してください。この動作は sql_auto_is_null を 0 に設定することによって無効化できます。

    MySQL 5.6 では sql_auto_is_null のデフォルト値は 0 です。

  • sql_big_selects

    システム変数 名前 sql_big_selects
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 1

    0 に設定すると、MySQL は、実行に非常に時間がかかる SELECT ステートメント (つまり、調査される行数が max_join_size の値を超えるとオプティマイザが推定したステートメント) を中止します。これは、推奨されない WHERE ステートメントが発行されたときに便利です。新規接続についてのデフォルト値は 1 で、これはすべての SELECT ステートメントを許可します。

    max_join_size システム変数を DEFAULT 以外の値に設定すると、sql_big_selects は 0 に設定されます。

  • sql_buffer_result

    システム変数 名前 sql_buffer_result
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 0

    1 に設定すると、sql_buffer_resultSELECT ステートメントからの結果を一時テーブルに配置するよう強制します。これは、MySQL でテーブルロックを早期に解放するのに役立ち、クライアントに結果を送信するのに長い時間がかかる場合に適していることがあります。デフォルト値は 0 です。

  • sql_log_bin

    システム変数 名前 sql_log_bin
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール

    この変数は、バイナリログへのロギングを実行するかどうかを制御します。デフォルト値は 1 (ロギングを実行する) です。現在のセッションのロギングを変更するには、この変数のセッション値を変更します。この変数を設定するには、セッションユーザーが SUPER 権限を持つ必要があります。

    MySQL 5.6 では、トランザクションまたはサブクエリー内に @@session.sql_log_bin を設定できません。(バグ #53437)

  • sql_log_off

    システム変数 名前 sql_log_off
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 0

    この変数は、一般クエリーログへのロギングが実行されるかどうかを制御します。デフォルト値は 0 (ロギングを実行する) です。現在のセッションのロギングを変更するには、この変数のセッション値を変更します。このオプションを設定するには、セッションユーザーが SUPER 権限を持つ必要があります。デフォルト値は 0 です。

  • sql_mode

    コマンド行形式 --sql-mode=name
    システム変数 名前 sql_mode
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (<= 5.6.5) セット
    デフォルト ''
    有効な値 ALLOW_INVALID_DATES
    ANSI_QUOTES
    ERROR_FOR_DIVISION_BY_ZERO
    HIGH_NOT_PRECEDENCE
    IGNORE_SPACE
    NO_AUTO_CREATE_USER
    NO_AUTO_VALUE_ON_ZERO
    NO_BACKSLASH_ESCAPES
    NO_DIR_IN_CREATE
    NO_ENGINE_SUBSTITUTION
    NO_FIELD_OPTIONS
    NO_KEY_OPTIONS
    NO_TABLE_OPTIONS
    NO_UNSIGNED_SUBTRACTION
    NO_ZERO_DATE
    NO_ZERO_IN_DATE
    ONLY_FULL_GROUP_BY
    PAD_CHAR_TO_FULL_LENGTH
    PIPES_AS_CONCAT
    REAL_AS_FLOAT
    STRICT_ALL_TABLES
    STRICT_TRANS_TABLES
    許可されている値 (>= 5.6.6) セット
    デフォルト NO_ENGINE_SUBSTITUTION
    有効な値 ALLOW_INVALID_DATES
    ANSI_QUOTES
    ERROR_FOR_DIVISION_BY_ZERO
    HIGH_NOT_PRECEDENCE
    IGNORE_SPACE
    NO_AUTO_CREATE_USER
    NO_AUTO_VALUE_ON_ZERO
    NO_BACKSLASH_ESCAPES
    NO_DIR_IN_CREATE
    NO_ENGINE_SUBSTITUTION
    NO_FIELD_OPTIONS
    NO_KEY_OPTIONS
    NO_TABLE_OPTIONS
    NO_UNSIGNED_SUBTRACTION
    NO_ZERO_DATE
    NO_ZERO_IN_DATE
    ONLY_FULL_GROUP_BY
    PAD_CHAR_TO_FULL_LENGTH
    PIPES_AS_CONCAT
    REAL_AS_FLOAT
    STRICT_ALL_TABLES
    STRICT_TRANS_TABLES

    現在のサーバー SQL モードで、動的に設定できます。MySQL 5.6.6 以降のデフォルトは NO_ENGINE_SUBSTITUTION で、以前は空の文字列でした。セクション5.1.7「サーバー SQL モード」を参照してください。

    注記

    MySQL インストールプログラムはインストールプロセス中に SQL モードを構成することがあります。たとえば、mysql_install_db は、my.cnf という名前のデフォルトオプションファイルを基本インストールディレクトリに作成します。このファイルには、SQL モードを設定する行が含まれています。セクション4.4.3「mysql_install_db — MySQL データディレクトリの初期化」を参照してください。

    SQL モードがデフォルトまたは期待されているモードと異なる場合、サーバーが起動時に読み取るオプションファイル内の設定を確認してください。

  • sql_notes

    1 (デフォルト) に設定した場合、Note レベルの警告によって warning_count が増加し、サーバーがこれらを記録します。0 に設定した場合、Note の警告によって warning_count は増加せず、サーバーはこれらを記録しません。mysqldump には、この変数を 0 に設定するための出力が含まれているため、ダンプファイルをリロードしても、リロード操作の整合性に影響しないイベントについて、警告が生成されません。

  • sql_quote_show_create

    1 (デフォルト) に設定すると、サーバーは SHOW CREATE TABLESHOW CREATE DATABASE ステートメントに識別子を引用します。0 に設定した場合、引用は無効化されます。このオプションはデフォルトで有効化されているため、引用が必要な識別子に対してレプリケーションが機能します。セクション13.7.5.12「SHOW CREATE TABLE 構文」およびセクション13.7.5.8「SHOW CREATE DATABASE 構文」を参照してください。

  • sql_safe_updates

    1 に設定すると、MySQL は WHERE 句または LIMIT 句の内部でキーを使用しない UPDATE または DELETE ステートメントを中止します。(特に、UPDATE ステートメントは、キーを使用する WHERE 句または LIMIT 句、あるいはその両方を持つ必要があります。DELETE ステートメントは両方を持つ必要があります。)これにより、キーが正しく利用されないため多数の行を変更または削除する可能性がある UPDATE または DELETE ステートメントのキャッチが可能になります。デフォルト値は 0 です。

  • sql_select_limit

    システム変数 名前 sql_select_limit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値

    SELECT ステートメントから返される最大行数。新規接続についてのデフォルト値は、サーバーがテーブルあたりで許可する最大行数です。標準的なデフォルト値は (232)−1 または (264)−1 です。制限を変更した場合、デフォルト値は DEFAULT の値を割り当てることでリストアできます。

    SELECTLIMIT 句がある場合、LIMITsql_select_limit の値に優先されます。

  • sql_warnings

    この変数は、警告が発生する場合に、単一行の INSERT ステートメントが情報文字列を生成するかどうかを制御します。デフォルトは 0 です。この値を 1 に設定すると、情報文字列が生成されます。

  • ssl_ca

    コマンド行形式 --ssl-ca=file_name
    システム変数 名前 ssl_ca
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    信頼された SSL CA のリストを含むファイルへのパス。

  • ssl_capath

    コマンド行形式 --ssl-capath=dir_name
    システム変数 名前 ssl_capath
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    PEM 形式の信頼された SSL CA 証明書を格納するディレクトリのパス。

  • ssl_cert

    コマンド行形式 --ssl-cert=file_name
    システム変数 名前 ssl_cert
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    セキュアな接続を確立するために使用する SSL 証明書ファイルの名前。

  • ssl_cipher

    コマンド行形式 --ssl-cipher=name
    システム変数 名前 ssl_cipher
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    SSL 暗号化に使用する許可されている暗号のリスト。

  • ssl_crl

    導入 5.6.3
    コマンド行形式 --ssl-crl=file_name
    システム変数 名前 ssl_crl
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    PEM 形式での証明書失効リストを含むファイルへのパス。失効リストは、OpenSSL に対してコンパイルされた MySQL 配布で機能します (yaSSL では機能しません)。

    この変数は MySQL 5.6.3 で追加されました。

  • ssl_crlpath

    導入 5.6.3
    コマンド行形式 --ssl-crlpath=dir_name
    システム変数 名前 ssl_crlpath
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    PEM 形式での証明書失効リストを含むファイルを格納するディレクトリへのパス。失効リストは、OpenSSL に対してコンパイルされた MySQL 配布で機能します (yaSSL では機能しません)。

    この変数は MySQL 5.6.3 で追加されました。

  • ssl_key

    コマンド行形式 --ssl-key=file_name
    システム変数 名前 ssl_key
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ファイル名

    セキュアな接続を確立するために使用する SSL 鍵ファイルの名前。

  • storage_engine

    システム変数 名前 storage_engine
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト InnoDB

    デフォルトストレージエンジン (テーブル型)。サーバー起動時にストレージエンジンを設定するには、--default-storage-engine オプションを使用します。セクション5.1.3「サーバーコマンドオプション」を参照してください。

    この変数は非推奨です。代わりに default_storage_engine を使用してください。

  • stored_program_cache

    導入 5.6.5
    コマンド行形式 --stored-program-cache=#
    システム変数 名前 stored_program_cache
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 256
    最小値 256
    最大値 524288

    接続あたりでキャッシュされるストアドルーチンの数について、上側のソフトリミットを設定します。この変数の値は、ストアドプロシージャーおよびストアドファンクションで、MySQL Server によって維持される 2 つのキャッシュそれぞれに保持されるストアドルーチンの数に関して指定します。

    ストアドルーチンが実行されると、ルーチン内の先頭または最上位レベルのステートメントが解析される前に、このキャッシュサイズが検査されます。同じタイプのルーチン (どちらが実行されているかによってストアドプロシージャーまたはストアドファンクション) の数が、この変数によって指定される制限を超える場合、対応するキャッシュがフラッシュされ、キャッシュされたオブジェクトに対して以前割り当てられていたメモリーが解放されます。これにより、ストアドルーチン間に依存関係がある場合でも、キャッシュを安全にフラッシュできます。

  • sync_frm

    コマンド行形式 --sync-frm
    システム変数 名前 sync_frm
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト TRUE

    この変数が 1 に設定された場合、一時テーブル以外のテーブルが作成されると、その .frm ファイルは (fdatasync() を使用して) ディスクに同期されます。これは遅いですが、クラッシュした場合はより安全です。デフォルトは 1 です。

  • system_time_zone

    システム変数 名前 system_time_zone
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    サーバーシステムタイムゾーン。サーバーは実行を開始するとき、マシンのデフォルトからタイムゾーン設定を継承し、サーバーを実行するために使用されるアカウントの環境または起動スクリプトによって変更されることがあります。値は system_time_zone を設定するために使用されます。通常、タイムゾーンは TZ 環境変数で指定されます。または mysqld_safe スクリプトの --timezone オプションを使用しても指定できます。

    system_time_zone 変数は time_zone と異なります。これらは同じ値になることもありますが、後者の変数は、接続する各クライアントのタイムゾーンを初期化するために使用されます。セクション10.6「MySQL Server でのタイムゾーンのサポート」を参照してください。

  • table_definition_cache

    システム変数 名前 table_definition_cache
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.7) 数値
    デフォルト 400
    最小値 400
    最大値 524288
    許可されている値 (>= 5.6.8) 数値
    デフォルト -1 (autosized)
    最小値 400
    最大値 524288

    定義キャッシュに格納可能な (.frm ファイルからの) テーブル定義の数。多数のテーブルを使用する場合、大きいテーブル定義キャッシュを作成して、テーブルを開くことを高速化できます。標準のテーブルキャッシュと異なり、テーブル定義キャッシュは占有スペースが少なくファイルディスクリプタを使用しません。最小値は 400 です。デフォルト値は次の式に基づき、2000 までに制限されています。

    400 + (table_open_cache / 2)
    

    MySQL 5.6.8 より前では、デフォルトは 400 です。

    InnoDB の場合、table_definition_cache は、InnoDB データディクショナリキャッシュ内の開いているテーブルインスタンスの数のソフト制限として機能します。開いているテーブルインスタンスの数が table_definition_cache 設定を超えた場合、LRU メカニズムはエビクション用のテーブルインスタンスにマークを付け、最終的にデータディクショナリキャッシュから削除されます。この制限は、次回サーバー開始までに使用頻度が低いテーブルインスタンスをキャッシュするために大量のメモリーが使用されるような状況に対処するのに役立ちます。キャッシュされたメタデータを持つテーブルインスタンスの数が、table_definition_cache によって定義された制限よりも多い場合があります。これは、InnoDB システムテーブルインスタンスと、外部キー関係を持つ親および子のテーブルインスタンスが LRU リストに配置されず、メモリーからエビクションされないためです。

    さらに、table_definition_cache は、一度に開くことができる、InnoDB file-per-table テーブルスペースの数のソフト制限を定義し、これは innodb_open_files によっても制御されます。table_definition_cache および innodb_open_files の両方が設定される場合、高い方の設定値が使用されます。どちらの変数も設定されない場合、デフォルト値が高い table_definition_cache が使用されます。オープンテーブルスペースファイルハンドルの数が、table_definition_cache または innodb_open_files によって定義された制限を超える場合、LRU メカニズムは、テーブルスペースファイル LRU リストを検索して、完全にフラッシュされて現在延長されていないファイルを探します。この処理は、新しいテーブルスペースが開くたびに実行されます。非アクティブなテーブルスペースがない場合、テーブルスペースファイルはクローズされません。

  • table_open_cache

    システム変数 名前 table_open_cache
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.7) 数値
    デフォルト 400
    最小値 1
    最大値 524288
    許可されている値 (>= 5.6.8) 数値
    デフォルト 2000
    最小値 1
    最大値 524288

    すべてのスレッドについて開いているテーブルの数。この値を大きくすると、mysqld が要求するファイルディスクリプタの数が増加します。Opened_tables ステータス変数を検査して、テーブルキャッシュを増やす必要があるかどうかを確認できます。セクション5.1.6「サーバーステータス変数」を参照してください。Opened_tables の値が大きく、FLUSH TABLES をあまり使用しない場合 (すべてのテーブルのクローズおよび再オープンの強制のみを実行する)、table_open_cache 変数の値を増やします。テーブルキャッシュに関する詳細は、セクション8.4.3.1「MySQL でのテーブルのオープンとクローズの方法」を参照してください。

  • table_open_cache_instances

    導入 5.6.6
    システム変数 名前 table_open_cache_instances
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 1

    開いているテーブルキャッシュインスタンスの数 (デフォルトは 1)。セッション間の競合を減少させることでスケーラビリティーを改善するために、開いているテーブルキャッシュを、サイズが table_open_cache / table_open_cache_instances のいくつかの小さいキャッシュインスタンスにパーティション化できます。DML ステートメントでは、セッションはインスタンスにアクセスするために、1 つのインスタンスのみロックする必要があります。このセグメントキャッシュは複数インスタンスにわたってアクセスし、多くのセッションがテーブルにアクセスする場合にキャッシュを使用する演算の高いパフォーマンスが可能になります。(DDL ステートメントでは引き続きキャッシュ全体のロックが必要ですが、そのようなステートメントは DML ステートメントよりも頻度がずっと低くなります。)

    通常 16 以上のコアを使用するシステムでは、8 または 16 の値が推奨されます。

    この変数は MySQL 5.6.6 で追加されました。

  • thread_cache_size

    コマンド行形式 --thread_cache_size=#
    システム変数 名前 thread_cache_size
    変数スコープ グローバル
    動的変数 はい
    許可されている値 (<= 5.6.7) 数値
    デフォルト 0
    最小値 0
    最大値 16384
    許可されている値 (>= 5.6.8) 数値
    デフォルト -1 (autosized)
    最小値 0
    最大値 16384

    サーバーが再使用のためにキャッシュするスレッドの数。クライアントが接続を切断したとき、スレッド数が thread_cache_size より少なければ、クライアントのスレッドはキャッシュに配置されます。スレッドのリクエストは、可能であれば、キャッシュからのスレッドを再使用することによって満たされ、キャッシュが空の場合のみ新しいスレッドが作成されます。多くの新しい接続がある場合、この変数を増やしてパフォーマンスを向上できます。スレッドの実装が適切な場合、通常はパフォーマンスが著しく改善されることはありません。ただし、1 秒あたり数百件の接続がサーバーで見られる場合、通常は thread_cache_size を十分に高く設定すると、ほとんどの新しい接続でキャッシュされたスレッドを使用できます。ステータス変数 ConnectionsThreads_created の差異を調査することで、スレッドキャッシュの効率性を確認できます。詳細については、セクション5.1.6「サーバーステータス変数」を参照してください。

    デフォルト値は次の式に基づいており、上限は 100 に制限されています。

    8 + (max_connections / 100)
    

    MySQL 5.6.8 より前では、デフォルトは 0 です。

  • thread_concurrency

    非推奨 5.6.1
    コマンド行形式 --thread_concurrency=#
    システム変数 名前 thread_concurrency
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 10
    最小値 1
    最大値 512

    この変数は Solaris 8 以前のシステムに固有のもので、mysqld はこのシステムに対し、変数値を指定して thr_setconcurrency() 関数を呼び出します。この関数によって、アプリケーションは、同時に実行するのが望ましいスレッド数についてのヒントをスレッドシステムに指示できます。現在の Solaris バージョンのドキュメントには、これは効果がないと記載されています。

    この変数は MySQL 5.6.1 以降で非推奨となり、MySQL 5.7 で削除されています。これを見つけたときは、Solaris 8 以前のためのものでないかぎり、MySQL 構成ファイルから削除してください。

  • thread_handling

    コマンド行形式 --thread_handling=name
    システム変数 名前 thread_handling
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 列挙
    デフォルト one-thread-per-connection
    有効な値 no-threads
    one-thread-per-connection
    dynamically-loaded

    接続スレッドのサーバーによって使用されるスレッド処理モデル。許可される値は no-threads (サーバーは 1 つの接続を処理するために単一スレッドを使用する) および one-thread-per-connection (サーバーはそれぞれのクライアント接続を処理するために 1 つのスレッドを使用する) です。Linux でのデバッグには no-threads が便利です。セクション24.4「MySQL のデバッグおよび移植」を参照してください。

    スレッドプールプラグインが有効な場合、サーバーは thread_handling 値を dynamically-loaded に設定します。セクション8.11.6.1「スレッドプールコンポーネントとインストール」を参照してください。

  • thread_pool_algorithm

    導入 5.6.10
    コマンド行形式 --thread_pool_algorithm=#
    システム変数 名前 thread_pool_algorithm
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 1

    この変数は、スレッドプールプラグインが使用するアルゴリズムを制御します。

    • 値 0 (デフォルト) では、並列性の低い保守的なアルゴリズムが使用されます。これはもっとも良く検査されていて、非常に良好な結果を生成することが知られています。

    • 値 1 では並列性が高まり、より積極的なアルゴリズムが使用されます。このアルゴリズムは、最適なスレッドカウントでパフォーマンスが 5 – 10% 高まりますが、接続数が増えるにつれてパフォーマンスが低下することが知られています。この使用は実験的であり、サポートされないものとみなすようにしてください。

      この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_pool_high_priority_connection

    導入 5.6.10
    コマンド行形式 --thread_pool_high_priority_connection=#
    システム変数 名前 thread_pool_high_priority_connection
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 1

    この変数は、実行前の新規ステートメントのキューイングに影響します。値が 0 (false、デフォルト) の場合、ステートメントのキューイングでは優先度の低いキューと優先度の高いキューの両方が使用されます。値が 1 (true) の場合、キューに入れられるステートメントは常に優先度の高いキューに入ります。

    この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_pool_max_unused_threads

    導入 5.6.10
    コマンド行形式 --thread_pool_max_unused_threads=#
    システム変数 名前 thread_pool_max_unused_threads
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 0
    最小値 0
    最大値 4096

    スレッドプール内で許可される最大の未使用スレッド数。この変数により、スリープ状態のスレッドによって使用されるメモリーの量を制限できます。

    値 0 (デフォルト) は、スリープ状態のスレッドの数を制限しないことを意味します。値 N は、N が 0 より大きい場合、1 つのコンシューマスレッドと、N−1 個の予約スレッドを意味します。この状況で、スレッドがスリープ状態に入ろうとしたが、スリープ状態のスレッド数がすでに最大値に到達している場合、スレッドはスリープ状態に入らずに存在します。

    スリープ状態のスレッドは、コンシューマスレッドまたは予約スレッドのいずれかとしてスリープ状態になります。スレッドプールでは、1 つのスレッドがスリープ状態のコンシューマスレッドであることを許可します。あるスレッドがスリープ状態になり、コンシューマスレッドが存在しない場合、そのスレッドはコンシューマスレッドとしてスリープ状態になります。スレッドをウェイクアップさせる必要があるとき、コンシューマスレッドが存在すれば、そのコンシューマスレッドが選択されます。ウェイクアップするコンシューマスレッドがない場合にのみ予約スレッドが選択されます。

    この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_pool_prio_kickup_timer

    導入 5.6.10
    コマンド行形式 --thread_pool_prio_kickup_timer=#
    システム変数 名前 thread_pool_prio_kickup_timer
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 1000
    最小値 0
    最大値 4294967294

    この変数は、優先度が低いキューで実行を待機するステートメントに影響します。この値は、待機中のステートメントが優先度の高いキューに移されるまでのミリ秒数です。デフォルトは 1000 (1 秒) です。値の範囲は 0 から 232 − 2 です。

    この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_pool_size

    導入 5.6.10
    コマンド行形式 --thread_pool_size=#
    システム変数 名前 thread_pool_size
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 数値
    デフォルト 16
    最小値 1
    最大値 64

    スレッドプール内のスレッドグループの数。これはスレッドプールのパフォーマンスを制御するもっとも重要なパラメータです。同時に実行できるステートメントの数に影響します。デフォルト値は 16 で、許可される値の範囲は 1 から 64 です。この範囲の外側の値が指定された場合、スレッドプールプラグインはロードされず、サーバーはエラーログにメッセージを書き込みます。

    この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_pool_stall_limit

    導入 5.6.10
    コマンド行形式 --thread_pool_stall_limit=#
    システム変数 名前 thread_pool_stall_limit
    変数スコープ グローバル
    動的変数 はい
    許可されている値 数値
    デフォルト 6
    最小値 4
    最大値 600

    この変数はステートメントの実行に影響します。この値は、ステートメントが実行を開始したあと、ステートメントが停滞していると定義される前に終了する時間量で、その時点で、スレッドプールはスレッドグループは別のステートメントの実行の開始を許可します。この値は 10 ミリ秒単位で測定されるため、値 6 (デフォルト) は 60 ミリ秒を意味します。値の範囲は 4 から 600 (40 ミリ秒から 6 秒) です。待機の値が短いと、スレッドはよりすみやかに開始できます。短い値はデッドロック状況を回避により適しています。長い待機の値は、長時間実行するステートメントを含むワークロードで有用で、現在のステートメントの実行時に多数の新しいステートメントが開始しないようにします。

    この変数は MySQL 5.6.10 で追加されました。これはスレッドプールプラグインが有効な場合のみ使用できます。セクション8.11.6「スレッドプールプラグイン」を参照してください

  • thread_stack

    コマンド行形式 --thread_stack=#
    システム変数 名前 thread_stack
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 196608
    最小値 131072
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 262144
    最小値 131072
    最大値 18446744073709551615
    ブロックサイズ 1024

    各スレッドのスタックサイズ。crash-me テストによって検出される制限の多くは、この値に依存します。セクション8.12.2「MySQL ベンチマークスイート」を参照してください。デフォルトの 192K バイト (64 ビットシステムの場合は 256K バイト) は、通常の操作では十分な大きさです。スレッドスタックサイズが小さすぎると、サーバーで処理できる SQL ステートメントの複雑さ、ストアドプロシージャーの再帰の深さなど、メモリーを大量に消費する処理が制限されます。

  • time_format

    この変数は使用されません。これは MySQL 5.6.7 以降で非推奨となり、今後の MySQL リリースで削除されます。

  • time_zone

    システム変数 名前 time_zone
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 文字列

    現在のタイムゾーン。この変数は、接続する各クライアントのタイムゾーンを初期化するために使用されます。デフォルトでは、この初期値は 'SYSTEM' です (system_time_zone の値を使用することを意味します)。この値はサーバー起動時に --default-time-zone オプションで明示的に指定できます。セクション10.6「MySQL Server でのタイムゾーンのサポート」を参照してください。

  • timed_mutexes

    非推奨 5.6.20
    コマンド行形式 --timed_mutexes
    システム変数 名前 timed_mutexes
    変数スコープ グローバル
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    MySQL 5.6 で、この変数は非推奨になり、必要ありません。これは今後の MySQL リリースで削除されます。

  • timestamp

    システム変数 名前 timestamp
    変数スコープ セッション
    動的変数 はい
    許可されている値 数値

    このクライアントの時間を設定します。これはバイナリログを使用して行をリストアする場合に元のタイムスタンプを取得するために使用されます。timestamp_value は Unix エポックタイムスタンプ (UNIX_TIMESTAMP() で返されるような値で、'YYYY-MM-DD hh:mm:ss' 形式の値ではありません) または DEFAULT になります。

    timestamp を定数値に設定すると、ふたたび変更されるまでその値が保持されます。timestampDEFAULT に設定すると、その値はアクセスを受けた時点での現在の日付および時間になります。

    MySQL 5.6.4 以降では、timestampBIGINT でなく DOUBLE で、これはこの値がマイクロ秒部分を含むためです。

    SET timestampNOW() によって戻された値に影響を及ぼしますが、SYSDATE() によって戻された値には影響しません。つまり、バイナリログのタイムスタンプ設定は、SYSDATE() の呼び出しに影響しないことを意味します。サーバーを --sysdate-is-now オプションで開始して、SYSDATE()NOW() のエイリアスにでき、この場合 SET timestamp が両方の関数に影響します。

  • tmp_table_size

    コマンド行形式 --tmp_table_size=#
    システム変数 名前 tmp_table_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 数値
    デフォルト 16777216
    最小値 1024
    最大値 18446744073709551615

    内部インメモリーの一時テーブルの最大サイズ。(実際の制限値は tmp_table_sizemax_heap_table_size の最小値として決定されます。)インメモリーの一時テーブルが制限値を超えると、MySQL はこれを自動的にディスク上の MyISAM テーブルにします。多数の高度な GROUP BY クエリーを実行する場合にメモリーが多くあるときは、tmp_table_size (さらに必要に応じて max_heap_table_size) の値を増やします。この変数はユーザーが作成した MEMORY テーブルには適用されません。

    Created_tmp_disk_tables 変数と Created_tmp_tables 変数の値を比較することによって、作成された内部のディスク上の一時テーブル数と、作成された内部の一時テーブルの総数を比較できます。

    セクション8.4.4「MySQL が内部一時テーブルを使用する仕組み」も参照してください。

  • tmpdir

    コマンド行形式 --tmpdir=path
    システム変数 名前 tmpdir
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ディレクトリ名

    一時ファイルおよび一時テーブル用に使用されるディレクトリ。この変数は、ラウンドロビン方式で使用されるいくつかのパスのリストとして設定できます。パスは UNIX ではコロン文字 (:)、Windows ではセミコロン文字 (;) で区切るようにしてください。

    複数ディレクトリ機能を使用すると、いくつかの物理ディスクに負荷を分散できます。MySQL Server がレプリケーションスレーブとして動作する場合、tmpdir を、メモリーベースのファイルシステム上のディレクトリや、サーバーホストが再起動したときにクリアされるディレクトリに指定するように設定しないでください。レプリケーションスレーブは、一部の一時ファイルがマシンの再起動後も存続し、一時テーブルまたは LOAD DATA INFILE 操作を複製できるようにする必要があります。サーバーが再起動したときに一時ファイルディレクトリ内のファイルが消失した場合、レプリケーションは失敗します。slave_load_tmpdir 変数を使用すると、スレーブの一時ディレクトリを設定できます。その場合、スレーブは一般的な tmpdir 値を使用せず、tmpdir を非永続的な場所に設定できます。

  • transaction_alloc_block_size

    コマンド行形式 --transaction_alloc_block_size=#
    システム変数 名前 transaction_alloc_block_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 1024
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 8192
    最小値 1024
    最大値 18446744073709551615
    ブロックサイズ 1024

    メモリーを必要とするトランザクションごとのメモリープールを増やす、バイト単位の増加量。transaction_prealloc_size の説明を参照してください。

  • transaction_prealloc_size

    コマンド行形式 --transaction_prealloc_size=#
    システム変数 名前 transaction_prealloc_size
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (32 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 1024
    最大値 4294967295
    ブロックサイズ 1024
    許可されている値 (64 ビットプラットフォーム) 数値
    デフォルト 4096
    最小値 1024
    最大値 18446744073709551615
    ブロックサイズ 1024

    トランザクションに関するさまざまな割り当てでメモリーの取得元となる、トランザクションごとのメモリープールが存在します。プールのバイト単位の初期サイズは transaction_prealloc_size です。利用できるメモリーが不足しているためプールから十分に行えない各割り当てについて、プールは transaction_alloc_block_size バイトだけ増加されます。トランザクションが終了すると、プールは transaction_prealloc_size バイトに切り捨てられます。

    単一トランザクション内のすべてのステートメントを含めるように transaction_prealloc_size を十分に大きくすると、多数の malloc() コールを避けることができます。

  • tx_isolation

    システム変数 名前 tx_isolation
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 列挙
    デフォルト REPEATABLE-READ
    有効な値 READ-UNCOMMITTED
    READ-COMMITTED
    REPEATABLE-READ
    SERIALIZABLE

    デフォルトのトランザクション分離レベル。デフォルト値は REPEATABLE-READ

    この変数は直接設定することも、SET TRANSACTION ステートメントなどを使用して間接的に設定することもできます。セクション13.3.6「SET TRANSACTION 構文」を参照してください。スペースを含む分離レベル名に tx_isolation を直接設定する場合、名前を引用符記号で囲み、スペースをダッシュで置き換えるようにします。例:

    SET tx_isolation = 'READ-COMMITTED';
    

    この変数の値を設定するために、一意となる任意の有効な値のプリフィクスを使用できます。

    デフォルトのトランザクション分離レベルは --transaction-isolation サーバーオプションを使用すると、起動時にも設定できます。

  • tx_read_only

    導入 5.6.5
    システム変数 名前 tx_read_only
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト OFF

    デフォルトのトランザクションアクセスモード。値は OFF (読み取り/書き込み、デフォルト) または ON (読み取り専用) を指定できます。

    この変数は直接設定することも、SET TRANSACTION ステートメントなどを使用して間接的に設定することもできます。セクション13.3.6「SET TRANSACTION 構文」を参照してください。

    デフォルトのトランザクションアクセスモードを起動時に設定するには、--transaction-read-only サーバーオプションを使用します。

    この変数は MySQL 5.6.5 で追加されました。

  • unique_checks

    システム変数 名前 unique_checks
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 1

    1 に設定した場合 (デフォルト)、InnoDB テーブルのセカンダリインデックスの一意性チェックが行われます。0 に設定した場合、ストレージエンジンでは、重複したキーが入力データに存在しないことが想定されます。一意性違反がデータにないことが確実にわかっている場合、これを 0 に設定して InnoDB への大きいテーブルのインポートを高速化できます。

    この変数を 0 に設定しても、ストレージエンジンが重複キーを無視する必要があるわけではありません。エンジンは引き続き、重複キーの存在を検査し、検出された場合に重複キーエラーが生成されます。

  • updatable_views_with_limit

    コマンド行形式 --updatable_views_with_limit=#
    システム変数 名前 updatable_views_with_limit
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 ブール
    デフォルト 1

    この変数は、基礎テーブルで定義した主キーのすべてのカラムがビューに含まれていない場合に、更新ステートメントに LIMIT 句が含まれているとき、そのビューの更新を行えるかどうかを制御します。(このような更新は GUI ツールによって頻繁に生成されます。)更新は UPDATE または DELETE ステートメントのことです。ここでの主キーとは PRIMARY KEY か、カラムに NULL を含むことができない UNIQUE インデックスです。

    変数は 2 つの値に設定できます。

    • 1 または YES: 警告のみ発行します (エラーメッセージではない)。これはデフォルト値です。

    • 0 または NO: 更新を禁止します。

  • validate_password_xxx

    validate_password プラグインは、validate_password_xxx 形式の名前を持つシステム変数のセットを実装します。これらの変数は、そのプラグインによるパスワードテストの影響を受けます。セクション6.1.2.6.2「パスワード検証プラグインのオプションおよび変数」を参照してください。

  • validate_user_plugins

    導入 5.6.11
    システム変数 名前 validate_user_plugins
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 ブール
    デフォルト ON

    この変数が有効な場合 (デフォルト)、サーバーは各ユーザーアカウントを検査し、アカウントが使用できなくなる条件が検出された場合に警告を生成します。

    • アカウントが、ロードされていない認証プラグインを必要としている。

    • アカウントは sha256_password 認証プラグインを必要としているが、このプラグインによって必要とされる SSL および RSA をいずれも有効化しないでサーバーが開始された。

    validate_user_plugins を有効にすると、サーバー初期化および FLUSH PRIVILEGES の速度が低下します。追加の検査が必要ない場合、この変数を起動時に無効化するとパフォーマンス低下を防ぐことができます。

    この変数は MySQL 5.6.11 で追加されました。

  • version

    サーバーのバージョン番号。値には、サーバーの構築情報または構成情報を示すサフィクスを含めることも可能です。-log は、 1 つ以上の一般ログ、スロークエリーログ、またはバイナリログを有効化できることを示します。-debug は、デバッグサポートを有効にしてサーバーが構築されたことを示します。

  • version_comment

    システム変数 名前 version_comment
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    CMake 構成プログラムには、MySQL の構築時にコメントの指定を可能にする COMPILATION_COMMENT オプションがあります。この変数は、そのコメントの値を格納します。セクション2.9.4「MySQL ソース構成オプション」を参照してください。

  • version_compile_machine

    システム変数 名前 version_compile_machine
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    サーバーバイナリのタイプ。

  • version_compile_os

    システム変数 名前 version_compile_os
    変数スコープ グローバル
    動的変数 いいえ
    許可されている値 文字列

    MySQL が構築されているオペレーティングシステムのタイプ。

  • wait_timeout

    コマンド行形式 --wait_timeout=#
    システム変数 名前 wait_timeout
    変数スコープ グローバル、セッション
    動的変数 はい
    許可されている値 (Windows) 数値
    デフォルト 28800
    最小値 1
    最大値 2147483
    許可されている値 (その他) 数値
    デフォルト 28800
    最小値 1
    最大値 31536000

    非インタラクティブな接続を閉じる前に、サーバーがその接続上でアクティビティーを待機する秒数。

    スレッド開始時に、セッションの wait_timeout 値は、wait_timeout グローバル値または interactive_timeout グローバル値で初期化されますが、いずれになるかはクライアントのタイプ (mysql_real_connect() に対する CLIENT_INTERACTIVE 接続オプションによって定義される) によって決まります。interactive_timeoutも参照してください。

  • warning_count

    メッセージを生成した最後のステートメントから得られたエラー、警告、および注意の数。この変数は読み取り専用です。セクション13.7.5.41「SHOW WARNINGS 構文」を参照してください。


User Comments
  Posted by NOT_FOUND NOT_FOUND on March 29, 2004
if you set
[mysqld]
ft_min_word_len=3

you should also set
[myisamchk]
ft_min_word_len=3

if you use myisamchk
  Posted by Richard Fearn on March 12, 2007
The description for lower_case_table_names is a bit unclear with regards to the value 0 (but does explain 1 and 2).

A value of 0 means that table & database names are stored as-is, and name comparisons are case sensitive.

There's more information about lower_case_table_names on this page:

http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html

  Posted by David Tonhofer on November 14, 2007
Documentation says "The maximum allowable setting for sort_buffer_size is 4GB." and there is reference to a chapter explaining temporary on-disk files.

However, the fact that on 32-bit GNU/Linux x86, "sort_buffer_size" must be a few MiB only to avoid exceeding maximum process space, as explained in http://dev.mysql.com/doc/refman/5.0/en/innodb-configuration.html makes one infer that that sort_buffer_size is actually some kind of in-memory buffer.

Additionally, the formula should probably be extended:

total =
innodb_buffer_pool_size +
key_buffer_size +
innodb_additional_mem_pool_size +
innodb_log_buffer_size +
max_connections *
(sort_buffer_size +
read_buffer_size +
binlog_cache_size +
maximum_thread_stack_size);

Noting that "key_buffer_size" is a MyISAM parameter

  Posted by DBA Lead on November 29, 2010
there is abug in MySQL server that treat open_files_limit and open-files-limit differently also the limit for open-files-limit mentioned on this page is not entirely true

http://www.geeksww.com/tutorials/database_management_systems/mysql/configuration/mysql_open_files_limit_openfileslimit_vs_openfileslimit_on_linux.php
  Posted by Douglas Manley on May 4, 2011
It appears that the "read_buffer_size" setting is used by the MEMORY table engine as the allocation increment size (minus a few bytes). This means that a MEMORY table with *one row* will take up, essentially, "read_buffer_size" bytes. For each on the table, add on another "read_buffer_size" bytes to the table. The table will not change in size again until all of that allocation is used by new rows; then it will grow in increments again.

This is not documented anywhere as far as I can tell, and I only found it after banging my head against a wall looking through the MySQL source code.
  Posted by John Paterson on September 5, 2013
Many users upgrading from 5.1 to 5.6 will be caught out by this: query_cache_type by default is turned off, even if query_cache_size is set. Previous versions turned on the query cache simply by setting a value for query_cache_size.

We've just upgraded some servers for our CRM systems and itv took us a while to work out why performance was slow!

John Paterson
http://www.reallysimplesystems.com/
Making CRM Simple

  Posted by Rolf Martin-Hoster on October 16, 2014
It should also be noted that the table_definition_cache is also used to cache text/blob data during certain actions. This means it is impractical to think that the memory usage of the table definition cache is a fixed amount in anyway. There are purge functions and limits in place but on a busy system with many tables with large blobs you could see a significant amount of bloat.
Sign Up Login You must be logged in to post a comment.