学会设置五大类MySQL参数

MySQL性能调优的10个方法 1. 选择合适的存储引擎: InnoDB 除非你的数据表使用来做只读或者全文检索 (相信现在提到全文检索,没人会用 MYSQL 了),你应该默认选择 InnoDB 。 你自己在测试的时候可能会发现 MyISAM 比 InnoDB 速度快,这是因为: MyISAM 只缓存索... 阅读详情

(一)连接

连接通常来自Web服务器,下面列出了一些与连接有关的参数,以及该如何设置它们。

1、max_connections

这是Web服务器允许的最大连接数,记住每个连接都要使用会话内存(关于会话内存,文章后面有涉及)。

2、max_packet_allowed

最大数据包大小,通常等于你需要在一个大块中返回的最大数据集的大小,如果你在使用远程mysqldump,那它的值需要更大。

3、aborted_connects

检查系统状态的计数器,确定其没有增长,如果数量增长说明客户端连接时遇到了错误。

4、thread_cache_size

入站连接会在MySQL中创建一个新的线程,因为MySQL中打开和关闭连接都很廉价,速度也快,它就没有象其它数据库,如Oracle那么多持续连接了,但线程预先创建并不会节约时间,这就是为什么要MySQL线程缓存的原因了。

如果在增长请密切注意创建的线程,让你的线程缓存更大,对于2550或100的thread_cache_size,内存占用也不多。

(二)查询缓存

MySQL中的缓存查询包括两个解析查询计划,以及返回的数据集,如果基础表数据或结构有变化,将会使查询缓存中的项目无效。

1、query_cache_min_res_unit

MySQL参数中query_cache_min_res_unit查询缓存中的块是以这个大小进行分配的,使用下面的公式计算查询缓存的平均大小,根据计算结果设置这个变量,MySQL就会更有效地使用查询缓存,缓存更多的查询,减少内存的浪费。 

2、query_cache_size

这个参数设置查询缓存的总大小。

3、query_cache_limit

这个参数告诉MySQL丢掉大于这个大小的查询,一般大型查询还是比较少见的,如运行一个批处理执行一个大型报表的统计,因此那些大型结果集不应该填满查询缓存。

qcache hit ratio = qcache_hits / (qcache_hits + com_select)

使用

SQL> show status like 'qcache%';

SQL> show status like 'com_%';

找到这些变量。

average query size = (query_cache_size - qcache_free_memory)/qcache_queries_in_cache

使用

SQL> show variables like 'query%';

qcache_* status variables you can get with:

SQL> show status like 'qcache%';

获取query_cache_size的值。

(三)临时表

内存速度是相当快的,因此我们希望所有的排序操作都在内存中进行,我们可以通过调整查询让结果集更小以实现内存排序,或将变量设置得更大。

tmp_table_size

max_heap_table_size

无论何时在MySQL中创建临时表,它都会使用这两个变量的最小值作为临界值,除了在磁盘上构建临时表外,还会创建许多会话,这些会话会抢占有限制的资源,因此最好是调整查询而不是将这些参数设置得更高,同时,需要注意的是有BLOB或TEXT字段类型的表将直接写入磁盘。  深入浅出MySQL双向复制技术

(四)会话内存

MySQL中每个会话都有其自己的内存,这个内存就是分配给SQL查询的内存,因此你想让它变得尽可能大以满足需要。但你不得不平衡同一时间数据库内一致性会话的数量。这里显得有点黑色艺术的是MySQL是按需分配缓存的,因此,你不能只添加它们并乘以会话的数量,这样估算下来比MySQL典型的使用要大得多。最佳做法是启动MySQL,连接所有会话,然后继续关注顶级会话的VIRT列,mysqld行的数目通常保持相对稳定,这就是实际的内存总用量,减去所有的静态MySQL内存区域,就得到了实际的所有会话内存,然后除以会话的数量就得到平均值。

1、read_buffer_size

缓存连续扫描的块,这个缓存是跨存储引擎的,不只是MyISAM表。

2、sort_buffer_size

执行排序缓存区的大小,最好将其设置为1M-2M,然后在会话中设置,为一个特定的查询设置更高的值。

3、join_buffer_size

执行联合查询分配的缓存区大小,将其设置为1M-2M大小,然后在每个会话中再单独按需设置。

4、read_rnd_buffer_size

用于排序和order by操作,最好将其设置为1M,然后在会话中可以将其作为一个会话变量设置为更大的值。

(五)慢速查询日志

