ITPub博客

首页 > 数据库 > Oracle > [20240820]查看超长视图的定义.txt

[20240820]查看超长视图的定义.txt

原创 Oracle 作者:lfree 时间:2024-08-20 21:57:07 0 删除 编辑

[20240820]查看超长视图的定义.txt

--//被问及的问题,实际上以前也解答过,查看gv$session的完整定义.通过GV$DATABSE例子说明:

1.环境:
SYS@book> @pr
==============================
PORT_STRING                   : x86_64/Linux 2.4.xx
VERSION                       : 21.0.0.0.0
BANNER                        : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
BANNER_FULL                   : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
BANNER_LEGACY                 : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
CON_ID                        : 0
PL/SQL procedure successfully completed.

SYS@book> SELECT LENGTH (view_definition),view_name  FROM v$fixed_view_definition WHERE LENGTH (view_definition) >= 4000;
LENGTH(VIEW_DEFINITION) VIEW_NAME
----------------------- ------------------------------
                   4000 GV$SESSION
                   4000 GV$DATABASE
                   4000 GV$SQL_SHARED_CURSOR
                   4000 GV$RSRCMGRMETRIC
                   4000 GV$RSRCMGRMETRIC_HISTORY
                   4000 GV$RSRCPDBMETRIC
                   4000 GV$RSRCPDBMETRIC_HISTORY
                   4000 GV$STREAMS_CAPTURE
                   4000 V$RECOVERY_AREA_USAGE
                   4000 GV$ACTIVE_SESSION_HISTORY
                   4000 GV$ALL_ACTIVE_SESSION_HISTORY
                   4000 V$RMAN_STATUS
                   4000 GV$WLM_PCMETRIC
                   4000 V$RMAN_BACKUP_SUBJOB_DETAILS
                   4000 V$BACKUP_DATAFILE_SUMMARY
                   4000 V$BACKUP_CONTROLFILE_SUMMARY
                   4000 GV$IOSTAT_FILE
                   4000 GV$SQL_MONITOR
                   4000 GV$SQL_PLAN_MONITOR
                   4000 GV$ALL_SQL_MONITOR
                   4000 GV$ALL_SQL_PLAN_MONITOR
                   4000 GV$FALSE_PING
                   4000 GV$XSTREAM_CAPTURE
                   4000 GV$GOLDENGATE_CAPTURE
24 rows selected.

SYS@book> column con_id noprint
SYS@book> column VIEW_DEFINITION format a200 wrap
SYS@book> select * from V$FIXED_VIEW_DEFINITION where view_name='GV$DATABASE';

