欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Mysql 故障与优化

最编程 2024-04-01 18:25:55
...

通常默认的 my.cnf 配置文件无法发挥出 MySQL 最高的性能

下面是物理内存为 32G 的数据库优化参数,具体从全局、二进制日志、主从、innodb、myisam 几个方面优化

1.默认 MySQL 使用的是系统时区,修改为北京时间,也就是所说的东八区

default-time-zone=+8:00

2.服务器关闭交互式连接前等待活动的秒数

interactive_timeout = 120

3.服务器关闭非交互连接之前等待活动的秒数

wait_timeout = 120

4.MySQL 服务器打开文件句柄数限制

open_files_limit = 10240

5.MySQL 默认的拼接最大长度为 1024 个字节,由于 1024 个字节会出现不够用的情况, 根据实际情况进行修改

group_concat_max_len = 102400

6.使用 mysql 用户运行

user=mysql

7.设置字符集为 utf8

character-set-server=utf8、init_connect='SET NAMES utf8'

8.如果系统在短时间内有很多连接,则需要增大该参数的值,该参数值指定到来的 TCP/IP 连接的监听队列的大小。默认值 50

back_log = 600

9.MySQL 允许最大的进程连接数,如果经常出现 Too Many Connections 的错误提示, 则需要增大此值

max_connections = 5000

10.设置每个主机的连接请求异常中断的最大次数

max_connect_errors = 6000

11.数据表调整缓冲区大小。它设置表高速缓存的数目

table_cache = 1024

12.指定表高速缓存的大小

table_open_cache = 2048

13.用户可以创建的内存表(memory table)的大小

max_heap_table_size = 256M

14.使用 skip-external-lockingMySQL 选项以避免外部锁定。该选项默认开启

external-locking = false

15.设置在网络传输中一次消息传输量的最大值。系统默认值为 1MB,最大值是 1GB,必须设置 1024 的倍数

max_allowed_packet = 32M