慢速查询日志是MySQL很有用的一个特性。

1、log_slow_queries

MySQL参数中log_slow_queries参数在my.cnf文件中设置它,将其设置为on,默认情况下,MySQL会将文件放到数据目录,文件以“主机名-slow.log”的形式命名,但你在设置这个选项的时候也可以为其指定一个名字。

2、long_query_time

默认值是10秒,你可以动态设置它,值从1到将其设置为on,如果数据库启动了,默认情况下,日志将关闭。截至5.1.21和安装了Google补丁的版本,这个选项可以以微秒设置,这是一个了不起的功能,因为一旦你消除了所有查询时间超过1秒的查询,说明调整非常成功,这样可以帮助你在问题变大之前消除问题SQL。

3、log_queries_not_using_indexes

开启这个选项是个不错的主意,它真实地记录了返回所有行的查询。

小结

我们介绍了MySQL参数的五大类设置,平时我们一般都很少碰它们,在进行数据库性能调优和故障诊断时这些参数还是非常有用的。


传送门:http://database.51cto.com/art/200907/133352.htm

Java 全栈知识体系(2021 PDF 版本) 面向对象与Java基础基础知识点复习完了以后,我们需要深入的理解Java中的一些基础机制:Java进阶 - 集合框架A. Java进阶 - Java 集合框:Java 集合框架应用是极其广泛的,对于其总体框架用法及源码都必要深刻理解。B. Java进阶 - Java 集合框之 Collection源码解读:对核心的Collection类进行源码解读。C. Java进阶 - Java 集合框之 Map & Set 源码解读:对核心的Map & Set 类进行源码解读。​​​​​​​Java进阶 - 并发框架A 阅读详情

相关推荐

Web安全五大核心漏洞深度解析:从原理到实战防御

在网络安全领域,漏洞是系统预期行为与实际执行之间的偏差,其本质源于对用户输入等外部数据的信任缺失。理解漏洞原理是构建有效防御体系的基础,其技术价值在于将安全风险从事后补救转向事前预防。从概念上讲,注入漏洞、跨站脚本攻击、未授权访问、文件上传与包含、命令执行与反序列化等,构成了Web应用最常见的高危攻击面。这些漏洞常源于开发中对数据与代码边界、权限校验链条的忽视。在应用场景上,无论是电商、社交还是企业级应用,只要涉及用户交互与数据处理,就必须系统性地应对这些威胁。本文聚焦于实战中最常见、危害最大的五大核心漏洞

415

【MySQL调优】如何进行MySQL调优?一篇文章就够了!

MySQL调优主要分为三个步骤:监控报警、排查慢SQL、MySQL调优。 排查慢SQL:开启慢查询日志 、找出最慢的几条SQL、分析查询计划 。 MySQL调优: 基础优化:缓存优化、硬件优化、参数优化、定期清理垃圾、使用合适的存储引擎、读写分离、分库分表; 表设计优化:数据类型优化、冷热数据分表等。 索引优化:考虑索引失效的11个场景、遵循索引设计原则、连接查询优化、排序优化、深分页查询优化、覆盖索引、索引下推、用普通索引等。 SQL优化。

种一棵树最好的时间是十年前,其次是现在 3万+

从波形到代码:手把手调试GaN图腾柱PFC的过零点切换与软启动策略

本文详细解析了GaN图腾柱无桥Boost PFC电路在过零点切换与软启动策略中的调试方法。通过波形分析、代码实现和寄存器配置,提供了解决误开通、震荡波形等问题的实用方案,帮助工程师优化电源设计效率与可靠性。

weixin_30831529的博客 424

MySQL性能调优的10个方法(转载)-20230709

MySQL性能调优的10个方法

u010503464的博客 4899

抖音小游戏上架避坑指南:从软著申请到ICP备案全流程解析

本文详细解析了抖音小游戏上架前必须完成的软著申请和ICP备案全流程,提供了清晰的时间线规划与实操避坑指南。文章重点阐述了个人与企业备案的区别、材料准备要点以及平台审核常见问题,旨在帮助独立开发者和小团队高效、合规地完成游戏上架,避免在行政流程中延误项目。

weixin_29276847的博客 1562

Yolov5 多边形标签转换,所有json文件自动转成txt格式[详细过程]

