正如房东所说,分页查询在我们的实际应用中非常常见,也是问题最多的查询场景。例如,对于下面的简单语句,通常的思考方式是在name、age、register中u在time字段上创建一个复合索引。这样,条件排序可以有效地利用索引,性能得到快速提高。
如上例所示,当limit子句变为“limit 100000,50”时,我们会发现,如果只选择了50条语句,为什么会变慢?
,所以我们会觉得很慢。
优化方案:主从同步读写分离:此表具备设备条件,读写分离,这样可以降低很多压力,同时也可以提高数据的稳定性。垂直表:根据原则,每个表最多不超过5个索引,垂直拆分字段,并将部分字段拆分成一个新表。一般情况下,我们按照以下原则进行纵向拆分:(一)区分表中的热数据字和冷数据字,缺点是需要重写很多逻辑,这就带来了大量的工作。使用表分区:这是推荐的解决方案,不会带来重写逻辑。可以根据时间对表进行分区,相当于在同一个磁盘上,表中的数据存在于不同的文件夹中,这样可以大大提高查询速度。横台分割:1000W数据较多,会带来一定的运维压力。备份时,需要很长时间才能备份单个表。因此,可以根据服务器的硬件条件进行水平表划分,以每个表的数据量为准。
1. 优化SQL语句、索引和表结构。
2. 打开查询缓存时,查询缓存缓存选择查询及其结果数据集。当执行同一个select查询时,MySQL将直接从内存中检索结果,这加快了查询的执行速度,减少了对数据库的压力。执行show变量,比如“have”uqueryucache,您可以检查MySQL查询缓存是否打开。要打开查询缓存,只需配置我的.cnf具体如下:
querycacheuuutype=1
querycacheuusize=128M
querycacheulimit=1m
保存后重新启动mysql。
3. 选择InnoDB存储引擎。MySQL常用的存储引擎是MyISAM和InnoDB。它们之间的区别如下:
MyISAM
查询速度快;
支持表级锁,在此期间不能对表执行其他操作;
支持全文检索;
支持数据压缩、自复制、查询缓存和数据加密;
不支持外键;
不支持事务,因此没有提交和回滚操作;
不支持群集数据库。
InnoDB
支持行级锁;
支持外键和外键约束强制执行;
支持事务,可以执行提交和回滚操作;
支持数据压缩、自复制、查询缓存和数据加密;
可以在群集环境中使用,但不完全支持。InnoDB表可以转换为NDB存储引擎,可以在集群环境下使用。
自学设计有哪些好用的网站?我要自学网,软件自学网,网易云教室,腾讯教室,中国大学MOOC这些都不错设计师们经常逛的网站有哪些?我是毛摄影。我已经设计了8年了。我曾经是一家4A广告公司的设计总监。现在我是一个自由设计师,摄影师和自媒体人。我来
既然Python是用C实现的,那为什么Python不能直接生成exe呢?C语言实际上是一种“旧”和“底层”语言。其执行效率仅次于汇编语言。它之所以古老是因为C语言出现得很早。尽管FORTRAN和COBOL比C语言出现得早,但现代主流操作系统
苹果电脑键盘option相当于普通键盘的哪个键?选项相当于ALT键。Finder中的option键功能:反向选择所有文件,快速搜索,快速关闭/最小化多个窗口,显示所有文件,清空废纸篓时不提示。2. 菜单栏中选项键的各种功能:快速更改音频设置
阿里云的虚拟主机怎么样?有用过的来说说?个人购买共享型的成本节约。建议企业购买独家性能保证。大数据类型的本地磁盘实例io,D1或I1,性能更好。只要选择正确的型号,就可以与物理机器进行充分的性能比较。云虚拟主机如何购买?买云虚拟主机需要注意
公司用什么邮箱好,哪个邮箱最好用?有没有好的推荐?我们的特别网易快闪邮件非常好!我们由人力资源部管理,并提前记录每位员工的电子邮件号码,以便永久记录。当您与后勤同事交接工作时,您可以输入您要发送的同事的姓名。它非常方便快捷,而且你不需要记住
英雄联盟中bottom、adc、射手的范围分别是什么?在opgg网站的英雄数据分析部分,英雄的位置分为五个位置:上单、大冶、中单、博通和辅助。底部位置未定义为shooter或ADC,但标记为bottom。在联盟中,指的是负责粮食经济的一方。
如何回收IIS应用程序池?1. 打开IIS管理器。有关如何打开IIS管理器的信息,请参阅打开IIS管理器(IIS 7)。2. 在连接窗格中,展开服务器节点,然后单击应用程序池。3. 在“应用程序池”页面上,选择一个应用程序池,然后单击“操作
自学了一年java,但是无法独立完成项目怎么办?作为一名it从业者,我也出版过Java编程书籍,所以让我来回答这个问题。首先,很多自学成才的Java编程人员在参与项目团队的初期会遇到各种各样的问题,很多人在面对开发任务的时候会无从下手。造成
如何让猫迅速喜欢你?[回头一看,天地都会大吃一惊在书海中,我有一种独特的思想,一种吟诗献身的神情。昨晚,老鼠一代的心都碎了。你可以看到世界是纵横交错的。
信息系统开发中常用的两种基本方法是什么方法和原型法?信息系统的开发方法主要有结构化方法、原型方法、企业系统规划方法、战略数据规划方法、信息工程方法和面向对象方法。1. 结构化方法结构化方法是一种由结构化系统分析和设计组成的信息系统开发方法。