mysql8配置优化
最大连接数服务器的并发连接请求量比较大,建议调高此值,相应的占用内存越大查看当前配置。
·
max_connections
最大连接数
服务器的并发连接请求量比较大,建议调高此值,相应的占用内存越大
max_connections = 768
查看当前配置
show variables like 'max_connections';
max_user_connections
每个用户的最大连接数
默认值 0
0表示,不受限制
max_user_connections = 600
查看当前配置
show variables like 'max_user_connections';
wait_timeout
MySQL客户端的数据库连接闲置最大时间值
默认是 8小时
#单位为秒,3600 表示1小时
wait_timeout=3600
sort_buffer_size
sort_buffer_size
是一个connection
级参数,在每个connection
第一次需要使用这个buffer
的时候,一次性分配设置的内存。并不是越大越好,由于是connection
级的参数,过大的设置+高并发可能会耗尽系统内存资源。官方文档推荐范围为256KB~2MB
sort_buffer_size = 2M
查看当前配置
show variables like '%sort_buffer_size%';
back_log
#默认的50,每个连接256kb,占用:125M
back_log = 500
back_log值不能超过TCP/IP连接的侦听队列的大小
查看 tcp/ip 连接数 cat /proc/sys/net/ipv4/tcp_max_syn_backlog
查看当前配置
show variables like 'back_log'
thread_concurrency
多核心优化,应是 核心的2倍
假设 4个cpu,每个cpu 2核,那么 最后应该是 16
查看当前配置
show variables like 'thread_concurrency'
修改mysql binlog
查看日志
mysql> show binary logs;
输出
+---------------+------------+-----------+
| Log_name | File_size | Encrypted |
+---------------+------------+-----------+
| binlog.000017 | 616891021 | No |
| binlog.000018 | 1073751165 | No |
| binlog.000019 | 1073742021 | No |
| binlog.000020 | 1283903951 | No |
| binlog.000021 | 589666324 | No |
+---------------+------------+-----------+
5 rows in set (0.14 sec)
全部删除日志
mysql> reset master;
结果
输出
mysql> show binary logs;
+---------------+-----------+-----------+
| Log_name | File_size | Encrypted |
+---------------+-----------+-----------+
| binlog.000001 | 156 | No |
+---------------+-----------+-----------+
1 row in set (0.00 sec)
如果想单独删除某一个之前的日志
删除 binlog.000020 之前的,但不包括 binlog.000020
mysql> purge master logs to 'binlog.000020';
结果
输出
mysql> show binary logs;
+---------------+------------+-----------+
| Log_name | File_size | Encrypted |
+---------------+------------+-----------+
| binlog.000020 | 1283903951 | No |
| binlog.000021 | 589666324 | No |
+---------------+------------+-----------+
2 row in set (0.00 sec)
设置自动删除
修改mysql 配置文件
/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
......
# 在 [mysqld] 下增加如下,表示 5 天前日志都会删除
--expire_logs_days=5
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献6条内容
所有评论(0)