温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MySQL优化之二:My SQL Server性能优化

发布时间:2020-06-27 06:34:23 来源:网络 阅读:1061 作者:zengwj1949 栏目:MySQL数据库

1 安装优化

一般说来,系统功能越多越复杂,性能就会越差。因此在编译安装MySQL时,仅安装需要的功能模块。如存储引擎、需要的字符集等,让系统尽可能的简单。


2 日志设置优化

由于日志记录直接带来的性能损耗就是数据库最为昂贵的I/O资源,因此在默认情况下MySQL仅开启了错误日志,关闭了其它所有日志。但是在生产环境中,至少需要打开二进制日志和慢查询日志,前者是增量备份的基础,而后者有利于进一步对数据库进行优化。通常情况下,生产环境中很少会打开一般查询日志,如果打开,数据库会记录每一条操作记录对系统I/O性能影响很大。

查看二进制日志设置,默认关闭:

mysql> show variables like '%log%bin%';

+---------------------------------+-------+

| Variable_name                   | Value |

+---------------------------------+-------+

| log_bin                         | OFF   |

| log_bin_basename                |       |

| log_bin_index                   |       |

| log_bin_trust_function_creators | OFF   |

| log_bin_use_v1_row_events       | OFF   |

| sql_log_bin                     | ON    |

+---------------------------------+-------+

6 rows in set (0.00 sec)

查看慢查询日志设置,默认关闭:

mysql> show variables like "slow%";                   

+---------------------+-----------------------------+

| Variable_name       | Value                       |

+---------------------+-----------------------------+

| slow_launch_time    | 2                           |

| slow_query_log      | OFF                         |

| slow_query_log_file | /data/mysql/slave2-slow.log |

+---------------------+-----------------------------+


3 内存优化

key_buffer_size:MyISAM引擎索引缓存的大小,4G内存建议设为256M,最大不超过4G

read_buffer_size:读查询(顺序读)使用的缓冲区大小,默认为128KB,此值为每个连接独享因此不能太大,在生产环境中,应进行多次测试,找到最佳值(为4KB的倍数)

read_rnd_buffer_size:读查询(随机读)使用的缓冲区大小,默认为256KB,同样是每个连接独享,一般来讲,可以适当调大

max_connections:MySQL允许的最大连接数,默认为151,如果主机性能和内存允许的话,500-800较为合适

thread_cache_size:Thread_cache池中可以缓存的连接线程最大数量,建议100以内


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI