问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

mysql优化一般需要做哪些?其他数据库优化也行(sql)

发布网友 发布时间:2022-04-22 16:35

我来回答

1个回答

热心网友 时间:2023-09-18 07:01

1.硬件层次的优化
高频CPU,内存要大,磁盘转速要快,网络带宽要大。要硬件方面优化,花钱升级硬件吧。
2.软件层次的优化
我大概写一些吧,想到哪些写哪些,希望对你有用。
(1)优化安装mysql
一句话,只保留需要的、必须的,其他的统统丢掉。(这句话只适用于源码编译安装的情况,如果不是,请跳过)比如,字符集。如果安装全部字符集,大概有50多种吧...记不清了,大概有这么多,但是过多的字符集影响性能(虽然影响的不多,mysql查询机制中有一步是字符集检查)。源码编译安装的话可以大量减少字符集,只保留必须的和自己需要的那些。我维护的一个mysql服务器中的Mysql只有15个字符集。
还有就是配置文件、数据目录、系统目录不要放一块。俗话说的好,鸡蛋不要放在一个篮子里,不要在一颗树上吊死...当然,这对性能没有影响,考虑的是安全性。不是生产环境的,请无视这一条。
(2)内存分配优化。
在mysql中的配置文件中可以自定义多种缓存,适当的配给值可以提高mysql的整体性能。
比较重要的:
innodb_buffer_pool_size 这个值应该分配总内存的40-80%,总之 这个值越高越好。如果不是专属mysql服务器,那分配40%也很够用了。
query_cache_size 这个值分配灵活性也比较大,从几MB~几百MB。它缓存查询的结果集。查询不是能频繁、查询数据不是很大量的情况,分配个几MB就够了,杀鸡焉用牛刀啊,用内存的地方实在是多。
join_buffer_size,sort_buffer_size 一般设1MB,2MB就十分够用了。这俩值千万不要设置的太大,因为这俩缓存是分配给每个连接线程的,过多的连接线程可能导致内存不够用。
tmp_table_size 同样不是越大越好,分配10MB差不多够用。以后有需要可以适当多分配点。临时表缓存用于存放查询时产生的临时表,如果数据量大而tmp_table_size不够用那么Mysql会将临时表存到磁盘上导致性能下降。个人经验,当你觉得tmp_table_size不够用的时候,不要随便去增加这个值,而是检查自己的SQL语句是否还可以优化。
(3)复制与读写分离
内容太多...这个不好写啊。总之读写分离的目标是,安全、稳定、高效。访问量少、只有一台电脑的请无视这一段...

mysql的优化知识全部写出来能写出一本砖头厚的书,随便写了点自己知道的,能想到的。想了解更多,去看书吧。

我勒个去.....才看到题目后面的(sql)....吐一大口鲜血....你问的是sql优化???
再写点个人经验吧:
1.查询时,能不用* 就不用,尽量写全字段名。
2.索引不是越多越好,每个表控制在6个索引以内。范围where条件的情况下,索引不起作用,比如where value<100
3.大部分情况连接效率远大于子查询,但是有例外。当你对连接查询的效率都感到不能接受的时候可以试试用子查询,虽然大部分情况下你会更失望,但总有碰到惊喜的时候不是么...
4.多用explain 和 profile分析查询语句
5.有时候可以1条大的SQL可以分成几个小SQL顺序执行,分了吧,速度会快很多。
6.每隔一段时间用alter table table_name engine=innodb;优化表
7.连接时注意:小表 jion 大表的原则
8.学会用explain 和 profile判断是什么原因使你的SQL慢。
9.查看慢查询日志,找出执行时间长的SQL试着优化去吧~~

以上。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
写论文值得推荐的app 写论文app大全汇总 有啥好用又免费的文献查阅网站吗? 高仿苹果手机关机关不了机?是怎么回事?有那个朋友请告知! 高仿苹果6开机就是白屏黑苹果,关机关不了 怎么把电子相册保存到QQ空间相册 整个乡村音乐史上,最动人的25首歌 写给狗的歌 右侧肢体肌力4级是什么意思 肌力分级的评定标准 肌力4级是什么意思 MySQL服务器如何进行调优?? 问个mysql优化问题 mysql 中时间段查询如何优化 mysql数据量大通过时间范围查询如何优化 枸杞有什么用处 枸杞有什么作用 枸杞的用途 枸杞的主要作用是什么 高铁动车顶上的两根线分别是干什么用的? 高铁票上面的信息各是什么意思? 高铁上面的“CRH”是什么意思? 高铁票上的信息各代表什么? 高铁车票上的G D C是什么意思? iphone更新不能使用蜂窝 iphone蜂窝网络需要更新才能使用? 高铁上的饮料都是免费的吗 苹果12为什么蜂窝数据里面没有用量? 高铁上的二等座是什么情况? iphone在更新之前无法拨打和接听电话或访问蜂窝数据 高铁上的事情 mysql 千万级数据 分页优化 条件是某个日期 mysql如何限定时间范围 郑州高铁站附近医院叫什么 宁波哪家医院可做核酸检测在高铁站北广场附近? 虹口区医院有哪些医院距虹桥高铁站最近? 离长沙南站(高铁站)最近的三甲医院 离青川县高铁站最近的医院是哪个医院? 靠近杭州高铁站附近有哪家三甲医院? 坐高铁去上海华山医院看病,上海哪个高铁站离这医... 北京哪个高铁站离儿童医院近? 离沈阳高铁站近的三甲级医院? 上海哪个高铁站离杨浦区长海医院近 北京协和东西两院那个医院离高铁站较近 上海哪个高铁站离杨浦区长海医院近? 长沙南站附近的医院 唐山高铁站离哪个做核酸检测的医院最近? 上海仁济医院东院离哪个高铁站近? 上海哪些三甲医院离高铁站近 淮安高铁站附近的医院 华为哪台手机是有鸿蒙系统?