注:labelme是麻省理工(MIT)的计算机科学和人工智能实验室(CSAIL)研发的图像标注工具,人们可以使用该工具创建定制化标注任务或执行图像标注,项目源代码已经开源。通过labelme对图进行标注后,得到的是json文件,而Yolov5对数据进行模型构建的时候,读取需要的是txt格式的文件。txt_outer_path——保存txt文本的文件夹的绝对路径。json_name——json_name是json文本的名字。json_floder——读取json的文件夹的绝对路径。

Pandas_007的博客 1万+

多方面进行MySQL性能优化(详解篇)

这种集群的架构对减轻主数据库服务器的压力有非常好的效果,但是随着业务数据越来越多,如果某张表的数据量急剧增加,单表的查询性能就会大幅下降,而这个问题是读写分离也无法解决的,毕竟所有节点存放的是一模一样的数据啊,单表查询性能差,说的自然也是所有节点性能都差。上面这条语句可以展示innodb存储引擎的当前运行的各种信息,大家可以据此找到MySQL当前的问题,限于篇幅不在此意义说明其中信息的含义,大家只要知道MySQL提供了这样一个监控工具就行了,等到需要的时候再来用就好。

tigerhhzz的博客 7905

告别外置电阻!揭秘MAX22201集成电流检测的5大设计优势(附PCB布局案例)

本文深入解析MAX22201集成电流检测技术在直流有刷电机驱动中的5大设计优势,包括BOM成本降低、PCB空间优化、动态性能提升等。通过与传统方案(如DRV8871+外置电阻)的实测对比,展示其在高精度电流检测、抗干扰能力和PCB布局简化方面的突破,并附有详细的PCB布局案例和配置指南。

weixin_29189377的博客 243

MySQL性能调优

注意事项1. 避免过度优化:优先解决性能瓶颈最严重的部分。2. 基准测试:使用sysbench或自定义脚本验证调优效果。3. 灰度发布:生产环境调整配置时逐步验证。通过以上策略,可系统性提升MySQL性能,支撑高并发、大数据量场景。实际调优需结合业务特点,持续监控与迭代。

guanxin0206的博客 4023

出个AI8051U的PWM例程 | 3相互补SPWM变频驱动,PWMA-3个相位差120度的PWM互补输出

通道2输出: P2.2, PWMA2P输出, P2.3, PWMA2N输出, PWMA2相对PWMA1滞后120度相位.通道3输出: P2.4, PWMA3P输出, P2.5, PWMA3N输出, PWMA3相对PWMA1滞后240度相位.先别修改程序, 直接下载"Objects"里的"pwm.hex"测试, 下载时选择主频24MHz.主频32.768MHz, PWM周期1422, 刷新频率23040Hz,死区0.5us,通道1输出: P2.0, PWMA1P输出, P2.1, PWMA1N输出。

USB_CAN_8051的博客 691

模拟ic入门——设计一个带隙基准Bandgap(三)高阶温度补偿与启动电路设计

本节我们来介绍高阶温度补偿,以及一些启动电路的设计,附上一些经典的论文供大家学习

qq_64956710的博客 1万+

基于Python的疫情数据爬虫及可视化

python 基础语法的学习系统的学习了 python 中的循环,分支,条件和枚举等相关语法,及其 python 语言本身的特色(缩进,代码块),系统的学习了 python 的基本数据类型和相关系统内置函数的使用(基本数据类型包括字符串、数字、容器、布尔、None 五大类),以及类、面向对象的特征(init,私有变量的定义等),包、模块、函数与变量作用域的理解,pythonic 的深刻理解。函数式编程的相关概念(包括闭包等),最后学习了相关类库,为之后的爬虫开发打下了坚实的基础。在实训过程的第一周的时候,练

毕业作品网站 1151

Axure RP9.0 教程:左侧菜单列表导航 ( 点击父级菜单,子菜单自动收缩或展开)【响应式的菜单导航】

1. 设置目标原件时,选择切换,这样就可以实现,当原件展示时,点击自动隐藏,隐藏时自动显示; 2. 展开/收起原件(推动/拉动原件)设置为方向**向下**

专注于计算机研发知识和资讯分享 1381

七周成为数据分析师—Excel函数篇

本文是《七周成为数据分析师》的第一篇教程,如果想要了解写作初衷,可以先行阅读七周指南。温馨提示:如果您已经熟悉Excel,大可不必再看这篇文章,或只挑选部分。 世界上的数据分析师分为两类,使用Excel的分析师,和其他分析师。每一个数据新人的入门工具都离不开Excel。因为Excel涵盖的功能足够多。很多传统行业的数据分析师只要求掌握Excel即可,会SPSS/SAS是加分项。即使在挖掘满街走,P...

