Table recovery with rman in Database 12c

One of the new features of rman in Oracle Database 12c is the topic of this short document. For many years since we first saw rman around 1994 (?) it was touted as the "weakest solution" for object-based recovery. We went through the lengthy and labour-intensive process of creating an additional instance destined to be the target of a restore for the tablespace(s) containing the missing table followed by an export/import back into the table's original location. From my experience with this feature so far, I have discovered the following requirements for being able to pull off table-level recovery:
- An rman backup containing the missing table must exist; it cannot rely on a backup from before the table was created alongside the application of archived redo.
- The table cannot belong to SYS or SYSTEM and cannot reside in SYSTEM or SYSAUX.
recover SCHEMA.OBJECT NAME until SCN|TIME auxiliary destination 'LOCATION FOR TEMP INSTANCE';What could be simpler? As of yet I have not experienced any issues with this feature.
oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Wed Sep 18 11:35:23 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2293880 bytes Variable Size 595595144 bytes Database Buffers 234881024 bytes Redo Buffers 2334720 bytes Database mounted. Database opened. SQL> create table abbey.test1 tablespace users as select * from sys.obj$; Table created. SQL> select current_scn from v$database; CURRENT_SCN ----------- 1784525 SQL> select current_scn from v$database CURRENT_SCN ----------- 1784531 SQL> select current_scn from v$database; CURRENT_SCN ----------- 1784532 SQL> exit Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> rman target / Recovery Manager: Release 12.1.0.1.0 - Production on Wed Sep 18 11:37:05 2013 Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved. connected to target database: LEARNING (DBID=1740057105) RMAN> backup database; Starting backup at 18-SEP-13 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=52 device type=DISK channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=/u01/oradata/learning/system01.dbf input datafile file number=00003 name=/u01/oradata/learning/sysaux01.dbf input datafile file number=00002 name=/u01/oradata/learning/example01.dbf input datafile file number=00004 name=/u01/oradata/learning/undotbs01.dbf input datafile file number=00006 name=/u01/oradata/learning/users01.dbf channel ORA_DISK_1: starting piece 1 at 18-SEP-13 channel ORA_DISK_1: finished piece 1 at 18-SEP-13 piece handle=/u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T113710_93ml570n_.bkp tag=TAG20130918T113710 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:35 channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set including current control file in backup set including current SPFILE in backup set channel ORA_DISK_1: starting piece 1 at 18-SEP-13 channel ORA_DISK_1: finished piece 1 at 18-SEP-13 piece handle=/u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_ncsnf_TAG20130918T113710_93ml6c2k_.bkp tag=TAG20130918T113710 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 18-SEP-13 RMAN> list backup; List of Backup Sets =================== BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 1 Full 393.27M DISK 00:01:09 18-SEP-13 BP Key: 1 Status: AVAILABLE Compressed: YES Tag: TAG20130918T002450 Piece Name: /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T002450_93lbrm3n_.bkp List of Datafiles in backup set 1 File LV Type Ckp SCN Ckp Time Name ---- -- ---- ---------- --------- ---- 1 Full 1782550 18-SEP-13 /u01/oradata/learning/system01.dbf 2 Full 1782550 18-SEP-13 /u01/oradata/learning/example01.dbf 3 Full 1782550 18-SEP-13 /u01/oradata/learning/sysaux01.dbf 4 Full 1782550 18-SEP-13 /u01/oradata/learning/undotbs01.dbf 6 Full 1782550 18-SEP-13 /u01/oradata/learning/users01.dbf BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 2 Full 1.03M DISK 00:00:01 18-SEP-13 BP Key: 2 Status: AVAILABLE Compressed: YES Tag: TAG20130918T002450 Piece Name: /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_ncsnf_TAG20130918T002450_93lbtz8y_.bkp SPFILE Included: Modification time: 18-SEP-13 SPFILE db_unique_name: LEARNING Control File Included: Ckp SCN: 1782747 Ckp time: 18-SEP-13 BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 3 Full 1.31G DISK 00:00:33 18-SEP-13 BP Key: 3 Status: AVAILABLE Compressed: NO Tag: TAG20130918T113710 Piece Name: /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T113710_93ml570n_.bkp List of Datafiles in backup set 3 File LV Type Ckp SCN Ckp Time Name ---- -- ---- ---------- --------- ---- 1 Full 1784559 18-SEP-13 /u01/oradata/learning/system01.dbf 2 Full 1784559 18-SEP-13 /u01/oradata/learning/example01.dbf 3 Full 1784559 18-SEP-13 /u01/oradata/learning/sysaux01.dbf 4 Full 1784559 18-SEP-13 /u01/oradata/learning/undotbs01.dbf 6 Full 1784559 18-SEP-13 /u01/oradata/learning/users01.dbf BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 4 Full 9.64M DISK 00:00:01 18-SEP-13 BP Key: 4 Status: AVAILABLE Compressed: NO Tag: TAG20130918T113710 Piece Name: /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_ncsnf_TAG20130918T113710_93ml6c2k_.bkp SPFILE Included: Modification time: 18-SEP-13 SPFILE db_unique_name: LEARNING Control File Included: Ckp SCN: 1784572 Ckp time: 18-SEP-13 RMAN> exit Recovery Manager complete. oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> rman target / Recovery Manager: Release 12.1.0.1.0 - Production on Wed Sep 18 11:39:06 2013 Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved. connected to target database: LEARNING (DBID=1740057105) RMAN> exit Recovery Manager complete. oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> !sqlp sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Wed Sep 18 11:39:16 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL> drop table abbey.test1; Table dropped. SQL> exit Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> rman target / Recovery Manager: Release 12.1.0.1.0 - Production on Wed Sep 18 11:39:25 2013 Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved. connected to target database: LEARNING (DBID=1740057105) RMAN> @trec.cmd RMAN> recover table abbey.test1 until scn 1784532 2> auxiliary destination '/home/oracle/tpitr'; Starting recover at 18-SEP-13 using target database control file instead of recovery catalog current log archived allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=52 device type=DISK RMAN-05026: WARNING: presuming following set of tablespaces applies to specified Point-in-Time List of tablespaces expected to have UNDO segments Tablespace SYSTEM Tablespace UNDOTBS1 Creating automatic instance, with SID='bubg' initialization parameters used for automatic instance: db_name=LEARNING db_unique_name=bubg_pitr_LEARNING compatible=12.1.0.0.0 db_block_size=8192 db_files=200 sga_target=1G processes=80 diagnostic_dest=/u01/app/oracle db_create_file_dest=/home/oracle/tpitr log_archive_dest_1='location=/home/oracle/tpitr' #No auxiliary parameter file used starting up automatic instance LEARNING Oracle instance started Total System Global Area 1068937216 bytes Fixed Size 2296576 bytes Variable Size 281019648 bytes Database Buffers 780140544 bytes Redo Buffers 5480448 bytes Automatic instance created contents of Memory Script: { # set requested point in time set until scn 1784532; # restore the controlfile restore clone controlfile; # mount the controlfile sql clone 'alter database mount clone database'; # archive current online log sql 'alter system archive log current'; } executing Memory Script executing command: SET until clause Starting restore at 18-SEP-13 allocated channel: ORA_AUX_DISK_1 channel ORA_AUX_DISK_1: SID=21 device type=DISK channel ORA_AUX_DISK_1: starting datafile backup set restore channel ORA_AUX_DISK_1: restoring control file channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_ncsnf_TAG20130918T002450_93lbtz8y_.bkp channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_ncsnf_TAG20130918T002450_93lbtz8y_.bkp tag=TAG20130918T002450 channel ORA_AUX_DISK_1: restored backup piece 1 channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:02 output file name=/home/oracle/tpitr/LEARNING/controlfile/o1_mf_93mlcq52_.ctl Finished restore at 18-SEP-13 sql statement: alter database mount clone database sql statement: alter system archive log current contents of Memory Script: { # set requested point in time set until scn 1784532; # set destinations for recovery set and auxiliary set datafiles set newname for clone datafile 1 to new; set newname for clone datafile 4 to new; set newname for clone datafile 3 to new; set newname for clone tempfile 1 to new; # switch all tempfiles switch clone tempfile all; # restore the tablespaces in the recovery set and the auxiliary set restore clone datafile 1, 4, 3; switch clone datafile all; } executing Memory Script executing command: SET until clause executing command: SET NEWNAME executing command: SET NEWNAME executing command: SET NEWNAME executing command: SET NEWNAME renamed tempfile 1 to /home/oracle/tpitr/LEARNING/datafile/o1_mf_temp_%u_.tmp in control file Starting restore at 18-SEP-13 using channel ORA_AUX_DISK_1 channel ORA_AUX_DISK_1: starting datafile backup set restore channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set channel ORA_AUX_DISK_1: restoring datafile 00001 to /home/oracle/tpitr/LEARNING/datafile/o1_mf_system_%u_.dbf channel ORA_AUX_DISK_1: restoring datafile 00004 to /home/oracle/tpitr/LEARNING/datafile/o1_mf_undotbs1_%u_.dbf channel ORA_AUX_DISK_1: restoring datafile 00003 to /home/oracle/tpitr/LEARNING/datafile/o1_mf_sysaux_%u_.dbf channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T002450_93lbrm3n_.bkp channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T002450_93lbrm3n_.bkp tag=TAG20130918T002450 channel ORA_AUX_DISK_1: restored backup piece 1 channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:25 Finished restore at 18-SEP-13 datafile 1 switched to datafile copy input datafile copy RECID=4 STAMP=826458132 file name=/home/oracle/tpitr/LEARNING/datafile/o1_mf_system_93mlcyp6_.dbf datafile 4 switched to datafile copy input datafile copy RECID=5 STAMP=826458132 file name=/home/oracle/tpitr/LEARNING/datafile/o1_mf_undotbs1_93mlcyq8_.dbf datafile 3 switched to datafile copy input datafile copy RECID=6 STAMP=826458132 file name=/home/oracle/tpitr/LEARNING/datafile/o1_mf_sysaux_93mlcypd_.dbf contents of Memory Script: { # set requested point in time set until scn 1784532; # online the datafiles restored or switched sql clone "alter database datafile 1 online"; sql clone "alter database datafile 4 online"; sql clone "alter database datafile 3 online"; # recover and open database read only recover clone database tablespace "SYSTEM", "UNDOTBS1", "SYSAUX"; sql clone 'alter database open read only'; } executing Memory Script executing command: SET until clause sql statement: alter database datafile 1 online sql statement: alter database datafile 4 online sql statement: alter database datafile 3 online Starting recover at 18-SEP-13 using channel ORA_AUX_DISK_1 starting media recovery archived log for thread 1 with sequence 6 is already on disk as file /u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_6_93lbyxm2_.arc archived log for thread 1 with sequence 7 is already on disk as file /u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_7_93ml9njf_.arc archived log file name=/u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_6_93lbyxm2_.arc thread=1 sequence=6 archived log file name=/u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_7_93ml9njf_.arc thread=1 sequence=7 media recovery complete, elapsed time: 00:00:01 Finished recover at 18-SEP-13 sql statement: alter database open read only contents of Memory Script: { sql clone "create spfile from memory"; shutdown clone immediate; startup clone nomount; sql clone "alter system set control_files = ''/home/oracle/tpitr/LEARNING/controlfile/o1_mf_93mlcq52_.ctl'' comment= ''RMAN set'' scope=spfile"; shutdown clone immediate; startup clone nomount; # mount database sql clone 'alter database mount clone database'; } executing Memory Script sql statement: create spfile from memory database closed database dismounted Oracle instance shut down connected to auxiliary database (not started) Oracle instance started Total System Global Area 1068937216 bytes Fixed Size 2296576 bytes Variable Size 285213952 bytes Database Buffers 775946240 bytes Redo Buffers 5480448 bytes sql statement: alter system set control_files = ''/home/oracle/tpitr/LEARNING/controlfile/o1_mf_93mlcq52_.ctl'' comment= ''RMAN set'' scope=spfile Oracle instance shut down connected to auxiliary database (not started) Oracle instance started Total System Global Area 1068937216 bytes Fixed Size 2296576 bytes Variable Size 285213952 bytes Database Buffers 775946240 bytes Redo Buffers 5480448 bytes sql statement: alter database mount clone database contents of Memory Script: { # set requested point in time set until scn 1784532; # set destinations for recovery set and auxiliary set datafiles set newname for datafile 6 to new; # restore the tablespaces in the recovery set and the auxiliary set restore clone datafile 6; switch clone datafile all; } executing Memory Script executing command: SET until clause executing command: SET NEWNAME Starting restore at 18-SEP-13 allocated channel: ORA_AUX_DISK_1 channel ORA_AUX_DISK_1: SID=20 device type=DISK channel ORA_AUX_DISK_1: starting datafile backup set restore channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set channel ORA_AUX_DISK_1: restoring datafile 00006 to /home/oracle/tpitr/BUBG_PITR_LEARNING/datafile/o1_mf_users_%u_.dbf channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T002450_93lbrm3n_.bkp channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/LEARNING/backupset/2013_09_18/o1_mf_nnndf_TAG20130918T002450_93lbrm3n_.bkp tag=TAG20130918T002450 channel ORA_AUX_DISK_1: restored backup piece 1 channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:03 Finished restore at 18-SEP-13 datafile 6 switched to datafile copy input datafile copy RECID=8 STAMP=826458248 file name=/home/oracle/tpitr/BUBG_PITR_LEARNING/datafile/o1_mf_users_93mll5jc_.dbf contents of Memory Script: { # set requested point in time set until scn 1784532; # online the datafiles restored or switched sql clone "alter database datafile 6 online"; # recover and open resetlogs recover clone database tablespace "USERS", "SYSTEM", "UNDOTBS1", "SYSAUX" delete archivelog; alter clone database open resetlogs; } executing Memory Script executing command: SET until clause sql statement: alter database datafile 6 online Starting recover at 18-SEP-13 using channel ORA_AUX_DISK_1 starting media recovery archived log for thread 1 with sequence 6 is already on disk as file /u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_6_93lbyxm2_.arc archived log for thread 1 with sequence 7 is already on disk as file /u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_7_93ml9njf_.arc archived log file name=/u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_6_93lbyxm2_.arc thread=1 sequence=6 archived log file name=/u01/app/oracle/fast_recovery_area/LEARNING/archivelog/2013_09_18/o1_mf_1_7_93ml9njf_.arc thread=1 sequence=7 media recovery complete, elapsed time: 00:00:00 Finished recover at 18-SEP-13 database opened contents of Memory Script: { # create directory for datapump import sql "create or replace directory TSPITR_DIROBJ_DPDIR as '' /home/oracle/tpitr''"; # create directory for datapump export sql clone "create or replace directory TSPITR_DIROBJ_DPDIR as '' /home/oracle/tpitr''"; } executing Memory Script sql statement: create or replace directory TSPITR_DIROBJ_DPDIR as ''/home/oracle/tpitr'' sql statement: create or replace directory TSPITR_DIROBJ_DPDIR as ''/home/oracle/tpitr'' Performing export of tables... EXPDP> Starting "SYS"."TSPITR_EXP_bubg_Atvi": EXPDP> Estimate in progress using BLOCKS method... EXPDP> Processing object type TABLE_EXPORT/TABLE/TABLE_DATA EXPDP> Total estimation using BLOCKS method: 12 MB EXPDP> Processing object type TABLE_EXPORT/TABLE/TABLE EXPDP> Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS EXPDP> Processing object type TABLE_EXPORT/TABLE/STATISTICS/MARKER EXPDP> ORA-39127: unexpected error from call to export_string :=SYS.DBMS_TRANSFORM_EXIMP.INSTANCE_INFO_EXP('AQ$_ORDERS_QUEUETABLE_S','IX',1,1,'12.01.00.00.00',newblock) ORA-00376: file 2 cannot be read at this time ORA-01110: data file 2: '/u01/oradata/learning/example01.dbf' ORA-06512: at "SYS.DBMS_TRANSFORM_EXIMP", line 197 ORA-06512: at line 1 ORA-06512: at "SYS.DBMS_METADATA", line 9901 ORA-39127: unexpected error from call to export_string :=SYS.DBMS_TRANSFORM_EXIMP.INSTANCE_INFO_EXP('AQ$_STREAMS_QUEUE_TABLE_S','IX',1,1,'12.01.00.00.00',newblock) ORA-00376: file 2 cannot be read at this time ORA-01110: data file 2: '/u01/oradata/learning/example01.dbf' ORA-06512: at "SYS.DBMS_TRANSFORM_EXIMP", line 197 ORA-06512: at line 1 ORA-06512: at "SYS.DBMS_METADATA", line 9901 EXPDP> . . exported "ABBEY"."TEST1" 9.612 MB 91441 rows EXPDP> Master table "SYS"."TSPITR_EXP_bubg_Atvi" successfully loaded/unloaded EXPDP> ****************************************************************************** EXPDP> Dump file set for SYS.TSPITR_EXP_bubg_Atvi is: EXPDP> /home/oracle/tpitr/tspitr_bubg_28811.dmp EXPDP> Job "SYS"."TSPITR_EXP_bubg_Atvi" completed with 2 error(s) at Wed Sep 18 11:45:03 2013 elapsed 0 00:00:36 Export completed contents of Memory Script: { # shutdown clone before import shutdown clone abort } executing Memory Script Oracle instance shut down Performing import of tables... IMPDP> Master table "SYS"."TSPITR_IMP_bubg_xCfq" successfully loaded/unloaded IMPDP> Starting "SYS"."TSPITR_IMP_bubg_xCfq": IMPDP> Processing object type TABLE_EXPORT/TABLE/TABLE IMPDP> Processing object type TABLE_EXPORT/TABLE/TABLE_DATA IMPDP> . . imported "ABBEY"."TEST1" 9.612 MB 91441 rows IMPDP> Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS IMPDP> Processing object type TABLE_EXPORT/TABLE/STATISTICS/MARKER IMPDP> Job "SYS"."TSPITR_IMP_bubg_xCfq" successfully completed at Wed Sep 18 11:45:23 2013 elapsed 0 00:00:08 Import completed Removing automatic instance Automatic instance removed auxiliary instance file /home/oracle/tpitr/LEARNING/datafile/o1_mf_temp_93mlgprp_.tmp deleted auxiliary instance file /home/oracle/tpitr/BUBG_PITR_LEARNING/onlinelog/o1_mf_3_93mll9mj_.log deleted auxiliary instance file /home/oracle/tpitr/BUBG_PITR_LEARNING/onlinelog/o1_mf_2_93mll9ff_.log deleted auxiliary instance file /home/oracle/tpitr/BUBG_PITR_LEARNING/onlinelog/o1_mf_1_93mll982_.log deleted auxiliary instance file /home/oracle/tpitr/BUBG_PITR_LEARNING/datafile/o1_mf_users_93mll5jc_.dbf deleted auxiliary instance file /home/oracle/tpitr/LEARNING/datafile/o1_mf_sysaux_93mlcypd_.dbf deleted auxiliary instance file /home/oracle/tpitr/LEARNING/datafile/o1_mf_undotbs1_93mlcyq8_.dbf deleted auxiliary instance file /home/oracle/tpitr/LEARNING/datafile/o1_mf_system_93mlcyp6_.dbf deleted auxiliary instance file /home/oracle/tpitr/LEARNING/controlfile/o1_mf_93mlcq52_.ctl deleted auxiliary instance file tspitr_bubg_28811.dmp deleted Finished recover at 18-SEP-13 RMAN> **end-of-file** RMAN> RMAN> exit Recovery Manager complete. oracle@abbey.learning.com-->(learning) /home/oracle/Desktop> !sqlp sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Wed Sep 18 11:49:06 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL> select count(*) from abbey.test1; COUNT(*) ---------- 91441 SQL> desc abbey.test1 Name Null? Type ----------------------------------------- -------- ---------------------------- OBJ# NOT NULL NUMBER DATAOBJ# NUMBER OWNER# NOT NULL NUMBER NAME NOT NULL VARCHAR2(128) NAMESPACE NOT NULL NUMBER SUBNAME VARCHAR2(128) TYPE# NOT NULL NUMBER CTIME NOT NULL DATE MTIME NOT NULL DATE STIME NOT NULL DATE STATUS NOT NULL NUMBER REMOTEOWNER VARCHAR2(128) LINKNAME VARCHAR2(128) FLAGS NUMBER OID$ RAW(16) SPARE1 NUMBER SPARE2 NUMBER SPARE3 NUMBER SPARE4 VARCHAR2(1000) SPARE5 VARCHAR2(1000) SPARE6 DATE SIGNATURE RAW(16) SPARE7 NUMBER SPARE8 NUMBER SPARE9 NUMBER SQL>