起因与前置环境思考与解决方案 
  第一个理解与方法——分块分页第二个理解与方法——拆分子查询第三个理解与方法——拆分子查询+分块分页原理浅析与总结 
  回表和索引覆盖的浅解 
    原理简单说明MYSQL中回表的实现总结与收获起因与前置环境目前在职的公司是已经运转挺久的电商类型公司,这个过程中其实因为版本不断迭代和很多历史问题。会出现一些慢sql的情况。而且很多时候其实本来会感觉是不应该出现            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-17 08:51:51
                            
                                154阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Flashback是ORACLE9i开始新特性,但9I只支持FlashQuery,即根据回滚段读取表某个时间点的数据。到了10G,Oracle通过Recyle bin(回改站)与FlashArea(闪回区)实现快速恢复删除表((Flashback Table)和数据库时间点恢复((Flashback Database)(不需要全备份哦)。本文只记录了Flashback Table方法与特性。Ora            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-03-13 17:25:38
                            
                                5273阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言:MySQL的性能是大家在使用时十分关心的问题,比如在高并发访问时,并且有慢sql存在的情况下,MySQL的性能会明显下降,这会导致数据库响应时间变慢,甚至导致数据库宕机。那么为了避免Mysql性能问题,比较常用的方式创建适当的索引,提升sql语句的执行效率。而本文简单介绍一下和索引有关的回表,从实际案例出发,讲讲什么是回表,如何避免回表,如何减少回表。实际案例:前置仓产能动态ETA时效降级需            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-08 16:11:13
                            
                                62阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            MySQL优化一1. 索引优化索引的分类分类角度索引名称数据结构B+树,Hash索引,B-Tree等存储层面聚簇索引,非聚簇索引逻辑层面主键索引,普通索引,复合索引(MySQL 组合索引和联合索引和复合索引都是一个东西),唯一索引,空间索引等回表假设我们执行一条查询语句select * from person where ID = 6,因为直接使用的是主键ID查询,所以就会用主键索引,由于主键索引            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-04 06:38:39
                            
                                53阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            单表分页优化思路:--创建测试表:SQL> create table t_test as select * from dba_objects; Table created.如,下面的sql (没有过滤条件,只有排序),要将查询结果分页显示,每页显示10条,如:select * from t_test order by object_id;例子:1、分页查询sql语句,如下(通常会采            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2018-08-08 17:30:36
                            
                                4807阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                             
         
            
            
            
             普通用户误删表,没有清空回收站的情况 ,可以从闪回里恢复表
 
dba身份的用户没有闪回
===============================================
--闪回表
SQL> conn scott
Enter password:
Connected.
SQL> select * from dd;
 
D            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-09-08 23:13:02
                            
                                585阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.查看oracle回收站并且做闪回操作SQL>select * from dba_recyclebinSQL>flashback table emp01 to before drop;Flashback complete.2.做闪回操作并且对表重新命名SQL>flashback table “BIN$JLbmbfKW6YPgUKjAtQYUKQ==$0" to before d            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-04-09 09:58:18
                            
                                1271阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            --索引回表读(TABLE ACCESS BY INDEX ROWID)的例子drop table t purge;create table t as select * from dba_objects;create index idx1_object_id on t(object_id);--试验1set autotrace traceonlyset linesize 1000set timin            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2014-06-03 19:51:10
                            
                                877阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            --- 说明闪回数据库--- 使用闪回表将表内容还原到过去的特定时间点--- 从删除表中进行恢复--- 使用闪回查询查看截止到任一时间点的数据库内容--- 使用闪回版本查询查看某一行在一段时间内的各个版本--- 使用闪回事务查询查看事务处理历史记录或行会还原表及其关联对象(如索引、约束条件、触发器等)中的数据。所谓闪回表,就是将表里的数据回退到历史的某个时间点,比如回退到用户误删除数据之前的时间点            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-17 14:37:40
                            
                                58阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            源码版本5.7.29主库端的回调函数比较多,比较复杂一、回调函数:repl_semi_binlog_dump_start调用线程:dump线程#0 repl_semi_binlog_dump_start (param=0x7fffe8150ba0, log_file=0x7fffe81520c0 "", log_pos=4) at /home/mysql/soft/percona-server-5            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-13 19:29:14
                            
                                57阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.闪回表    闪回表,实际上是将表中的数据快速恢复到过去的一个是焦点或者系统改变号SCN上。实现表的闪回,需要使用到与撤销表空间相关的undo信息,通过show parameter undo命令可以了解这些信息。    用户对表数据的修改操作,都记录在撤销表空间中,这为表的闪回提供了数据恢复的基础。例如,某个修改操作在提交后被记录在撤            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-19 11:08:08
                            
                                101阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            地址:oracle回滚段和回滚表空间作者:人生笑笑昨晚因为做了一个大批量的删除,用的delete。大约用了6个小时,导致了回滚段自动扩展到将近30个G。(以后记着,做大批量删除的时候,一定要用脚本实现,分批量提交事务。那样就不会占用太多的UNDO表空间了!) 从网上搜了一个普遍的方法,更换...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2012-06-08 15:34:00
                            
                                1058阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            Oracle 10g开始提供了类似windows系统的回收站功能,用户在删除表的时候会不是直接删除,而是移动到回收站中,如果需要从回收站中取回原来的表,可以使用闪回删除表的特性,迅速的找回被删除的表,而不需要从备份中导入原有的表!但这个回收站功能也是有前提的,不是在任何情况下都可以使用闪回删除表特性,总结下,在10g中,下面几种场景表不能flashback删除,至于11g是否有改进,感兴趣的朋友可            
                
                    
                        
                                                            
                                                                        
                                                                推荐
                                                                                        原创
                                                                                    
                            2012-03-14 13:45:35
                            
                                3031阅读
                            
                                                        
                                点赞
                            
                                                                                    
                                3评论
                            
                                                 
                 
                
                             
         
            
            
            
            数据库突然,把磁盘空间占满,经常是由于回滚段空间导致,所以需要清理回滚段step 1、查看正在使用的回滚段表空间SELECT T.tablespace_name FROM dba_tablespaces t WHERE t.contents = 'UNDO';step 2、查看回滚段表空间文件路径这里查看路径后以便 后面创建新的回滚段空间SELECT t.file_name FRO...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-05-24 10:20:03
                            
                                535阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            回滚表空间是一个特殊的表空间,回滚表空间只能用于存放回滚段。不能在回滚表空间创建其他数据库对象(如表、索引)。每个数据库可有零个或者多个回滚表空间。但是,只能有一个活动的回滚表空间。SYSTEM回滚段是特殊的回滚段,它存在于SYSTEM表空间,SYSTEM回滚段用于回滚系统事务。非系统事务只能交由非系统回滚段来处理。因此,除了系统回滚表空间外,每个数据库应该另外创建一个回滚表空间。...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-27 17:54:08
                            
                                2067阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Oracle表连接类型:一、嵌套查询 嵌套循环的算法:在嵌套循环连接中,有驱动顺序,驱动表返回多少条记录,被驱动表就访问多少次,嵌套循环连接中无须排序。 嵌套循环可以快速返回两表关联的前几条数据,如果SQL中添加了HINT:FIRST_ROWS,在两表关联的时候,优化器更倾向于嵌套循环。 在嵌套循环连接,要特别注意驱动表的顺序,小的结果集先访问,大的结果集后访问,才能保证被驱动表的访问次数降到最低            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-09 06:28:55
                            
                                163阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            优化规则: -- 优化前SQL SELECT 各种字段 FROM `table_name` WHERE 各种条件 LIMIT 0,10; > -- 优化后SQL SELECT 各种字段 FROM `table_name` main_tale RIGHT JOIN ( SELECT 子查询只查主键 F ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-09-29 17:08:00
                            
                                225阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            20.读书笔记收获不止Oracle之 索引回表和优化1.  索引回表情况看下索引回表。drop table t purge;SQL> create table t as select * from dba_objects;SQL> create index inx1_object_id on t (object_id);SQL> set autotrace traceonl            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-08-16 22:49:36
                            
                                95阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、前言
    目前所有使用Oracle作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。
     当然在Oracle中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一 张或者某几张表关联之后得到的结果集            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2011-10-05 21:40:12
                            
                                393阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 对返回的行无任何限定条件,即没有where 子句2. 未对数据表与任何索引主列相对应            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-13 18:09:17
                            
                                1254阅读
                            
                                                        
                                点赞