[mysqld]
socket = /tmp/mysql.sock
#Linux环境下特有,用户在Linux客户端链接可以不通过TCP/IP网络而直接使用socket链接mysql
skip-external-locking
#避免Mysql的外部锁定,减少出错率,增强稳定性。
skip-name-resolve
#禁止mysql堆外部链接进行DNS解析,消除mysql进行DNS解析的时间,开启后所有远程主机只能通过IP连接
back_log = 384
#Mysql暂停响应新请求之前,短时间内的多个请求可以被存在堆栈中。如果系统在短时间内有很多连接,则需要增大该参数值指定到来的TCP连接的侦听队列的大小。(默认值为50,推荐设置小于512的整数)
key_buffer_size = 384M
#指定用于索引的缓冲区大小,增加它可以更好的索引处理性能(4G左右服务器,建议设置256M-384M)
max_allowed_packet = 4M
#在网络传输中一次消息传输大量的最大值。系统默认为1M,最大为1G,必须设置1024的倍数
thread_stack = 256k
#设置mysql每个线程的堆栈大小,默认值(192K)足够大。可设置范围128K到4GB,
tabke_cache = 614K
#指表高速缓存的大小。当Mysql访问一个表时,如果在mysql表缓存区还有空间,那么这个表就被打开并放入表缓冲区,能更快地访问表中的内容。可以通过Open_tables喝Opened_tables,判断是否需要增加table_cache的值,如果open_tables接近table_cache的时候,并且Opened_tables这个值在逐步增加,那就要考虑增加这个值的大小。
sort_buffer_size = 6M
#查询排序时能使用的缓冲区大小(默认2M)
read_buffer_size = 4M
#读查询所能使用的缓冲区大小
join_buffer_size = 8M
#联合查询能使用的缓冲区大小
myisam_sort_buffer_size = 64M
#用于设置在REPAIR TABLE或用CREATE INDEX创建索引或ALTER TABLE的过程中排序索引所分配的缓冲区大小(范围为4M至4GB,默认8M)
thread_cache_size = 64M
#用于设置Thread Cache池中可以缓冲的连接线程最大数量,范围0-16384默认为0。这个值表示可以重新利用包吃在缓冲中的线程数量,当断开连接时,如果缓冲中还有空间,那么客户端的线程将被放到缓存中;如果线程重新被请求,那么请求将从缓冲中读取,如果缓冲中是空的或则是新的请求,那么这个线程将重新创建,如果有很多新的线程,增加这个值可以改善系统性能。(1G=8 2G=16 3G=32 4G=64或 更大)
query_cache_size = 64M
#指定Mysql查询缓冲区的大小。可以通过Mysql控制台观察,如果Qcache_lowmem_prunes的值非常大,表明经常出现缓冲不够的清空;如果Qcache_hits的值非常大,则表明查询缓冲使用非常频繁。如果该值较小反而会影响效率,那么可以考虑不用查询缓冲;如果Qcache_free_blocks非常大,表明缓冲区碎片很多;
tmp_table_size = 256M
#用于设置内存临时表的最大值。如果超过该值,则会将临时表写入硬盘,范围1K到4GB。
max_connections = 768
#指定Mysql允许的最大连接进程数。如果经常出现“Too Many Connections"的错误,则要增大
max_connect_errors = 1000
#用于设置每台主机的连接请求异常终端的最大次数,当超过该次数,Mysql禁止host的连接请求。直到Mysql重启或通过flush hosts命令清空此host的相关信息。默认为10
wait_timeout = 10
#用于指定一个请求的最大连接时间,对于4GB左右内存的服务器来说,可以设置5-10
thread_concurrency = 8
#取值为服务器裸机CPU的数量的两倍
skip-networking
#开启选项可以彻底关闭Mysql的TCP/IP连接方式,如果web服务器是以远程连接访问mysql则不需要开启,否则无法正常连接
table_cache = 1024
#物理内存越大,设置越大,512-1024最佳。
innodb_additional_mem_pool_size = 4M
#默认为2M
innodb_flush_log_at_trx_commit = 1
#设置为0就是等到innodb_log_buffer_size列队满后在统一存储,默认为1
innodb_log_buffer_size = 2M
#默认为1M
innodb_thread_concurrency = 8
#服务器CPU有几个就设置几个
tmp_table_size = 64M
#设置内存临时表最大值。如果超过该值,则会将临时表写入磁盘。范围1KB-4GB
read_rnd_buffer_size = 16M
#设置进行随机读写的时候所有使用的缓冲区。与read_buffer_size所设置相反,一个是顺序读的时候使用,一个是随机读的时候使用
#如果key_reads太大,则应该把key_buffer_size变大,保持key_reads/key_read_requests至少在1/100以上,越小越好;如果qcache_lowmem_prunes很大,就要增加query_cachesize的值
Mysql配置优化
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 我曾经在公司处理过很多次Mysql性能上的问题,利用一些Linux常用的命令来查看Mysql对服务器的CUP和I/...
- mysql性能优化-慢查询分析、优化索引和配置 分类:Mysql/postgreSQL 目录 一、优化概述 二、查...
- ``` [client] port = 3306 socket = /tmp/mysql.sock [mysqld...