MySQL调优

修改MySQL的配置文件:


# mysql conf /etc/my.cnf

# Created by http://blog.51cto.com/blog.php?uid=10270624&jump=1

# Last Updated 2010.06.01

[client]

port            = 3306

socket          = /tmp/mysql.sock

[mysqld]

port            = 3306

socket          = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 512M

max_allowed_packet = 8M   ##  接受的数据包大小;增加该变量的值十分安全,这是因为仅当需要时才会分配额外内存。例如,仅当你发出长查询或MySQLd必须返回大的结果行时MySQLd才会分配更多内存。该变量之所以取较小默认值是一种预防措施,以捕获客户端和服务器之间的错误信息包,并确保不会因偶然使用大的信息包而导致内存溢出。

table_open_cache = 512   ## MySQL每打开一个表,都会读入一些数据到table_open_cache缓存中,当MySQL在这个缓存中找不到相应信息时,才会去磁盘上读取。默认值64

sort_buffer_size = 8M

read_buffer_size = 2M   ## MySQL读入缓冲区大小。对表进行顺序扫描的请求将分配一个读入缓冲区,MySQL会为它分配一段内存缓冲区。read_buffer_size变量控制这一缓冲区的大小。 如果对表的顺序扫描请求非常频繁,并且你认为频繁扫描进行得太慢,可以通过增加该变量值以及内存缓冲区大小提高其性能

read_rnd_buffer_size = 8M    ## MySQL的随机读缓冲区大小。当按任意顺序读取行时(例如,按照排序顺序),将分配一个随机读缓存区。进行排序查询时.  MySQL会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要排序大量数据,可适当调高该值。但MySQL会为每个客户连接发放该缓冲空间,所以应尽量适当设置该值,以避免内存开销过大.

myisam_sort_buffer_size = 8M

thread_cache_size = 8    ## 这个值(默认8)表示可以重新利用保存在缓存中线程的数量,当断开连接时如果缓存中还有空间,那么客户端的线程将被放到缓存中.  如果线程重新被请求,那么请求将从缓存中读取,如果缓存中是空的或者是新的请求,那么这个线程将被重新创建,如果有很多新的线程, 增加这个值可以改善系统性能.通过比较Connections和Threads_created状态的变量,可以看到这个变量的作用。(–>表示要调整的值)
# 根据物理内存设置规则如下:
# 1G  —> 8
# 2G  —> 16
# 3G  —> 32

# 大于3G  —> 64

query_cache_size = 1024M   ## MySQL的查询缓冲大小(从4.0.1开始,MySQL提供了查询缓冲机制)使用查询缓冲,MySQL将SELECT语句和查询结果存放在缓冲区中,

thread_concurrency = 64

max_connections = 1000    ##MySQL的最大连接数,如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量

wait_timeout = 60

interactive_timeout = 30

max_connect_errors = 9    ##对于同一主机,如果超出该参数值个数的中断错误连接,则该主机将被禁止连接。如需对该主机进行解禁,执行:FLUSH HOST

long_query_time = 1

tmp_table_size = 300M

#log-bin=mysql-bin

#binlog_format=mixed

#server-id      = 1

[mysqldump]

quick

max_allowed_packet = 8M

[mysql]

no-auto-rehash

[myisamchk]

key_buffer_size = 512M

sort_buffer_size = 8M

read_buffer = 1M

write_buffer = 1M

[mysqlhotcopy]

interactive-timeout


保存并退出,重启MySQL服务即可。

很明显,MySQL占用内存资源非常少:

MySQL调优




本文转自 linuxpp 51CTO博客,原文链接:http://blog.51cto.com/1439337369/1859942,如需转载请自行联系原作者

上一篇:SQL Server优化器特性-隐式谓词


下一篇:通过ADDM进行SQL调优