Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:如何使用系统变量?
2009-06-13 13:42
1361 查看
概述
mysql有大量的系统变量,从变量的适用范围分为全局系统变量和会话系统变量。全局系统变量仅仅影响新的连接会话,为其提供会话系统变量的默认值;而后者仅在当前的连接里存在并有效;
每个全局系统变量都有其 编译默认值,又称全局默认值;
全局系统变量编译默认值可以通过命令选项、选项文件配置选项予以改变,其值 称之为 全局系统变量的全局当前值;
某些全局系统变量的全局当前值可以通过set global改变,这些全局系统变量称之为 动态全局系统变量;当然也有只读的不可改变的全局系统变量
新的连接会创建一套仅适用于该连接会话的会话系统变量;
会话系统变量的默认值 为 对应的全局系统变量的全局当前值,称之为 会话默认值
某些会话系统变量的默认值可以通过set改变,这些会话系统变量又叫动态会话系统变量;当然也有只读的不可改变的会话系统变量
有些会话系统变量是会话里独有的,不妨叫做 独有会话系统变量;其中也有动态和只读之分
系统变量的范围限制符
GLOBAL @@GLOBAL.
SESSION @@SESSION @@ LOCAL @@LOCAL.
选项、系统变量设置 --各方式各有不同的设置范围,并不完全相同;另外,对同一参数的设置,表达式也不相同:如set可以使用表达式,而其他方式则不可以
命令选项
选项文件
运行时set
很多命令选项、配置选项、全局系统变量、会话系统变量system_variable_name 都一个对应的 max-system_variable_name,对其资源的最大值进行了限定
设置动态全局系统变量必须具有super系统权限;设置会话系统变量不需要任何权限
如果做了不适当的set,mysql会产生错误消息。例如 只适用于会话系统变量的设置,你设置到了全局系统变量上;或者只适用于全局的系统变量设置,你没有指明是全局设置(因为mysql对没有指明global的设置认为是会话的)
set语句可以设置多个系统变量,各设置之间使用逗号“,”分割。最后出现的global或session会作为后面没有做出范围限定的变量的默认范围;但是如果set语句仅设置一个系统变量,且没有global或session范围修饰,则作为session范围
强调:set @@sys_var=var_value,总是设置会话系统变量。var_value中可以使用 表达式、变量——如果此处使用了@@sys_other_var,mysql或自动寻找该存在的变量,先会话,后全局,而不仅仅限于会话级变量!!。所以,select @@sys_var 可以返回会话系统变量的值;如果不存在,就会返回全局系统变量的值;如果全局系统变量也不存在,就产生unknown system variable的错误!
可以通过set使用default值:使会话默认值=全局当前值;或使全局当前值=编译默认值。注意并不是所有的系统变量都具有default值
某些命令选项、配置选项可以使用k、m、g、t..等表示计算机上字节大小的单位(不区分大小写;但绝对不可以使用表达式!相反,set可以使用表达式,却不能使用k、m、g、t..等。另外,对于开关型bool选项或变量设置:命令选项、配置选项可以使用0、1,不可以使用on、off!set 两种形式都可以!
显示、获取系统变量 --两种方式各有不同的显示范围,并不完全相同
show
show
show
select
仅仅在session里的会话系统变量 --一些仅仅存在于会话的系统变量:只读变量、可配置变量。这些变量绝大多数不能通过show variables 来显示,而仅仅能通过select来显示!
全部动态系统变量(包括仅仅出现在session总的会话系统变量) --可以通过select显示,大部分也可以通过show variables显示
mysql有大量的系统变量,从变量的适用范围分为全局系统变量和会话系统变量。全局系统变量仅仅影响新的连接会话,为其提供会话系统变量的默认值;而后者仅在当前的连接里存在并有效;
每个全局系统变量都有其 编译默认值,又称全局默认值;
全局系统变量编译默认值可以通过命令选项、选项文件配置选项予以改变,其值 称之为 全局系统变量的全局当前值;
某些全局系统变量的全局当前值可以通过set global改变,这些全局系统变量称之为 动态全局系统变量;当然也有只读的不可改变的全局系统变量
新的连接会创建一套仅适用于该连接会话的会话系统变量;
会话系统变量的默认值 为 对应的全局系统变量的全局当前值,称之为 会话默认值
某些会话系统变量的默认值可以通过set改变,这些会话系统变量又叫动态会话系统变量;当然也有只读的不可改变的会话系统变量
有些会话系统变量是会话里独有的,不妨叫做 独有会话系统变量;其中也有动态和只读之分
系统变量的范围限制符
GLOBAL @@GLOBAL.
SESSION @@SESSION @@ LOCAL @@LOCAL.
选项、系统变量设置 --各方式各有不同的设置范围,并不完全相同;另外,对同一参数的设置,表达式也不相同:如set可以使用表达式,而其他方式则不可以
命令选项
选项文件
运行时set
很多命令选项、配置选项、全局系统变量、会话系统变量system_variable_name 都一个对应的 max-system_variable_name,对其资源的最大值进行了限定
设置动态全局系统变量必须具有super系统权限;设置会话系统变量不需要任何权限
如果做了不适当的set,mysql会产生错误消息。例如 只适用于会话系统变量的设置,你设置到了全局系统变量上;或者只适用于全局的系统变量设置,你没有指明是全局设置(因为mysql对没有指明global的设置认为是会话的)
set语句可以设置多个系统变量,各设置之间使用逗号“,”分割。最后出现的global或session会作为后面没有做出范围限定的变量的默认范围;但是如果set语句仅设置一个系统变量,且没有global或session范围修饰,则作为session范围
强调:set @@sys_var=var_value,总是设置会话系统变量。var_value中可以使用 表达式、变量——如果此处使用了@@sys_other_var,mysql或自动寻找该存在的变量,先会话,后全局,而不仅仅限于会话级变量!!。所以,select @@sys_var 可以返回会话系统变量的值;如果不存在,就会返回全局系统变量的值;如果全局系统变量也不存在,就产生unknown system variable的错误!
可以通过set使用default值:使会话默认值=全局当前值;或使全局当前值=编译默认值。注意并不是所有的系统变量都具有default值
某些命令选项、配置选项可以使用k、m、g、t..等表示计算机上字节大小的单位(不区分大小写;但绝对不可以使用表达式!相反,set可以使用表达式,却不能使用k、m、g、t..等。另外,对于开关型bool选项或变量设置:命令选项、配置选项可以使用0、1,不可以使用on、off!set 两种形式都可以!
显示、获取系统变量 --两种方式各有不同的显示范围,并不完全相同
show
[GLOBAL|
SESSION]variales; --显示所有系统变量
show
[GLOBAL|
SESSION]variales like 'special system variable'; --显示指定的系统变量
show
[GLOBAL|
SESSION]variales like '%pat[\_]ern[%\_]'; --显示模式匹配的系统变量
select
[GLOBAL|
SESSION]@@system_variable_name
仅仅在session里的会话系统变量 --一些仅仅存在于会话的系统变量:只读变量、可配置变量。这些变量绝大多数不能通过show variables 来显示,而仅仅能通过select来显示!
Name | Cmd-Line | Option file | System Var | Dynamic |
---|---|---|---|---|
autocommit | Yes | Yes | ||
big-tables | Yes | Yes | ||
- Variable: big_tables | Yes | Yes | ||
error_count | Yes | No | ||
foreign_key_checks | Yes | Yes | ||
identity | Yes | Yes | ||
insert_id | Yes | Yes | ||
last_insert_id | Yes | Yes | ||
ndb_table_no_logging | Yes | Yes | ||
ndb_table_temporary | Yes | Yes | ||
profiling | Yes | Yes | ||
rand_seed1 | Yes | Yes | ||
rand_seed2 | Yes | Yes | ||
sql_auto_is_null | Yes | Yes | ||
sql_big_selects | Yes | Yes | ||
sql_big_tables | Yes | Yes | ||
sql_buffer_result | Yes | Yes | ||
sql_log_bin | Yes | Yes | ||
sql_log_off | Yes | Yes | ||
sql_log_update | Yes | Yes | ||
sql_notes | Yes | Yes | ||
sql_quote_show_create | Yes | Yes | ||
sql_safe_updates | Yes | Yes | ||
sql_warnings | Yes | Yes | ||
timestamp | Yes | Yes | ||
transaction_allow_batching | Yes | Yes | ||
unique_checks | Yes | Yes | ||
warning_count | Yes | No |
Variable Name | Variable Type | Variable Scope |
---|---|---|
auto_increment_increment | numeric | GLOBAL| SESSION |
auto_increment_offset | numeric | GLOBAL| SESSION |
autocommit | boolean | SESSION |
automatic_sp_privileges | boolean | GLOBAL |
big_tables | boolean | SESSION |
binlog_cache_size | numeric | GLOBAL |
binlog_format | enumeration | GLOBAL| SESSION |
bulk_insert_buffer_size | numeric | GLOBAL| SESSION |
character_set_client | string | GLOBAL| SESSION |
character_set_connection | string | GLOBAL| SESSION |
character_set_database | string | GLOBAL| SESSION |
character_set_filesystem | string | GLOBAL| SESSION |
character_set_results | string | GLOBAL| SESSION |
character_set_server | string | GLOBAL| SESSION |
collation_connection | string | GLOBAL| SESSION |
collation_database | string | GLOBAL| SESSION |
collation_server | string | GLOBAL| SESSION |
completion_type | numeric | GLOBAL| SESSION |
concurrent_insert | boolean | GLOBAL |
connect_timeout | numeric | GLOBAL |
date_format | string | GLOBAL| SESSION |
datetime_format | string | GLOBAL| SESSION |
debug | string | GLOBAL| SESSION |
default_week_format | numeric | GLOBAL| SESSION |
delay_key_write | enumeration | GLOBAL |
delayed_insert_limit | numeric | GLOBAL |
delayed_insert_timeout | numeric | GLOBAL |
delayed_queue_size | numeric | GLOBAL |
div_precision_increment | numeric | GLOBAL| SESSION |
engine_condition_pushdown | boolean | GLOBAL| SESSION |
event_scheduler | enumeration | GLOBAL |
expire_logs_days | numeric | GLOBAL |
flush | boolean | GLOBAL |
flush_time | numeric | GLOBAL |
foreign_key_checks | boolean | SESSION |
ft_boolean_syntax | string | GLOBAL |
general_log | boolean | GLOBAL |
general_log_file | filename | GLOBAL |
group_concat_max_len | numeric | GLOBAL| SESSION |
identity | numeric | SESSION |
init_connect | string | GLOBAL |
init_slave | string | GLOBAL |
innodb_autoextend_increment | numeric | GLOBAL |
innodb_commit_concurrency | numeric | GLOBAL |
innodb_concurrency_tickets | numeric | GLOBAL |
innodb_fast_shutdown | boolean | GLOBAL |
innodb_flush_log_at_trx_commit | numeric | GLOBAL |
innodb_max_dirty_pages_pct | numeric | GLOBAL |
innodb_max_purge_lag | numeric | GLOBAL |
innodb_stats_on_metadata | boolean | GLOBAL |
innodb_support_xa | boolean | GLOBAL| SESSION |
innodb_sync_spin_loops | numeric | GLOBAL |
innodb_table_locks | boolean | GLOBAL| SESSION |
innodb_thread_concurrency | numeric | GLOBAL |
innodb_thread_sleep_delay | numeric | GLOBAL |
innodb_use_legacy_cardinality_algorithm | boolean | GLOBAL |
insert_id | numeric | SESSION |
interactive_timeout | numeric | GLOBAL| SESSION |
join_buffer_size | numeric | GLOBAL| SESSION |
keep_files_on_create | boolean | GLOBAL| SESSION |
key_buffer_size | numeric | GLOBAL |
key_cache_age_threshold | numeric | GLOBAL |
key_cache_block_size | numeric | GLOBAL |
key_cache_division_limit | numeric | GLOBAL |
last_insert_id | numeric | SESSION |
lc_time_names | string | GLOBAL| SESSION |
local_infile | GLOBAL | |
log | string | GLOBAL |
log_bin_trust_function_creators | boolean | GLOBAL |
log_bin_trust_routine_creators | boolean | GLOBAL |
log_output | enumeration | GLOBAL |
log_queries_not_using_indexes | boolean | GLOBAL |
log_slow_queries | boolean | GLOBAL |
log_warnings | numeric | GLOBAL| SESSION |
long_query_time | numeric | GLOBAL| SESSION |
low_priority_updates | boolean | GLOBAL| SESSION |
max_allowed_packet | numeric | GLOBAL| SESSION |
max_binlog_cache_size | numeric | GLOBAL |
max_binlog_size | numeric | GLOBAL |
max_connect_errors | numeric | GLOBAL |
max_connections | numeric | GLOBAL |
max_delayed_threads | numeric | GLOBAL| SESSION |
max_error_count | numeric | GLOBAL| SESSION |
max_heap_table_size | numeric | GLOBAL| SESSION |
max_insert_delayed_threads | numeric | GLOBAL| SESSION |
max_join_size | numeric | GLOBAL| SESSION |
max_length_for_sort_data | numeric | GLOBAL| SESSION |
max_prepared_stmt_count | numeric | GLOBAL |
max_relay_log_size | numeric | GLOBAL |
max_seeks_for_key | numeric | GLOBAL| SESSION |
max_sort_length | numeric | GLOBAL| SESSION |
max_sp_recursion_depth | numeric | GLOBAL| SESSION |
max_tmp_tables | numeric | GLOBAL| SESSION |
max_user_connections | numeric | GLOBAL| SESSION |
max_write_lock_count | numeric | GLOBAL |
min_examined_row_limit | numeric | GLOBAL| SESSION |
multi_range_count | numeric | GLOBAL| SESSION |
myisam_data_pointer_size | numeric | GLOBAL |
myisam_max_sort_file_size | numeric | GLOBAL |
myisam_repair_threads | numeric | GLOBAL| SESSION |
myisam_sort_buffer_size | numeric | GLOBAL| SESSION |
myisam_stats_method | enumeration | GLOBAL| SESSION |
myisam_use_mmap | boolean | GLOBAL |
ndb_autoincrement_prefetch_sz | numeric | GLOBAL| SESSION |
ndb_cache_check_time | numeric | GLOBAL |
ndb_extra_logging | numeric | GLOBAL |
ndb_force_send | boolean | GLOBAL| SESSION |
ndb_log_empty_epochs | boolean | GLOBAL |
ndb_log_update_as_write | boolean | GLOBAL |
ndb_log_updated_only | boolean | GLOBAL |
ndb_optimization_delay | numeric | GLOBAL |
ndb_table_no_logging | boolean | SESSION |
ndb_table_temporary | boolean | SESSION |
ndb_use_exact_count | boolean | GLOBAL| SESSION |
net_buffer_length | numeric | GLOBAL| SESSION |
net_read_timeout | numeric | GLOBAL| SESSION |
net_retry_count | numeric | GLOBAL| SESSION |
net_write_timeout | numeric | GLOBAL| SESSION |
new | boolean | GLOBAL| SESSION |
old_passwords | boolean | GLOBAL| SESSION |
optimizer_prune_level | boolean | GLOBAL| SESSION |
optimizer_search_depth | numeric | GLOBAL| SESSION |
optimizer_switch | set | GLOBAL| SESSION |
preload_buffer_size | numeric | GLOBAL| SESSION |
profiling | boolean | SESSION |
profiling_history_size | numeric | GLOBAL| SESSION |
query_alloc_block_size | numeric | GLOBAL| SESSION |
query_cache_limit | numeric | GLOBAL |
query_cache_min_res_unit | numeric | GLOBAL |
query_cache_size | numeric | GLOBAL |
query_cache_type | enumeration | GLOBAL| SESSION |
query_cache_wlock_invalidate | boolean | GLOBAL| SESSION |
query_prealloc_size | numeric | GLOBAL| SESSION |
rand_seed1 | numeric | SESSION |
rand_seed2 | numeric | SESSION |
range_alloc_block_size | numeric | GLOBAL| SESSION |
read_buffer_size | numeric | GLOBAL| SESSION |
read_only | numeric | GLOBAL |
read_rnd_buffer_size | numeric | GLOBAL| SESSION |
relay_log_purge | boolean | GLOBAL |
rpl_recovery_rank | numeric | GLOBAL |
safe_show_database | boolean | GLOBAL |
secure_auth | boolean | GLOBAL |
server_id | numeric | GLOBAL |
slave_allow_batching | boolean | GLOBAL |
slave_compressed_protocol | boolean | GLOBAL |
slave_exec_mode | enumeration | GLOBAL |
slave_net_timeout | numeric | GLOBAL |
slave_transaction_retries | numeric | GLOBAL |
slow_launch_time | numeric | GLOBAL |
slow_query_log | boolean | GLOBAL |
slow_query_log_file | filename | GLOBAL |
sort_buffer_size | numeric | GLOBAL| SESSION |
sql_auto_is_null | boolean | SESSION |
sql_big_selects | boolean | SESSION |
sql_big_tables | boolean | SESSION |
sql_buffer_result | boolean | SESSION |
sql_log_bin | boolean | SESSION |
sql_log_off | boolean | SESSION |
sql_log_update | boolean | SESSION |
sql_low_priority_updates | boolean | GLOBAL| SESSION |
sql_max_join_size | numeric | GLOBAL| SESSION |
sql_mode | set | GLOBAL| SESSION |
sql_notes | boolean | SESSION |
sql_quote_show_create | boolean | SESSION |
sql_safe_updates | boolean | SESSION |
sql_select_limit | numeric | GLOBAL| SESSION |
sql_slave_skip_counter | numeric | GLOBAL |
sql_warnings | boolean | SESSION |
storage_engine | enumeration | GLOBAL| SESSION |
sync_binlog | numeric | GLOBAL |
sync_frm | boolean | GLOBAL |
table_cache | numeric | GLOBAL |
table_definition_cache | numeric | GLOBAL |
table_lock_wait_timeout | numeric | GLOBAL |
table_open_cache | numeric | GLOBAL |
table_type | enumeration | GLOBAL| SESSION |
thread_cache_size | numeric | GLOBAL |
time_format | string | GLOBAL| SESSION |
time_zone | string | GLOBAL| SESSION |
timed_mutexes | boolean | GLOBAL |
timestamp | string | SESSION |
tmp_table_size | numeric | GLOBAL| SESSION |
transaction_alloc_block_size | numeric | GLOBAL| SESSION |
transaction_allow_batching | boolean | SESSION |
transaction_prealloc_size | numeric | GLOBAL| SESSION |
tx_isolation | enumeration | GLOBAL| SESSION |
unique_checks | boolean | SESSION |
updatable_views_with_limit | boolean | GLOBAL| SESSION |
wait_timeout | numeric | GLOBAL| SESSION |
相关文章推荐
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:(动态)系统变量
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:命令选项
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:系统变量
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:(仅会话)系统变量
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:各种应用程序及选项
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:SQL模式
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:总揽
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:状态变量
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:和路径、文件名称相关的设置
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- Qt学习: 如何在Qt中使用全局变量!出现无法解析的命令的问题看过来!!
- mac之配置mysql到环境变量及使用命令操作数据库
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- 【MySQL】如何使用string.Format拼接MySQL命令,MySQL Table表名使用变量
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- linux CentOS 系统下如何将php和mysql命令加入到环境变量中
- MacBook下如何配置xampp中使用mysql的环境变量
- 配置完jdk环境变量后无法使用系统命令