快捷搜索:   nginx

mysql数据服务器 参数调优

配置

Cpu:model name      : Intel(R) Xeon(R) CPU           X3220 @ 2.40GHz

内存:MemTotal:      4151120 kB

系统负载情况:load average: 0.11, 0.21, 0.19(无负载)

Msyql调优

针对my.cnf文件进行优化:

[d]

skip-locking(取消文件系统的外部锁)

skip-name-resolve(不进行域名反解析,注意由此带来的权限/授权问题)

key_buffer_size = 256M(分配给MyISAM索引缓存的内存总数)

对于内存在4GB左右的该参数可设置为256M或384M。

注意:该参数值设置的过大反而会是服务器整体效率降低!

  max_allowed_packet = 4M(允许最大的包大小)

thread_stack = 256K(每个线程的大小)

table_cache = 128K(缓存可重用的线程数)

back_log = 384(临时停止响应新请求前在短时间内可以堆起多少请求,如果你需要在短时间内允许大量,可以增加该数值)

sort_buffer_size = 2M(分配给每个线程中处理排序)

read_buffer_size = 2M(读取的索引缓冲区大小)

join_buffer_size = 2M(分配给每个线程中处理扫描表连接及索引的内存)

myisam_sort_buffer_size = 64M(myisam引擎排序缓冲区的大小)

table_cache = 512(缓存表的数量,避免重复打开表的开销)

thread_cache_size = 64(缓存可重用线程数,见笑创建新线程的开销)

query_cache_size = 64M(控制分配给查询缓存的内存总量)

tmp_table_size = 256M(指定mysql缓存的内存大小)

max_connections = 768(最大连接数)指mysql整个的最大连接数

max_connect_errors = 10000(最大连接错误数据)

wait_timeout = 10(超时时间,可以避免攻击)

thread_concurrency = 8(根据cpu数量来设置)

skip-bdb 禁用不必要的引擎

skip-networking(关闭mysql tcp/ip连接方式)

Log-slow-queries = /var/log/mysqlslowqueries.log

long_query_time = 4(设定慢查询的时间)

skip-host-cache(提高mysql速度的)

open_files_limit = 4096(打开文件数)

interactive_timeout = 10(服务器在关闭它前在一个交互连接上等待行动的秒数)

max_user_connections = 500(最大连接数)

Mysql内存使用公式:实际物理内存计算公式key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections

MAX_QUERIES_PER_HOUR 用来限制用户每小时运行的查询数量:

mysql> grant all on dbname* to db@localhost identified by 123456 with max_connections_per_hour 5;

db用户在dbname的数据库上控制用户每小时打开新连接的数量为5个)

MAX_USER_CONNECTIONS 限制有多少用户连接MYSQL服务器:

mysql> grant all on dbname* to db@localhost identified by 123456 with max_user_connections 2;

db用户在dbname的数据库账户一次可以同时连接的最大连接数为2个

MAX_UPDATES_PER_HOUR 用来限制用户每小时的修改数据库数据的数量:

mysql> grant all on dbname* to db@localhost identified by 123456 with max_updates_per_hour 5;

db用户在dbname的数据库上控制用户每小时修改更新数据库的次数为5次)

MAX_USER_CONNECTIONS 用来限制用户每小时的修改数据库数据的数量:

mysql> grant all on dbname* to db@localhost identified by 123456

With MAX_QUERIES_PER_HOUR 20 ;指mysql单个用户的最大连接数

db用户在dbname的数据库上控制用户每小时的连接数20个)
顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论