回正题:
low_priority_updates=1则是比上述方法更极端,直接给读操作优先与写操作。(不推荐)
----------------------------------------------------------
5、lower_case_file_system | ON
这是控制mysql数据库文件名在文件系统中是否对大小写敏感,默认是ON对大小写不敏感,OFF的话就是对大小写敏感。
作用域:全局
----------------------------------------------------------
6、lower_case_table_names | 1
此变量是设置数据库名或表别名是否大小写敏感。
作用域:全局
0:存储时按照指定的表名,比较时对大小写敏感。
1:存储时按照小写(不管表是否有大写),比较时对大小写不敏感。
2:存储时按给定的表名,比较时用小写。
对于windows和Mac OX S 这些文件系统对大小写敏感的系统一般不设0,windows默认设置为1,Mac OX S设置为2。
------------------------------------------------------------
7、max_allowed_packet | 1048576
8、net_buffer_length | 16384
先介绍net_buffer_length,它是每个客户端线程的连接缓存区和结果缓冲区都是通过net_buffer_length来初始化,net_buffer_length默认初始值是16384(16K),但其值最大可以达到max_allowed_packet设定值,max_allowed_packe默认值是1M,最大达到1073741824(1G),其值必须是1024的倍数,否则回落到最靠近1024倍数值(如1025则值是1024),在内存允许的情况下,max_allowed_packe越大越好。
若max_allowed_packe设置的小,当增改(insert/update/load data infile…)数据库时,若出现大字符串或blob类型列且大小大于max_allowed_packe值则会出现以下问题。
My.ini加入配置
net_buffer_length=1024 #默认是16384,这里改小为了测试
max_allowed_packet=1025#默认是1M,这里虽然是1025而事实上值是1024
笔者更新表某列(值大于1024)则出现:
ERROR 1153 (08S01): Got a packet bigger than 'max_allowed_packet' bytes
注意:在version()<5.0.84 net_buffer_length可以设置但没有效,version()=5.0.84是只读
------------------------------------------------------------
9、 max_binlog_cache_size | 4294963200
这是设置最大二进制日志的缓存区大小的变量。若处理多语句事务时需要的内存大小比设置值大的话就会提示一个error:Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage 。
这个变量最小值是4096(4K),最大值,在32位的系统中是4G,64位的是16P。
作用域:全局
在mysql5.0中,max_binlog_cache_size一修改则所有会话都受影响(可能之前的受延迟,笔者没查证过)
--------------------------------------------------------------
10、 max_binlog_size | 1073741824
这是设置每个二进制日志文件内容大小的变量,如果当前文件的数据量大于max_binlog_size的值时,则会关闭此文件,新建下个文件写入数据。
但是,当处理多语句事务(大事务)时,会出现文件数据大小比此值设置值大的情况。这是因为事务的二进制日志是块存储的,也就是说不会分割出来存放在两个日志文件中。
作用域:全局
------------------------------------------------------------------
11、 max_connect_errors | 10
设置某客户端链接mysql服务器失败次数,若次数超过此值,则锁定禁止该客户端链接服务器且提示错误,若在未超过此值有一次成功链接,则计数器会清零。
这是一个与性能无关的变量,而是安全方面考虑的,主要防止穷举法破解数据库用户和密码。
作用域:全局
默认值是10,32位系统1~ 4294967295,64位的是1~18446744073709547520
官方说:一旦锁定,要解锁只有方法:在mysql客户端flush hosts ;在mysqladmin中用mysqladmin flush-host
笔者在本机测试过:这个功能用不了 。
------------------------------------------------------------------
12、 max_connections | 100
这个设置数据库并发可连接的数量
作用域:全局
值域:
Version()<=5.1.14 :默认100
Version()>=5.1.15 :默认151 1~16384
Version()>=5.1.17 :默认151 1~100000
这是网站成长必要修改的一个变量,允许多少人在网站上并发操作。
------------------------------------------------------------------
13、max_delayed_threads | 20
延迟操作Delay_insert最大线程数
作用域:全局 、会话
默认20 值域:0~16384
-----------------------------------------------------------------
14、 max_error_count | 64
Show warning 或show error 显示warning或Error显示的最大个数,默认是64,值域0~65535.此值不能改太小,否者若错误提示个数比此值多的话不方便调试。
作用域:全局 、会话
注意:此值不要调太小;对于已经运行系统,可设为0,不会提示错误。
-----------------------------------------------------------------
15、max_heap_table_size | 16777216
内存表最大行数。
作用域:全局 、会话
值域:32位操作系统16384~4294967295 64位操作系统16384 ~ 1844674407370954752
默认值都是16777216
原文转自:http://blogread.cn/it/article/5968