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

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

发布网友 发布时间:2022-04-26 08:39

我来回答

1个回答

热心网友 时间:2022-04-07 16:05

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
ef英语哪个好 EF英孚英语培训怎么样? 英孚英语好不好 EF英孚教育到底好不好 大佬们,麦芒7和荣耀10那个值得入手?2500以下的机子还有啥好推荐的么... 介绍几款2500元以前的手机 像素一定要高 其他的不做要求 近期想入手一部安卓手机,价格2200到2500左右…买HTC desire Z还是 三星... 笔记本忘记开机密码怎么办急死了 笔记本电脑屏幕开机锁忘记密码 怎么办?急死了 华硕笔记本电脑开机密码忘记了怎样找回?系统是Windows 7旗舰版... mysql建立数据库表的时候TYPE=InnoDB有什么作用 如何创建innodb数据库 数据库性能优化 anwsion的数据库表类型InnoDB和MyISAM有何差别?选哪个更好 求问mysql 的innodb 写入频繁怎么优化 mysql innodb select count 查询速度慢,该怎么优化,已加二级索引,还是... Mysql Innodb存储引擎 select count 太慢,怎么优化 mysql5.6 innodb 优化 哪些 mysql innodb select count 优化解决方案 考驾照一般什么步骤 去驾校学车的主要流程? 学开车考驾照步骤 新手学车步骤 驾校学车流程? 学车的步骤是怎样?开车基础从哪学里? 新手学车第一次上路的步骤 驾校学习的步骤? 学车有几个步骤? 新手学车的具体操作步骤 驾校学车怎么起步 mysql使用innodb做缓存,感觉没有什么效果,CPU一直都好高,是不是设置... centos下mysql如何了解哪些地方需要优化,怎么优化达到最好的效果 关于珍惜时间的名言或谚语? 关于珍惜时间的 俗语、古诗、名言 (各十句) 有关珍惜时间的格言或谚语 关于珍惜时间的格言和谚语 关于珍惜时间的名言、谚语。 关于珍惜时间的名言和谚语 写两条关于珍惜时间的名言或谚语 关于珍惜时间的谚语和成语 怎么修改在天猫中已绑定的支付宝? 我有两个支付宝账号,怎么在天猫更换账号? 老毛桃如何重装系统 我要重装系统,通过老毛桃来重装win7系统,现到这一步不知怎么弄了,麻烦... 老毛桃重装系统怎么样 电脑怎样重装系统 老毛桃U盘重装系统经验 老毛桃开机按.键后怎么选着重装系统 老毛桃重装系统黑屏 进入老毛桃PE后怎么重装系统? 用*桃软件中的“一键还原”“我要重装系统”装完系统后怎么还是*桃的系统?