VIEW_NAME                      VIEW_DEFINITION
------------------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
GV$DATABASE                    select di.inst_id,di.didbi,di.didbn,to_date(di.dicts,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),to_number(di.dirls),to_date(di.dirlc,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),to_number(di.d
                               iprs),to_date(di.diprc,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(di.dimla,0,'NOARCHIVELOG',1,'ARCHIVELOG','MANUAL'),to_number(di.discn),to_number(di.difas),decode(bitand(di.diflg,256),256
                               ,'CREATED',decode(bitand(di.diflg,1024),1024,'STANDBY',decode(bitand(di.difl3,8),8,'FARSYNC',decode(bitand(di.diflg,32768),32768,'CLONE',decode(bitand(di.diflg,4096),4096,'BACKUP','CURRENT'))))),to_da
                               te(di.dicct,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),di.dicsq,to_number(di.dickp_scn),to_date(di.dickp_tim,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(bitand(di.diflg,4),4,'REQUIRED'
                               ,decode(di.diirs,0,'NOT ALLOWED','ALLOWED')),to_date(di.divts,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(di.didor,0,'MOUNTED',decode(di.didor,1,'READ WRITE',decode(di.didor,2,'READ ONLY',d
                               ecode(di.didor,3,'READ ONLY WITH APPLY','CLOSED BY SWITCHOVER')))),decode(bitand(di.diflg,65536),65536,'MAXIMUM PROTECTION',decode(bitand(di.diflg,128),128,'MAXIMUM AVAILABILITY',decode(bitand(di.difl
                               g,134217728),134217728,'RESYNCHRONIZATION',decode(bitand(di.diflg,8),8,'UNPROTECTED','MAXIMUM PERFORMANCE')))),decode(di.diprt,1,'MAXIMUM PROTECTION',2,'MAXIMUM AVAILABILITY',3,'RESYNCHRONIZATION',4,'
                               MAXIMUM PERFORMANCE',5,'UNPROTECTED',  'UNKNOWN'),decode(di.dirae,0,'DISABLED',1,'SEND',2,'RECEIVE',3,'ENABLED','UNKNOWN'),to_number(di.diacid),to_number(di.diacid),decode(bitand(di.difl2,32768),32768
                               ,'SNAPSHOT STANDBY',decode(bitand(di.diflg,33554432),33554432,'LOGICAL STANDBY',decode(bitand(di.diflg,1024),1024,'PHYSICAL STANDBY',decode(bitand(di.difl3,8),8,'FAR SYNC', 'PRIMARY')))),to_number(di.
                               diars),decode(bitand(difl2,1),1,'ENABLED','DISABLED'),decode(di.disos,0,'IMPOSSIBLE',1,'NOT ALLOWED',2,'SWITCHOVER LATENT',3,'SWITCHOVER PENDING',4,'TO PRIMARY',5,'TO STANDBY',6,'RECOVERY NEEDED',7,'S
                               ESSIONS ACTIVE',8,'PREPARING SWITCHOVER',9,'PREPARING DICTIONARY',10,'TO LOGICAL STANDBY',11,'FAILED DESTINATION',12,'RESOLVABLE GAP',13,'LOG SWITCH GAP',14,'UNRESOLVABLE GAP',NULL),decode(di.didgd,0,
                               'DISABLED','ENABLED'),decode(bitand(di.diflg,1048576),1048576,'ALL',decode(bitand(di.diflg,2097152),2097152,'STANDBY','NONE')),decode(bitand(diflg,1073741824),1073741824, 'YES',               decode(b
                               itand(diflg, 131072 + 262144 + 524288),0,                      decode(bitand(difl2,2 + 64), 0,                              decode(bitand(di.difl3, 512), 0,                                    'NO','IM
                               PLICIT'),                              'IMPLICIT'),                       'IMPLICIT')),decode(bitand(di.diflg,131072),131072,'YES','NO'),decode(bitand(di.diflg,262144),262144,'YES','NO'),decode(bitand
                               (di.diflg,268435456),268435456,'YES',         decode(bitand(di2flag, 16384), 16384,                'STANDBY NOLOGGING FOR DATA AVAILABILITY',         decode(bitand(di2flag, 32768), 32768,
                                   'STANDBY NOLOGGING FOR LOAD PERFORMANCE','NO'))),di.diplid, di.dipln, di2.di2rdi, di2.di2inc,to_number(di.dicur_scn),decode(bitand(di2.di2flag,1),1,'YES',               decode(di2.di2rsp_oldest,0,
                               'NO','RESTORE POINT ONLY')),decode(bitand(diflg,524288),524288,'YES','NO'),decode(bitand(difl2,2),2,'YES','NO'),di2.di2dbun, to_number(di2.di2actiscn), decode(di.difmod, 0, 'DISABLED',
                                             1, 'ZERO DATA LOSS',                        2, 'POTENTIAL DATA LOSS',                   3, 'OBSERVE-ONLY', ''),decode(di.difsts,0,'DISABLED',1,'BYSTANDER',2,'SYNCHRONIZED',3,'UNSYNCHRONI
                               ZED',4,'SUSPENDED',5,'STALLED',6,'LOADING DICTIONARY',7,'PRIMARY UNOBSERVED',8,'REINSTATE REQUIRED',10,'REINSTATE FAILED',11,'TARGET OVER LAG LIMIT',12,'TARGET UNDER LAG LIMIT',''), di.diftgt, di.dift
                               hs,decode(di.difopr,1,'YES',2,'NO',3,'UNKNOWN',''), di.difobs, decode(bitand(difl2, 16384), 16384, 'YES', 'NO'), di2.di2pdbun, decode(bitand(di.difl2,64), 64, 'YES', 'NO'), decode(di2.di2min_req_captu
--//看不到完整的定义.

--//1.使用10046跟踪.
alter system flush shared_pool;
@ 10046on 12
select * from gv$database;
@ 10046off
--//查看跟踪文件可以获得完整的语句.

--//2.查询v$sqlarea视图,通过v$fixed_view_definition.VIEW_DEFINITION的关键字查询.
SYS@book> select * from gv$database;
SYS@book> column sql_fulltext format a200 wrap
SYS@book> select sql_id,sql_fulltext from v$sqlarea where sql_text like 'select di.inst_id,di.didbi,di.didbn,to_date%';
SQL_ID        SQL_FULLTEXT
------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
at0ytbx91hbkx select di.inst_id,di.didbi,di.didbn,to_date(di.dicts,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),to_number(di.dirls),to_date(di.dirlc,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),to_number(di.d
              iprs),to_date(di.diprc,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(di.dimla,0,'NOARCHIVELOG',1,'ARCHIVELOG','MANUAL'),to_number(di.discn),to_number(di.difas),decode(bitand(di.diflg,256),256
              ,'CREATED',decode(bitand(di.diflg,1024),1024,'STANDBY',decode(bitand(di.difl3,8),8,'FARSYNC',decode(bitand(di.diflg,32768),32768,'CLONE',decode(bitand(di.diflg,4096),4096,'BACKUP','CURRENT'))))),to_da
              te(di.dicct,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),di.dicsq,to_number(di.dickp_scn),to_date(di.dickp_tim,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(bitand(di.diflg,4),4,'REQUIRED'
              ,decode(di.diirs,0,'NOT ALLOWED','ALLOWED')),to_date(di.divts,'MM/DD/RR HH24:MI:SS','NLS_CALENDAR=Gregorian'),decode(di.didor,0,'MOUNTED',decode(di.didor,1,'READ WRITE',decode(di.didor,2,'READ ONLY',d
              ecode(di.didor,3,'READ ONLY WITH APPLY','CLOSED BY SWITCHOVER')))),decode(bitand(di.diflg,65536),65536,'MAXIMUM PROTECTION',decode(bitand(di.diflg,128),128,'MAXIMUM AVAILABILITY',decode(bitand(di.difl
              g,134217728),134217728,'RESYNCHRONIZATION',decode(bitand(di.diflg,8),8,'UNPROTECTED','MAXIMUM PERFORMANCE')))),decode(di.diprt,1,'MAXIMUM PROTECTION',2,'MAXIMUM AVAILABILITY',3,'RESYNCHRONIZATION',4,'
              MAXIMUM PERFORMANCE',5,'UNPROTECTED',  'UNKNOWN'),decode(di.dirae,0,'DISABLED',1,'SEND',2,'RECEIVE',3,'ENABLED','UNKNOWN'),to_number(di.diacid),to_number(di.diacid),decode(bitand(di.difl2,32768),32768
              ,'SNAPSHOT STANDBY',decode(bitand(di.diflg,33554432),33554432,'LOGICAL STANDBY',decode(bitand(di.diflg,1024),1024,'PHYSICAL STANDBY',decode(bitand(di.difl3,8),8,'FAR SYNC', 'PRIMARY')))),to_number(di.
              diars),decode(bitand(difl2,1),1,'ENABLED','DISABLED'),decode(di.disos,0,'IMPOSSIBLE',1,'NOT ALLOWED',2,'SWITCHOVER LATENT',3,'SWITCHOVER PENDING',4,'TO PRIMARY',5,'TO STANDBY',6,'RECOVERY NEEDED',7,'S
              ESSIONS ACTIVE',8,'PREPARING SWITCHOVER',9,'PREPARING DICTIONARY',10,'TO LOGICAL STANDBY',11,'FAILED DESTINATION',12,'RESOLVABLE GAP',13,'LOG SWITCH GAP',14,'UNRESOLVABLE GAP',NULL),decode(di.didgd,0,
              'DISABLED','ENABLED'),decode(bitand(di.diflg,1048576),1048576,'ALL',decode(bitand(di.diflg,2097152),2097152,'STANDBY','NONE')),decode(bitand(diflg,1073741824),1073741824, 'YES',               decode(b
              itand(diflg, 131072 + 262144 + 524288),0,                      decode(bitand(difl2,2 + 64), 0,                              decode(bitand(di.difl3, 512), 0,                                    'NO','IM
              PLICIT'),                              'IMPLICIT'),                       'IMPLICIT')),decode(bitand(di.diflg,131072),131072,'YES','NO'),decode(bitand(di.diflg,262144),262144,'YES','NO'),decode(bitand
              (di.diflg,268435456),268435456,'YES',         decode(bitand(di2flag, 16384), 16384,                'STANDBY NOLOGGING FOR DATA AVAILABILITY',         decode(bitand(di2flag, 32768), 32768,
                  'STANDBY NOLOGGING FOR LOAD PERFORMANCE','NO'))),di.diplid, di.dipln, di2.di2rdi, di2.di2inc,to_number(di.dicur_scn),decode(bitand(di2.di2flag,1),1,'YES',               decode(di2.di2rsp_oldest,0,
              'NO','RESTORE POINT ONLY')),decode(bitand(diflg,524288),524288,'YES','NO'),decode(bitand(difl2,2),2,'YES','NO'),di2.di2dbun, to_number(di2.di2actiscn), decode(di.difmod, 0, 'DISABLED',
                            1, 'ZERO DATA LOSS',                        2, 'POTENTIAL DATA LOSS',                   3, 'OBSERVE-ONLY', ''),decode(di.difsts,0,'DISABLED',1,'BYSTANDER',2,'SYNCHRONIZED',3,'UNSYNCHRONI
              ZED',4,'SUSPENDED',5,'STALLED',6,'LOADING DICTIONARY',7,'PRIMARY UNOBSERVED',8,'REINSTATE REQUIRED',10,'REINSTATE FAILED',11,'TARGET OVER LAG LIMIT',12,'TARGET UNDER LAG LIMIT',''), di.diftgt, di.dift
              hs,decode(di.difopr,1,'YES',2,'NO',3,'UNKNOWN',''), di.difobs, decode(bitand(difl2, 16384), 16384, 'YES', 'NO'), di2.di2pdbun, decode(bitand(di.difl2,64), 64, 'YES', 'NO'), decode(di2.di2min_req_captu
              re_scn, 0, to_number(null),         di2.di2min_req_capture_scn), decode(bitand(di.difl3,2), 2, 'YES', 'NO'), di.con_id, di.diprct, to_number(sys_context('userenv','con_dbid')), decode(bitand(di2.di2fl
              g, 32768), 32768, 'YES', 'NO'), decode(bitand(di.difl3, 512), 512, 'YES', 'NO'), decode(bitand(di.difl3,4096),4096,'ENABLED','DISABLED') from x$kccdi di, x$kccdi2 di2
--//如果运气好很快可以查询到完整定义.
--//不行alter system flush shared_pool;,再试,生产系统也许不建议这样操作,可以在测试环境或者dg上尝试.

3.还有1个方法扫描libserverNN.a文件.
--//NN对应版本号。注:21c没有后面的NN.

$ locate --regex "libserver*.a"
/u01/app/oracle/product/21.0.0/dbhome_1/lib/libserver.a

$ strings /u01/app/oracle/product/21.0.0/dbhome_1/lib/libserver.a | grep "select di.inst_id,di.didbi,di.didbn,to_date"
--//oracle 写在这个文件里面的代码就是完整的一行,太长了,我做了格式化处理.
SELECT di.inst_id
      ,di.didbi
      ,di.didbn
      ,TO_DATE (di.dicts, 'MM/DD/RR HH24:MI:SS', 'NLS_CALENDAR=Gregorian')
      ,TO_NUMBER (di.dirls)
      ,TO_DATE (di.dirlc, 'MM/DD/RR HH24:MI:SS', 'NLS_CALENDAR=Gregorian')
      ,TO_NUMBER (di.diprs)
      ,TO_DATE (di.diprc, 'MM/DD/RR HH24:MI:SS', 'NLS_CALENDAR=Gregorian')
      ,DECODE (di.dimla,  0, 'NOARCHIVELOG',  1, 'ARCHIVELOG',  'MANUAL')
      ,TO_NUMBER (di.discn)
      ,TO_NUMBER (di.difas)
      ,DECODE
       (
          BITAND (di.diflg, 256)
         ,256, 'CREATED'
         ,DECODE
          (
             BITAND (di.diflg, 1024)
            ,1024, 'STANDBY'
            ,DECODE
             (
                BITAND (di.difl3, 8)
               ,8, 'FARSYNC'
               ,DECODE
                (
                   BITAND (di.diflg, 32768)
                  ,32768, 'CLONE'
                  ,DECODE
                   (
                      BITAND (di.diflg, 4096)
                     ,4096, 'BACKUP'
                     ,'CURRENT'
                   )
                )
             )
          )
       )
      ,TO_DATE (di.dicct, 'MM/DD/RR HH24:MI:SS', 'NLS_CALENDAR=Gregorian')
      ,di.dicsq
      ,TO_NUMBER (di.dickp_scn)
      ,TO_DATE
       (
          di.dickp_tim
         ,'MM/DD/RR HH24:MI:SS'
         ,'NLS_CALENDAR=Gregorian'
       )
      ,DECODE
       (
          BITAND (di.diflg, 4)
         ,4, 'REQUIRED'
         ,DECODE (di.diirs, 0, 'NOT ALLOWED', 'ALLOWED')
       )
      ,TO_DATE (di.divts, 'MM/DD/RR HH24:MI:SS', 'NLS_CALENDAR=Gregorian')
      ,DECODE
       (
          di.didor
         ,0, 'MOUNTED'
         ,DECODE
          (
             di.didor
            ,1, 'READ WRITE'
            ,DECODE
             (
                di.didor
               ,2, 'READ ONLY'
               ,DECODE
                (
                   di.didor
                  ,3, 'READ ONLY WITH APPLY'
                  ,'CLOSED BY SWITCHOVER'
                )
             )
          )
       )
      ,DECODE
       (
          BITAND (di.diflg, 65536)
         ,65536, 'MAXIMUM PROTECTION'
         ,DECODE
          (
             BITAND (di.diflg, 128)
            ,128, 'MAXIMUM AVAILABILITY'
            ,DECODE
             (
                BITAND (di.diflg, 134217728)
               ,134217728, 'RESYNCHRONIZATION'
               ,DECODE
                (
                   BITAND (di.diflg, 8)
                  ,8, 'UNPROTECTED'
                  ,'MAXIMUM PERFORMANCE'
                )
             )
          )
       )
      ,DECODE
       (
          di.diprt
         ,1, 'MAXIMUM PROTECTION'
         ,2, 'MAXIMUM AVAILABILITY'
         ,3, 'RESYNCHRONIZATION'
         ,4, 'MAXIMUM PERFORMANCE'
         ,5, 'UNPROTECTED'
         ,'UNKNOWN'
       )
      ,DECODE
       (
          di.dirae
         ,0, 'DISABLED'
         ,1, 'SEND'
         ,2, 'RECEIVE'
         ,3, 'ENABLED'
         ,'UNKNOWN'
       )
      ,TO_NUMBER (di.diacid)
      ,TO_NUMBER (di.diacid)
      ,DECODE
       (
          BITAND (di.difl2, 32768)
         ,32768, 'SNAPSHOT STANDBY'
         ,DECODE
          (
             BITAND (di.diflg, 33554432)
            ,33554432, 'LOGICAL STANDBY'
            ,DECODE
             (
                BITAND (di.diflg, 1024)
               ,1024, 'PHYSICAL STANDBY'
               ,DECODE (BITAND (di.difl3, 8), 8, 'FAR SYNC', 'PRIMARY')
             )
          )
       )
      ,TO_NUMBER (di.diars)
      ,DECODE (BITAND (difl2, 1), 1, 'ENABLED', 'DISABLED')
      ,DECODE
       (
          di.disos
         ,0, 'IMPOSSIBLE'
         ,1, 'NOT ALLOWED'
         ,2, 'SWITCHOVER LATENT'
         ,3, 'SWITCHOVER PENDING'
         ,4, 'TO PRIMARY'
         ,5, 'TO STANDBY'
         ,6, 'RECOVERY NEEDED'
         ,7, 'SESSIONS ACTIVE'
         ,8, 'PREPARING SWITCHOVER'
         ,9, 'PREPARING DICTIONARY'
         ,10, 'TO LOGICAL STANDBY'
         ,11, 'FAILED DESTINATION'
         ,12, 'RESOLVABLE GAP'
         ,13, 'LOG SWITCH GAP'
         ,14, 'UNRESOLVABLE GAP'
         ,NULL
       )
      ,DECODE (di.didgd, 0, 'DISABLED', 'ENABLED')
      ,DECODE
       (
          BITAND (di.diflg, 1048576)
         ,1048576, 'ALL'
         ,DECODE (BITAND (di.diflg, 2097152), 2097152, 'STANDBY', 'NONE')
       )
      ,DECODE
       (
          BITAND (diflg, 1073741824)
         ,1073741824, 'YES'
         ,DECODE
          (
             BITAND (diflg, 131072 + 262144 + 524288)
            ,0, DECODE
                (
                   BITAND (difl2, 2 + 64)
                  ,0, DECODE (BITAND (di.difl3, 512), 0, 'NO', 'IMPLICIT')
                  ,'IMPLICIT'
                )
            ,'IMPLICIT'
          )
       )
      ,DECODE (BITAND (di.diflg, 131072), 131072, 'YES', 'NO')
      ,DECODE (BITAND (di.diflg, 262144), 262144, 'YES', 'NO')
      ,DECODE
       (
          BITAND (di.diflg, 268435456)
         ,268435456, 'YES'
         ,DECODE
          (
             BITAND (di2flag, 16384)
            ,16384, 'STANDBY NOLOGGING FOR DATA AVAILABILITY'
            ,DECODE
             (
                BITAND (di2flag, 32768)
               ,32768, 'STANDBY NOLOGGING FOR LOAD PERFORMANCE'
               ,'NO'
             )
          )
       )
      ,di.diplid
      ,di.dipln
      ,di2.di2rdi
      ,di2.di2inc
      ,TO_NUMBER (di.dicur_scn)
      ,DECODE
       (
          BITAND (di2.di2flag, 1)
         ,1, 'YES'
         ,DECODE (di2.di2rsp_oldest, 0, 'NO', 'RESTORE POINT ONLY')
       )
      ,DECODE (BITAND (diflg, 524288), 524288, 'YES', 'NO')
      ,DECODE (BITAND (difl2, 2), 2, 'YES', 'NO')
      ,di2.di2dbun
      ,TO_NUMBER (di2.di2actiscn)
      ,DECODE
       (
          di.difmod
         ,0, 'DISABLED'
         ,1, 'ZERO DATA LOSS'
         ,2, 'POTENTIAL DATA LOSS'
         ,3, 'OBSERVE-ONLY'
         ,''
       )
      ,DECODE
       (
          di.difsts
         ,0, 'DISABLED'
         ,1, 'BYSTANDER'
         ,2, 'SYNCHRONIZED'
         ,3, 'UNSYNCHRONIZED'
         ,4, 'SUSPENDED'
         ,5, 'STALLED'
         ,6, 'LOADING DICTIONARY'
         ,7, 'PRIMARY UNOBSERVED'
         ,8, 'REINSTATE REQUIRED'
         ,10, 'REINSTATE FAILED'
         ,11, 'TARGET OVER LAG LIMIT'
         ,12, 'TARGET UNDER LAG LIMIT'
         ,''
       )
      ,di.diftgt
      ,di.difths
      ,DECODE (di.difopr,  1, 'YES',  2, 'NO',  3, 'UNKNOWN',  '')
      ,di.difobs
      ,DECODE (BITAND (difl2, 16384), 16384, 'YES', 'NO')
      ,di2.di2pdbun
      ,DECODE (BITAND (di.difl2, 64), 64, 'YES', 'NO')
      ,DECODE
       (
          di2.di2min_req_capture_scn
         ,0, TO_NUMBER (NULL)
         ,di2.di2min_req_capture_scn
       )
      ,DECODE (BITAND (di.difl3, 2), 2, 'YES', 'NO')
      ,di.con_id
      ,di.diprct
      ,TO_NUMBER (SYS_CONTEXT ('userenv', 'con_dbid'))
      ,DECODE (BITAND (di2.di2flg, 32768), 32768, 'YES', 'NO')
      ,DECODE (BITAND (di.difl3, 512), 512, 'YES', 'NO')
      ,DECODE (BITAND (di.difl3, 4096), 4096, 'ENABLED', 'DISABLED')
  FROM x$kccdi di, x$kccdi2 di2


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-3025526/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7970358