weixin_43788358的博客 339

AUTOSAR进阶图解==>AUTOSAR_SWS_COM

AUTOSAR COM模块是AUTOSAR通信堆栈的核心组件,提供信号导向的通信服务。该模块位于通信服务层,连接RTE与PDU Router,主要功能包括信号封装/提取、传输模式管理、信号路由、超时监控和字节序转换等。COM模块架构分为应用层、通信服务层和通信抽象层,包含信号管理、I-PDU处理、传输模式管理等组件。其配置结构包括顶层容器、I-PDU组、I-PDU和信号等多层次配置对象,支持丰富的参数设置。模块采用严格的状态管理机制,包括模块状态和I-PDU组状态转换,确保通信可靠性。

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 1244

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

网络安全入门:漏洞挖掘必备工具清单与实战工作流指南

漏洞挖掘是网络安全领域的核心技能之一,其本质是通过系统化的方法发现和验证软件或系统中的安全缺陷。其技术原理通常遵循从信息收集、漏洞探测到利用验证的流程,依赖于自动化工具与人工分析的结合。掌握有效的工具链对于提升安全测试效率、覆盖常见攻击面具有重要价值,广泛应用于渗透测试、代码审计和红蓝对抗等场景。本文聚焦于为初学者构建一套高效实用的工具集,重点解析了Nmap、Burp Suite、SQLmap等核心工具在实战中的适配场景与操作要点,并提供了从侦察到验证的完整工作流示例,帮助读者快速建立系统化的漏洞挖掘能力。

diejiankuai3444的博客 397

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

SpringBoot与Flowable/Activiti工作流引擎实战:从零搭建企业级审批系统

本文详细介绍了如何使用SpringBoot与Flowable/Activiti工作流引擎从零搭建企业级审批系统。通过对比Flowable和Activiti的特点,结合SpringBoot的自动配置特性,快速实现人事审批、订单审核等复杂业务流程。文章包含环境搭建、流程设计、核心API开发及高级功能实现,助力开发者高效构建智能审批系统。

weixin_29224529的博客 255

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

蘑菇街校招后端笔试题复盘:Java基础与数据库是分水岭

Java集合框架的底层原理,是后端工程师构建高并发系统的基石。从HashMap在并发环境下的隐患,到ConcurrentHashMap的锁粒度优化,再到线程池参数设计与JVM引用类型,每一个基础知识点都直接关系到电商系统的稳定性。MySQL索引与事务隔离级别决定了订单查询与库存扣减的数据一致性,而缓存穿透、分布式ID生成等经典问题则考验综合设计思维。以蘑菇街校招后端笔试题为样本,这些技术概念不仅是被反复考察的重点,也是实际电商后端开发中绕不开的实践课题。扎实的基础知识与工程化思维,正是校招选拔的关键分水岭。

weixin_30709061的博客 333

从500错误诊断到系统韧性构建:后端工程师的故障排查实战指南

在分布式系统和微服务架构中,服务器端错误处理是保障服务稳定性的核心环节。HTTP状态码中的5xx系列,特别是500 Internal Server Error,代表了服务器端未能处理的意外状况,其背后往往涉及代码异常、依赖服务故障或资源瓶颈等复杂成因。理解其原理对于构建高可用的应用至关重要,它直接关系到系统的可观测性和用户体验。从工程实践角度,有效诊断500错误需要系统性地运用日志记录、监控指标和分布式追踪这‘可观测性三板斧’。例如,通过分析‘ollama报错500’或‘代理情况下接口返回internal

weixin_34239169的博客 275

构建CTF解题系统:从零到精通的实战思维与工具链

在网络安全和CTF竞赛学习中,掌握核心解题思维与高效工具链是关键。理解计算机系统与网络协议的基本原理,是分析漏洞和设计攻击路径的基础。其技术价值在于培养在未知环境中系统化发现问题、分析问题并利用规律解决问题的能力,这种能力在渗透测试、漏洞研究和安全防御等工程实践中至关重要。应用场景广泛覆盖Web安全、二进制漏洞利用、密码学分析和数字取证等领域。本文以CTF实战为切入点,深入探讨如何构建可复用的解题系统,重点涵盖Burp Suite等核心工具的高效使用,以及从信息收集到漏洞利用的完整流水线设计,帮助学习者建立

weixin_30268921的博客 501
上一篇: 自整理MYSQL常用命令+短精简说明
下一篇: Oracle sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别
ichsonx
博客等级 码龄19年 202粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值