当前位置:首页 > 文章列表 > 数据库 > MySQL > MySQL常见参数设置

MySQL常见参数设置

来源:SegmentFault 2023-02-24 21:35:45 0浏览 收藏

本篇文章向大家介绍《MySQL常见参数设置》,主要包括MySQL、MySQL优化,具有一定的参考价值,需要的朋友可以参考一下。

MySQL有大量可以修改的参数(但不应该随便去修改),通常只需要把基本项配置正确,应该将更多的时间花在表结构、索引优化,sql查询优化。然而知道一些常见参数的作用还是有用的。

key_buffer_size

设置这个变量可以一次性为键缓存区分配所有指定的空间。操作系统并不会真的立刻分配内存,而是到使用时才分配内存。key_buffer_size只对MyISAM表起作用。MyISAM的表使用键高速缓存来缓存索引,这个键高速缓存的大小则通过 key-buffer-size 参数来设置。如果应用系统中使用的表以MyISAM存储引擎为主,则应该适当增加该参数的值,以便尽可能的缓存索引,提高访问的速度。

table_open_cache

每当MySQL访问一个表时,如果在表缓冲区中还有空间(数量的空余),该表就被打开并放入其中,这样可以更快地访问表内容。这个值设置的是表的缓存数量。

thread_cache_size

每建立一个连接,都需要一个线程来与之匹配,此参数用来缓存空闲的线程,以至不被销毁,如果线程缓存中有空闲线程,这时候如果建立新连接,MySQL就会很快的响应连接请求。可以通过

mysql> show variables like '%thread_cache_size';

来查看。

query_cache_size

MySQL在启动时,一次性分配并初始化这块内存。查询缓存默认是关闭的。

read_buffer_size

MySQL读入缓冲区的大小,将对表进行顺序扫描的请求将分配一个读入缓冲区,MySQL会为它分配一段内存缓冲区,read_buffer_size变量控制这一缓冲区的大小,如果对表的顺序扫描非常频繁,并你认为频繁扫描进行的太慢,可以通过增加该变量值以及内存缓冲区大小提高其性能

read_rnd_buffer_size

MySQL的随机读缓冲区大小,当按任意顺序读取行时(列如按照排序顺序)将分配一个随机读取缓冲区,进行排序查询时,MySQL会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要大量数据可适当的调整该值,但MySQL会为每个客户连接分配该缓冲区所以尽量适当设置该值,以免内存开销过大。表的随机的顺序缓冲 提高读取的效率。MySQL只会在有查询需要使用时才会为该缓存分配内存,并且只会分配需要的内存大小而不是全部指定大小。

sort_buffer_size

MySQL只有在查询需要排序操作时才会为该缓存分配内存。该参数是一个connection级参数,在每个connection第一次需要使用这个buffer的时候,一次性分配设置的内存,所以这个值不应该设置过大。

innodb_buffer_pool_size

InnoDB使用该参数指定大小的内存来缓冲数据和索引,这个是Innodb引擎中影响性能最大的参数,InnoDB严重依赖缓存池,所以该参数应该合理设置。

innodb_log_buffer_size

这项指定InnoDB用来存储日志数据的缓存大小,如果您的表操作中包含大量并发事务(或大规模事务),并且在事务提交前要求记录日志文件,请适当调高此项值,以提高日志效率。

innodb_file_per_table

该参数在 MySQL5.6.6版本默认是开启的,它使每个表的数据、索引存放在自己单独的表空间中。

理论要掌握,实操不能落!以上关于《MySQL常见参数设置》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

版本声明
本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
centos7 下安装laravel 运行环境centos7 下安装laravel 运行环境
上一篇
centos7 下安装laravel 运行环境
MySQL升级5.5.36升级5.6.37
下一篇
MySQL升级5.5.36升级5.6.37
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    650次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    676次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    722次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    681次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    514次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码