Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Experimental record: fixed-point time recovery of TSPITR tablespace

2025-01-16 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

TSPITR is the abbreviation of Tablespace Point In Time Recovery in English. That is, the table space is restored at a fixed time.

TSPITR is a relatively fine-grained incomplete recovery technique. The restore operation we usually see is to restore all tablespaces and data to the same point in time.

On the other hand, TSPITR takes the tablespace as the granularity unit and separately restores the contents of a tablespace to a specific recoverable point in time.

For example, an Oracle database runs in archive mode, keeping a full backup at 00:00 at night. At seven o'clock in the morning, a misoperation occurred in the data table on a particular table space (a single table occupies the table space exclusively), and the data was corrupted. Requires that the tablespace data be restored to six o'clock in the morning without harming other table data. The scenario of partial data recovery is a typical application of TSPITR.

Switch to pams users to start:

1. Create a tablespace

SQL > create tablespace tspitr datafile'/ home/oracle/app/oradata/pamsdb/tspitr01.dbf' size 10m

Tablespace created

two。 Create a table on this tablespace and insert data

SQL > create table tspitr_test tablespace tspitr as select * from sys.t2

Table created

SQL > select count (*) from tspitr_test

COUNT (*)

-

eight

3. Make a backup of the database

Due to the limited space in the installation directory, the previous backup set needs to be deleted to make room.

RMAN > delete backupset

Allocated channel: ORA_DISK_1

Channel ORA_DISK_1: SID=20 device type=DISK

List of Backup Pieces

BP Key BS Key Pc# Cp# Status-Device Type Piece Name

22-22-1-1-AVAILABLE-DISK-/ home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0sshto2j_1_1

23-23-1-1-AVAILABLE-DISK-/ home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0tshto2l_1_1

24-24-1-1-AVAILABLE-DISK-/ home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0ushto51_1_1

25-25-1-1-AVAILABLE-DISK-/ home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0vshto56_1_1

Do you really want to delete the above objects (enter YES or NO)-yes

Deleted backup piece

Backup piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0sshto2j_1_1 RECID=22 STAMP=958324819

Deleted backup piece

Backup piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0tshto2l_1_1 RECID=23 STAMP=958324821

Deleted backup piece

Backup piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0ushto51_1_1 RECID=24 STAMP=958324898

Deleted backup piece

Backup piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0vshto56_1_1 RECID=25 STAMP=958324902

Deleted 4 objects

RMAN > delete backup

Using channel ORA_DISK_1

Specification does not match any backup in the repository

RMAN > backup database plus archivelog delete all input

Starting backup at 23-OCT-17

Current log archived

Using target database control file instead of recovery catalog

Allocated channel: ORA_DISK_1

Channel ORA_DISK_1: SID=39 device type=DISK

RMAN-00571: =

RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =

RMAN-00571: =

RMAN-03002: failure of backup plus archivelog command at 10/23/2017 17:39:29

RMAN-06059: expected archived log not found, loss of archived log compromises recoverability

ORA-19625: error identifying file / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_3_957807611.dbf

ORA-27037: unable to obtain file status

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

-

Reason: I manually deleted the archive log with the rm command before. However, archived log information is also recorded in controlfile, and oracle also looks for these archived log files, so an error is reported.

Solution: keep the archive log information in the control file consistent with the actual physical file information

1. Corsscheck archivelog all

This command is used to check the difference between the control file and the actual physical file information.

2.delete expired archivelog all

Delete invalid archive log information to synchronize the check control file with the actual physical file information.

-

-- processing process

RMAN > crosscheck archivelog all

Using target database control file instead of recovery catalog

Allocated channel: ORA_DISK_1

Channel ORA_DISK_1: SID=17 device type=DISK

Validation failed for archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_3_957807611.dbf RECID=9 STAMP=957869815

Validation failed for archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_4_957807611.dbf RECID=7 STAMP=957869815

Validation failed for archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_5_957807611.dbf RECID=8 STAMP=957869815

Validation succeeded for archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_1_957869815.dbf RECID=10 STAMP=958144259

Validation succeeded for archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_1_958144259.dbf RECID=11 STAMP=958153168

Crosschecked 5 objects

RMAN > report obsoleted

-shows which backups have been discarded.

RMAN > delete expired archivelog all

Released channel: ORA_DISK_1

Allocated channel: ORA_DISK_1

Channel ORA_DISK_1: SID=17 device type=DISK

List of Archived Log Copies for database with db_unique_name PAMSDB

=

Key-Thrd Seq-S Low Time

-

9-1-3-X 20-OCT-17

-Name: / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_3_957807611.dbf

7-1-4-X 20-OCT-17

-Name: / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_4_957807611.dbf

8-1-5-X 20-OCT-17

-Name: / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_5_957807611.dbf

Do you really want to delete the above objects (enter YES or NO)-yes

Deleted archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_3_957807611.dbf RECID=9 STAMP=957869815

Deleted archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_4_957807611.dbf RECID=7 STAMP=957869815

Deleted archived log

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_5_957807611.dbf RECID=8 STAMP=957869815

Deleted 3 EXPIRED objects

-- Delete expired backup sets and back up again

RMAN > backup database plus archivelog delete all input

Starting backup at 26-OCT-17

Current log archived

Using channel ORA_DISK_1

Channel ORA_DISK_1: starting archived log backup set

Channel ORA_DISK_1: specifying archived log (s) in backup set

Input archived log thread=1 sequence=5 RECID=41 STAMP=958325901

Input archived log thread=1 sequence=6 RECID=42 STAMP=958326023

Input archived log thread=1 sequence=7 RECID=43 STAMP=958326221

Input archived log thread=1 sequence=8 RECID=44 STAMP=958356625

Input archived log thread=1 sequence=9 RECID=45 STAMP=958382812

Channel ORA_DISK_1: starting piece 1 at 26-OCT-17

Channel ORA_DISK_1: finished piece 1 at 26-OCT-17

Piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/10shvgms_1_1 tag=TAG20171026T092652 comment=NONE

Channel ORA_DISK_1: backup set complete, elapsed time: 00:00:09

Channel ORA_DISK_1: deleting archived log (s)

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_5_958322553.dbf RECID=41 STAMP=958325901

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_6_958322553.dbf RECID=42 STAMP=958326023

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_7_958322553.dbf RECID=43 STAMP=958326221

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_8_958322553.dbf RECID=44 STAMP=958356625

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_9_958322553.dbf RECID=45 STAMP=958382812

Finished backup at 26-OCT-17

Starting backup at 26-OCT-17

Using channel ORA_DISK_1

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=/home/oracle/app/oradata/pamsdb/system01.dbf

Input datafile file number=00002 name=/home/oracle/app/oradata/pamsdb/sysaux01.dbf

Input datafile file number=00005 name=/home/oracle/app/oradata/pamsdb/DATA_PAMS_01.dbf

Input datafile file number=00006 name=/home/oracle/app/oradata/pamsdb/DATA_PAMS_02.dbf

Input datafile file number=00003 name=/home/oracle/app/oradata/pamsdb/undotbs01.dbf

Input datafile file number=00007 name=/home/oracle/app/oradata/pamsdb/INDX_PAMS_01.dbf

Input datafile file number=00009 name=/home/oracle/app/oradata/pamsdb/test_chen.dbf

Input datafile file number=00013 name=/home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test_dyjwd77b_.dbf

Input datafile file number=00014 name=/home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_uni_dyjwdn4f_.dbf

Input datafile file number=00015 name=/home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_auto_dyjwdn5l_.dbf

Input datafile file number=00016 name=/home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test1_dyjwf0vx_.dbf

Input datafile file number=00017 name=/home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test3_ms_dyjwf0z1_.dbf

Input datafile file number=00018 name=/home/oracle/app/oradata/pamsdb/test4_assm.dbf

Input datafile file number=00008 name=/home/oracle/app/oradata/pamsdb/undotbs02.dbf

Input datafile file number=00010 name=/home/oracle/app/oradata/pamsdb/test_chen1.dbf

Input datafile file number=00011 name=/home/oracle/app/oradata/pamsdb/ts_mssm.dbf

Input datafile file number=00012 name=/home/oracle/app/oradata/pamsdb/big.dbf

Input datafile file number=00004 name=/home/oracle/app/oradata/pamsdb/users01.dbf

Input datafile file number=00020 name=/home/oracle/app/oradata/pamsdb/tspitr01.dbf

Input datafile file number=00019 name=/home/oracle/app/oradata/pamsdb/blkerr01.dbf

Channel ORA_DISK_1: starting piece 1 at 26-OCT-17

Channel ORA_DISK_1: finished piece 1 at 26-OCT-17

Piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/11shvgn7_1_1 tag=TAG20171026T092702 comment=NONE

Channel ORA_DISK_1: backup set complete, elapsed time: 00:03:27

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 26-OCT-17

Channel ORA_DISK_1: finished piece 1 at 26-OCT-17

Piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/12shvgtn_1_1 tag=TAG20171026T092702 comment=NONE

Channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01

Finished backup at 26-OCT-17

Starting backup at 26-OCT-17

Current log archived

Using channel ORA_DISK_1

Channel ORA_DISK_1: starting archived log backup set

Channel ORA_DISK_1: specifying archived log (s) in backup set

Input archived log thread=1 sequence=10 RECID=46 STAMP=958383034

Channel ORA_DISK_1: starting piece 1 at 26-OCT-17

Channel ORA_DISK_1: finished piece 1 at 26-OCT-17

Piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/13shvgtr_1_1 tag=TAG20171026T093035 comment=NONE

Channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01

Channel ORA_DISK_1: deleting archived log (s)

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_10_958322553.dbf RECID=46 STAMP=958383034

Finished backup at 26-OCT-17

4. We do the following

SQL > select sequence#,status,sysdate from v$log

SEQUENCE# STATUS-SYSDATE

-10 INACTIVE-26-OCT-17

11 CURRENT-26-OCT-17

-9 INACTIVE-26-OCT-17

SQL > alter system switch logfile

System altered.

SQL > select sequence#,status,sysdate from v$log

SEQUENCE# STATUS-SYSDATE

-10 INACTIVE-26-OCT-17

11 ACTIVE-26-OCT-17

-12 CURRENT-26-OCT-17

SQL > select count (*) from tspitr_test

-COUNT (*)

-

-8

SQL > insert into tspitr_test select * from tspitr_test

8 rows created.

SQL > select count (*) from tspitr_test

-COUNT (*)

-

-- 16

SQL > alter system switch logfile

System altered.

SQL > select sequence#,status,sysdate from v$log

SEQUENCE# STATUS-SYSDATE

-- 13 CURRENT-26-OCT-17

11 INACTIVE-26-OCT-17

-12 ACTIVE-26-OCT-17

--

We need to see here that 11 is the current log in the first operation, and the number of records is 8 at this time. After switching logs, 11 becomes active (active, used as crash recover, but not the current log), 12 becomes the current log, inserts data into the table at this time, the number of records is 16, switches the log again, 12 becomes the disaster recovery log, 13 is the current log, so when we want to restore to 16 pieces of data in the table It should be with a until seq of 12. Check out the running result.

4. Establish a secondary recovery directory

Previously created under the home directory, there is only 400m of space left in this directory, so there is not enough direct space, because rman will copy the data files, so re-create the secondary recovery directory

Under the backup directory

Chown oracle:oinstall aux

Under the root directory-/ backup/aux

6. Perform recovery

-- the tablespace name must be uppercase, otherwise an error will be reported: RMAN-06019: could not translate tablespace name "tspitr_test"

Recover tablespace 'TSPITR' until logseq 12 auxiliary destination' / backup/aux'

=

The first experiment reported an error, and the tables and tablespaces have been deleted.

An error was reported: the reason is that the tablespace was created by the sys user and cannot be done: here, drop all the tables under the tablespace, and then the drop tablespace is ready to be re-created by the pams user. Because the tablespace has already hung up the data file, the problem comes again:

RMAN-00571: =

RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =

RMAN-00571: =

RMAN-03002: failure of recover command at 10/25/2017 17:49:01

RMAN-05072: TRANSPORT_SET_CHECK failed

SQL > drop tablespace tspitr_test

Tablespace dropped.

SQL > conn pams/pams@pamsdb

Connected.

SQL > create tablespace tspitr_test datafile'/ home/oracle/app/oradata/pamsdb/tspitr_test01.dbf' size 10m

Create tablespace tspitr_test datafile'/ home/oracle/app/oradata/pamsdb/tspitr_test01.dbf' size 10m

*

ERROR at line 1:

ORA-01119: error in creating database file

'/ home/oracle/app/oradata/pamsdb/tspitr_test01.dbf'

ORA-27038: created file already exists

Additional information: 1

ORA-01119: error creating database file--

I have deleted the tablespace. Why do you say the file exists. It turns out that the drop tablespace-tspitr_test; command only removes some logical associations, but the dbf file still exists in the specified directory.

If you execute this command, the file will be deleted as soon as possible.

Drop tablespace sonar including contents and datafiles

In this way, there will be no errors by re-executing the statement that creates the tablespace.

-- previous failed tablespaces are also deleted successfully, log in with pams users again, and rebuild tablespaces and tables

=

In the second experiment, tablespaces and tables have been created under pams:

Execute: recover tablespace 'TSPITR' until logseq 12 auxiliary destination' / backup/aux'

Rman executes drop tablespace- "TSPITR" including contents keep datafiles; error report while starting a secondary instance.

Why did you fail to keep the data file while deleting the tablespace contents? because the current log is seq13 instead of 12, is it because until 12 here is Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK?

-EXPDP > Processing object type TRANSPORTABLE_EXPORT/TABLE

-EXPDP > Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

-EXPDP > Master table "SYS". "TSPITR_EXP_lrqx" successfully loaded/unloaded

-EXPDP > *

-EXPDP > Dump file set for SYS.TSPITR_EXP_lrqx is:

-EXPDP >-/ backup/aux/tspitr_lrqx_27703.dmp

-EXPDP > *

-EXPDP > Datafiles required for transportable tablespace TSPITR:

-EXPDP >-/ home/oracle/app/oradata/pamsdb/tspitr01.dbf

-EXPDP > Job "SYS". "TSPITR_EXP_lrqx" successfully completed at 10:17:55

Export completed

Contents of Memory Script:

{

# shutdown clone before import

Shutdown clone immediate

# drop target tablespaces before importing them back

Sql 'drop tablespace "TSPITR" including contents keep datafiles'

}

Executing Memory Script

Database closed

Database dismounted

Oracle instance shut down

Sql statement: drop tablespace-"TSPITR" including contents keep datafiles

Removing automatic instance

Shutting down automatic instance

Target database instance not started

Automatic instance removed

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_temp_dz2kb2tg_.tmp deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_3_dz2k9xgv_.log deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_2_dz2k9voz_.log deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_1_dz2k9tcs_.log deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_sysaux_dz2k6w2h_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_undo2_dz2k7g1m_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_undotbs1_dz2k6w3j_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_system_dz2k6w29_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/controlfile/o1_mf_dz2k6l2n_.ctl deleted

RMAN-00571: =

RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =

RMAN-00571: =

RMAN-03002: failure of recover command at 10/26/2017 10:18:19

RMAN-03015: error occurred in stored script Memory Script

RMAN-03009: failure of sql command on default channel at 10/26/2017 10:18:18

RMAN-11003: failure during parse/execution of SQL statement: drop tablespace-"TSPITR" including contents keep datafiles

ORA-00604: error occurred at recursive SQL level 1

ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired

At first, I think that ORA-00604 may be due to insufficient table space, but this is not the problem after the query.

SQL > select

-2 b.file_name as "physical file name"

-3 b.tablespace_name as "tablespace"

-4 b.bytes/1024/1024 as "size M"

-5 (b.bytes-sum (nvl (a.bytesre0)) / 1024Universe 1024 as "used M"

-6 substr ((b.bytes-sum (nvl (a.bytes) / (b.bytes) * 100 substr 1) as "utilization"

-7-from dba_free_space a minute dbathing data files b

-8-where a.file_id=b.file_id

-9-group by b.tablespaceroomnamenamerecoveryb.fileroomnamememename b.bytes

10-order by b.tablespace_name

Physical file name-tablespace-size M-M utilization used

/ home/oracle/app/oradata/pamsdb/big.dbf-BIG-50-9 18

/ home/oracle/app/oradata/pamsdb/DATA_PAMS_01.dbf-- DATA_PAMS_01-500-21.6875 4.337

/ home/oracle/app/oradata/pamsdb/DATA_PAMS_02.dbf-- DATA_PAMS_02-500-85.75 17.15

/ home/oracle/app/oradata/pamsdb/INDX_PAMS_01.dbf-- INDX_PAMS_01-100-- 13.0625 13.06

/ home/oracle/app/oradata/pamsdb/sysaux01.dbf-- SYSAUX-- 600-429.1875 71.53

/ home/oracle/app/oradata/pamsdb/system01.dbf-- SYSTEM-- 700-578.1875 82.59

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test_dyjwd77b_.dbf-TEST-100-17.0625 17.06

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test1_dyjwf0vx_.dbf-TEST1-100-1.0625 1.062

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test3_ms_dyjwf0z1_.dbf-- TEST3_MSSM-- 100-11

/ home/oracle/app/oradata/pamsdb/test4_assm.dbf-TEST4_ASSM-100-1.0625 1.062

/ home/oracle/app/oradata/pamsdb/test_chen.dbf-TEST_CHEN-100-13.1875 13.18

/ home/oracle/app/oradata/pamsdb/test_chen1.dbf-TEST_CHEN1-50-5.4375 10.87

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_auto_dyjwdn5l_.dbf-- TS_AUTO-100-11

/ home/oracle/app/oradata/pamsdb/ts_mssm.dbf-TS_MSSM-50-1.0625 2.125

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_uni_dyjwdn4f_.dbf-TS_UNI-100-22

/ home/oracle/app/oradata/pamsdb/undotbs02.dbf-UNDO2-50-2.25 4.5

/ home/oracle/app/oradata/pamsdb/undotbs01.dbf-UNDOTBS1-395-15.25 3.860

/ home/oracle/app/oradata/pamsdb/users01.dbf-USERS-30-28.125 93.75

18 rows selected

-- execute seq13 recovery instructions:

RMAN > recover tablespace 'TSPITR' until logseq 13 auxiliary destination' / backup/aux'

Starting recover at 26-OCT-17

Using channel ORA_DISK_1

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

Tablespace UNDO2

Creating automatic instance, with SID='mfuj'

Initialization parameters used for automatic instance:

Db_name=PAMSDB

Db_unique_name=mfuj_tspitr_PAMSDB

Compatible=11.2.0.0.0

Db_block_size=8192

Db_files=200

Sga_target=280M

Processes=50

Db_create_file_dest=/backup/aux

Log_archive_dest_1='location=/backup/aux'

# No auxiliary parameter file used

Starting up automatic instance PAMSDB

Oracle instance started

Total System Global Area-292278272 bytes

Fixed Size-2212736 bytes

Variable Size-100666496 bytes

Database Buffers-184549376 bytes

Redo Buffers-4849664 bytes

Automatic instance created

Running TRANSPORT_SET_CHECK on recovery set tablespaces

TRANSPORT_SET_CHECK completed successfully

Contents of Memory Script:

{

# set requested point in time

Set until logseq 13 thread 1

# 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'

# avoid unnecessary autobackups for structural changes during TSPITR

Sql 'begin dbms_backup_restore.AutoBackupFlag (FALSE); end;'

}

Executing Memory Script

Executing command: SET until clause

Starting restore at 26-OCT-17

Allocated channel: ORA_AUX_DISK_1

Channel ORA_AUX_DISK_1: SID=17 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 / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/12shvgtn_1_1

Channel ORA_AUX_DISK_1: piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/12shvgtn_1_1 tag=TAG20171026T092702

Channel ORA_AUX_DISK_1: restored backup piece 1

Channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01

Output file name=/backup/aux/PAMSDB/controlfile/o1_mf_dz2lo0x6_.ctl

Finished restore at 26-OCT-17

Sql statement: alter database mount clone database

Sql statement: alter system archive log current

Sql statement: begin dbms_backup_restore.AutoBackupFlag (FALSE); end

Contents of Memory Script:

{

# set requested point in time

Set until logseq 13 thread 1

# set destinations for recovery set and auxiliary set datafiles

Set newname for clone datafile-1 to new

Set newname for clone datafile-3 to new

Set newname for clone datafile-8 to new

Set newname for clone datafile-2 to new

Set newname for clone tempfile-1 to new

Set newname for datafile-20 to

"/ home/oracle/app/oradata/pamsdb/tspitr01.dbf"

# switch all tempfiles

Switch clone tempfile all

# restore the tablespaces in the recovery set and the auxiliary set

Restore clone datafile-1,3,8,2,20

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

Executing command: SET NEWNAME

Executing command: SET NEWNAME

Renamed tempfile 1 to / backup/aux/PAMSDB/datafile/o1_mf_temp_%u_.tmp in control file

Starting restore at 26-OCT-17

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 / backup/aux/PAMSDB/datafile/o1_mf_system_%u_.dbf

Channel ORA_AUX_DISK_1: restoring datafile 00003 to / backup/aux/PAMSDB/datafile/o1_mf_undotbs1_%u_.dbf

Channel ORA_AUX_DISK_1: restoring datafile 00008 to / backup/aux/PAMSDB/datafile/o1_mf_undo2_%u_.dbf

Channel ORA_AUX_DISK_1: restoring datafile 00002 to / backup/aux/PAMSDB/datafile/o1_mf_sysaux_%u_.dbf

Channel ORA_AUX_DISK_1: restoring datafile 00020 to / home/oracle/app/oradata/pamsdb/tspitr01.dbf

Channel ORA_AUX_DISK_1: reading from backup piece / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/11shvgn7_1_1

Channel ORA_AUX_DISK_1: piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/11shvgn7_1_1 tag=TAG20171026T092702

Channel ORA_AUX_DISK_1: restored backup piece 1

Channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:26

Finished restore at 26-OCT-17

Datafile 1 switched to datafile copy

Input datafile copy RECID=6 STAMP=958387198 file name=/backup/aux/PAMSDB/datafile/o1_mf_system_dz2lo91b_.dbf

Datafile 3 switched to datafile copy

Input datafile copy RECID=7 STAMP=958387198 file name=/backup/aux/PAMSDB/datafile/o1_mf_undotbs1_dz2lo930_.dbf

Datafile 8 switched to datafile copy

Input datafile copy RECID=8 STAMP=958387199 file name=/backup/aux/PAMSDB/datafile/o1_mf_undo2_dz2loqkb_.dbf

Datafile 2 switched to datafile copy

Input datafile copy RECID=9 STAMP=958387199 file name=/backup/aux/PAMSDB/datafile/o1_mf_sysaux_dz2lo91h_.dbf

Contents of Memory Script:

{

# set requested point in time

Set until logseq 13 thread 1

# online the datafiles restored or switched

Sql clone "alter database datafile 1 online"

Sql clone "alter database datafile 3 online"

Sql clone "alter database datafile 8 online"

Sql clone "alter database datafile 2 online"

Sql clone "alter database datafile 20 online"

# recover and open resetlogs

Recover clone database tablespace-"TSPITR", "SYSTEM", "UNDOTBS1", "UNDO2", "SYSAUX" delete archivelog

Alter clone database open resetlogs

}

Executing Memory Script

Executing command: SET until clause

Sql statement: alter database datafile-1 online

Sql statement: alter database datafile-3 online

Sql statement: alter database datafile-8 online

Sql statement: alter database datafile-2 online

Sql statement: alter database datafile-20 online

Starting recover at 26-OCT-17

Using channel ORA_AUX_DISK_1

Starting media recovery

Archived log for thread 1 with sequence 11 is already on disk as file / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_11_958322553.dbf

Archived log for thread 1 with sequence 12 is already on disk as file / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_12_958322553.dbf

Channel ORA_AUX_DISK_1: starting archived log restore to default destination

Channel ORA_AUX_DISK_1: restoring archived log

Archived log thread=1 sequence=10

Channel ORA_AUX_DISK_1: reading from backup piece / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/13shvgtr_1_1

Channel ORA_AUX_DISK_1: piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/13shvgtr_1_1 tag=TAG20171026T093035

Channel ORA_AUX_DISK_1: restored backup piece 1

Channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:00

Archived log file name=/backup/aux/1_10_958322553.dbf thread=1 sequence=10

Channel clone_default: deleting archived log (s)

Archived log file name=/backup/aux/1_10_958322553.dbf RECID=46 STAMP=958387202

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_11_958322553.dbf thread=1 sequence=11

Archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_12_958322553.dbf thread=1 sequence=12

Media recovery complete, elapsed time: 00:00:01

Finished recover at 26-OCT-17

Database opened

Contents of Memory Script:

{

# make read only the tablespace that will be exported

Sql clone 'alter tablespace "TSPITR" read only'

# create directory for datapump import

Sql "create or replace directory TSPITR_DIROBJ_DPDIR as''

/ backup/aux'' "

# create directory for datapump export

Sql clone "create or replace directory TSPITR_DIROBJ_DPDIR as''

/ backup/aux'' "

}

Executing Memory Script

Sql statement: alter tablespace-"TSPITR" read only

Sql statement: create or replace directory TSPITR_DIROBJ_DPDIR as'/ backup/aux''

Sql statement: create or replace directory TSPITR_DIROBJ_DPDIR as'/ backup/aux''

Performing export of metadata...

EXPDP > Starting "SYS". "TSPITR_EXP_mfuj":-

EXPDP > Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK

EXPDP > Processing object type TRANSPORTABLE_EXPORT/TABLE

EXPDP > Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

EXPDP > Master table "SYS". "TSPITR_EXP_mfuj" successfully loaded/unloaded

EXPDP > *

EXPDP > Dump file set for SYS.TSPITR_EXP_mfuj is:

EXPDP > / backup/aux/tspitr_mfuj_54700.dmp

EXPDP > *

EXPDP > Datafiles required for transportable tablespace TSPITR:

EXPDP > / home/oracle/app/oradata/pamsdb/tspitr01.dbf

EXPDP > Job "SYS". "TSPITR_EXP_mfuj" successfully completed at 10:42:14

Export completed

Contents of Memory Script:

{

# shutdown clone before import

Shutdown clone immediate

# drop target tablespaces before importing them back

Sql 'drop tablespace "TSPITR" including contents keep datafiles'

}

Executing Memory Script

Database closed

Database dismounted

Oracle instance shut down

Sql statement: drop tablespace-"TSPITR" including contents keep datafiles

Performing import of metadata...

IMPDP > Master table "SYS". "TSPITR_IMP_mfuj" successfully loaded/unloaded

IMPDP > Starting "SYS". "TSPITR_IMP_mfuj":-

IMPDP > Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK

IMPDP > Processing object type TRANSPORTABLE_EXPORT/TABLE

IMPDP > Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

IMPDP > Job "SYS". "TSPITR_IMP_mfuj" successfully completed at 10:43:41

Import completed

Contents of Memory Script:

{

# make read write and offline the imported tablespaces

Sql 'alter tablespace "TSPITR" read write'

Sql 'alter tablespace "TSPITR" offline'

# enable autobackups after TSPITR is finished

Sql 'begin dbms_backup_restore.AutoBackupFlag (TRUE); end;'

}

Executing Memory Script

Sql statement: alter tablespace-"TSPITR" read write

Sql statement: alter tablespace-"TSPITR" offline

Sql statement: begin dbms_backup_restore.AutoBackupFlag (TRUE); end

Removing automatic instance

Automatic instance removed

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_temp_dz2lrc6m_.tmp deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_3_dz2lr744_.log deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_2_dz2lr5rm_.log deleted

Auxiliary instance file / backup/aux/PAMSDB/onlinelog/o1_mf_1_dz2lr3y0_.log deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_sysaux_dz2lo91h_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_undo2_dz2loqkb_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_undotbs1_dz2lo930_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/datafile/o1_mf_system_dz2lo91b_.dbf deleted

Auxiliary instance file/ backup/aux/PAMSDB/controlfile/o1_mf_dz2lo0x6_.ctl deleted

Finished recover at 26-OCT-17

It worked this time.

I noticed something different from the seq12 log:

Archived log for thread 1 with sequence 11 is already on disk as file / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_11_958322553.dbf

Archived log for thread 1 with sequence 12 is already on disk as file / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch2_12_958322553.dbf

The following is more than this time, indicating that the first execution of logseq 12:00 does not include the seq12 itself.

Looking back at the recovery table data:

SQL > conn pams/pams@pamsdb--

Connected.

SQL > select count (*) from tspitr_test

Select count (*) from tspitr_test

-*

ERROR at line 1:

ORA-00376: file 20 cannot be read at this time

ORA-01110: data file 20:'/ home/oracle/app/oradata/pamsdb/tspitr01.dbf'

An error is reported here, because the tablespaces and data files are in the status of offline, and you can see that the offline instruction is finally executed in the log of rman, because my tablespace and data files have been restored, and you can boldly perform online operations here.

SQL > conn / as sysdba

Connected.

SQL > alter tablespace TSPITR online

Tablespace altered.

SQL > select tablespace_name,status from dba_tablespaces where tablespace_name = 'TSPITR';

TABLESPACE_NAME--STATUS

TSPITR- ONLINE

SQL > select name,status from v$datafile where name ='/ home/oracle/app/oradata/pamsdb/tspitr01.dbf'

NAME

STATUS

-

/ home/oracle/app/oradata/pamsdb/tspitr01.dbf

ONLINE

The tablespace and data files are already online, and then query the recovered data.

SQL > conn pams/pams@pamsdb

Connected.

SQL > select count (*) from tspitr_test

-COUNT (*)

-

-8

The number is eight? Previously, there was no commit when inserting data, so it was indeed 8.

-- or directly specify the time, without trial.

SQL > select to_char (sysdate,'yyyymmdd hh34:mi:ss') from dual

TO_CHAR (SYSDATE,'YYYYMMDDHH24:')

-

20171025 17:42:01

Recover tablespace 'tspitr_test' until time "to_date (' 2017-10-24 16 purl 47 purl 12 mm hh34:mi:ss' hh34:mi:ss')" auxiliary destination'/ backup/aux'

* the original content of the experiment is from: http://lqding.blog.51cto.com/9123978/1680903

* the logic of this article is rather messy, mainly to record the pits I stepped on before, and because I don't know much about RMAN, I can only feel the stones to cross the river. A clear question is recommended: http://blog.itpub.net/17203031/viewspace-1082080/.

= the hole I stepped on before

The following is that I couldn't find a way to delete the tablespace of the original experiment. I didn't need it at all. Because of the data file deleted manually, I found that the database open could not be deleted.

After the recovery, reported an error, do not use 01 data file, rebuilt a 02, or not, direct restore database

RMAN > restore database

Starting restore at 25-OCT-17

Using channel ORA_DISK_1

Creating datafile file number=21 name=/home/oracle/app/oradata/pamsdb/tspitr02.dbf

Skipping datafile 20; already restored to file / home/oracle/app/oradata/pamsdb/tspitr01.dbf

Channel ORA_DISK_1: starting datafile backup set restore

Channel ORA_DISK_1: specifying datafile (s) to restore from backup set

Channel ORA_DISK_1: restoring datafile 00001 to / home/oracle/app/oradata/pamsdb/system01.dbf

Channel ORA_DISK_1: restoring datafile 00002 to / home/oracle/app/oradata/pamsdb/sysaux01.dbf

Channel ORA_DISK_1: restoring datafile 00003 to / home/oracle/app/oradata/pamsdb/undotbs01.dbf

Channel ORA_DISK_1: restoring datafile 00004 to / home/oracle/app/oradata/pamsdb/users01.dbf

Channel ORA_DISK_1: restoring datafile 00005 to / home/oracle/app/oradata/pamsdb/DATA_PAMS_01.dbf

Channel ORA_DISK_1: restoring datafile 00006 to / home/oracle/app/oradata/pamsdb/DATA_PAMS_02.dbf

Channel ORA_DISK_1: restoring datafile 00007 to / home/oracle/app/oradata/pamsdb/INDX_PAMS_01.dbf

Channel ORA_DISK_1: restoring datafile 00008 to / home/oracle/app/oradata/pamsdb/undotbs02.dbf

Channel ORA_DISK_1: restoring datafile 00009 to / home/oracle/app/oradata/pamsdb/test_chen.dbf

Channel ORA_DISK_1: restoring datafile 00010 to / home/oracle/app/oradata/pamsdb/test_chen1.dbf

Channel ORA_DISK_1: restoring datafile 00011 to / home/oracle/app/oradata/pamsdb/ts_mssm.dbf

Channel ORA_DISK_1: restoring datafile 00012 to / home/oracle/app/oradata/pamsdb/big.dbf

Channel ORA_DISK_1: restoring datafile 00013 to / home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test_dyjwd77b_.dbf

Channel ORA_DISK_1: restoring datafile 00014 to / home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_uni_dyjwdn4f_.dbf

Channel ORA_DISK_1: restoring datafile 00015 to / home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_auto_dyjwdn5l_.dbf

Channel ORA_DISK_1: restoring datafile 00016 to / home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test1_dyjwf0vx_.dbf

Channel ORA_DISK_1: restoring datafile 00017 to / home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test3_ms_dyjwf0z1_.dbf

Channel ORA_DISK_1: restoring datafile 00018 to / home/oracle/app/oradata/pamsdb/test4_assm.dbf

Channel ORA_DISK_1: restoring datafile 00019 to / home/oracle/app/oradata/pamsdb/blkerr01.dbf

Channel ORA_DISK_1: reading from backup piece / home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0jshr1lm_1_1

Channel ORA_DISK_1: piece handle=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/0jshr1lm_1_1 tag=TAG20171024T164542

Channel ORA_DISK_1: restored backup piece 1

Channel ORA_DISK_1: restore complete, elapsed time: 00:02:36

Finished restore at 25-OCT-17

RMAN > recover database

Starting recover at 25-OCT-17

Using channel ORA_DISK_1

Starting media recovery

RMAN-00571: =

RMAN-00569: = ERROR MESSAGE STACK FOLLOWS =

RMAN-00571: =

RMAN-03002: failure of recover command at 10/25/2017 16:37:06

RMAN-06053: unable to perform media recovery because of missing log

RMAN-06025: no backup of archived log for thread 1 with sequence 3 and starting SCN of 1766660 found to restore

RMAN-06025: no backup of archived log for thread 1 with sequence 2 and starting SCN of 1766284 found to restore

RMAN-06025: no backup of archived log for thread 1 with sequence 1 and starting SCN of 1760640 found to restore

=

At this time, due to the archiving problem, there was no recover success, but the restore was successful. The tspitr01.dbf was deleted before and came back. Try to switch the database from mount to open.

SQL > alter database open resetlogs

Alter database open resetlogs

*

ERROR at line 1:

ORA-01248: file 21 was created in the future of incomplete recovery

ORA-01110: data file 21:'/ home/oracle/app/oradata/pamsdb/tspitr02.dbf'

SQL > alter database datafile'/ home/oracle/app/oradata/pamsdb/tspitr02.dbf' offline drop

Database altered.

SQL > alter database open resetlogs

Database altered.

= =

Check the status of the data file

SQL > select name,status from v$datafile

NAME-STATUS

-

/ home/oracle/app/oradata/pamsdb/system01.dbf-- SYSTEM

/ home/oracle/app/oradata/pamsdb/sysaux01.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/undotbs01.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/users01.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/DATA_PAMS_01.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/DATA_PAMS_02.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/INDX_PAMS_01.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/undotbs02.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/test_chen.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/test_chen1.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/ts_mssm.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/big.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test_dyjwd77b_.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_uni_dyjwdn4f_.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_ts_auto_dyjwdn5l_.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test1_dyjwf0vx_.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/PAMSDB/datafile/o1_mf_test3_ms_dyjwf0z1_.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/test4_assm.dbf-ONLINE

/ home/oracle/app/oradata/pamsdb/blkerr01.dbf-- ONLINE

/ home/oracle/app/oradata/pamsdb/tspitr01.dbf-- OFFLINE

20 rows selected

The tablespace is also offline.

SQL > select tablespace_name,status from dba_tablespaces where tablespace_name = 'TSPITR'

TABLESPACE_NAME-STATUS

TSPITR-OFFLINE

-- the following is the data file offline related information

Quote an article explaining tablespaces and data files offline

The usage and difference of offline in data file and tablespace

The offline of the database includes the offline of the data file and the offline of the tablespace, which actually means that all the data files corresponding to the tablespace are offline.

1-data file OFFLINE

If a data file cannot be deleted after it is added to the tablespace, there is no syntax to do so. If you want not to use the data file, the only thing is to set the data file to the OFFLINE state. Perform the following steps to set the data file to the OFFLINE state:

1)-if it is in archive mode, you can execute the following SQL to set the status of the data file to OFFLINE:

ALTER DATABASE DATAFILE 'XXXX.DBF' OFFLINE

2)-if in non-archive mode, execute the following SQL to set the datafile status to OFFLINE:

ALTER DATABASE DATAFILE 'XXXX.DBF' OFFLINE DROP

When the data file is offline, the data dictionary information and metadata information related to the data file still exist. When the tablespace is deleted, the information of the relevant data file will be cleared. DROP TABLESPACE simply empties the Oracle data dictionary information, and the DROP tablespace works even if the data file does not exist. For offline data files, media recovery needs to be performed on the data files when setting up the data file ONLINE.

If you use OFFLINE DROP to take the data file offline in non-archive mode, this means that the data file may no longer be able to return to the ONLINE state because there may not be enough logs to perform ONLINE's media recovery in non-archive mode. If the log is not switched and still exists, you can still ONLINE the data file after media recovery.

2.-tablespace OFFLINE

Tablespace offline is divided into normal offline, temporary offline and immediate offline, which are discussed below.

1)-OFFLINE NORMAL

This is the default option, normally when the tablespace is offline, when ONLINE is re-executed, Oracle will update the tablespace data header SCN with the appropriate SCN to enable the normal ONLINE tablespace without the need to perform a media recovery.

ALTER TABLESPACE XXX OFFLINE [NORMAL]

2)-OFFLINE TEMPORARY

If you specify the TEMPORARY,Oracle database to perform a checkpoint for all online data files in the tablespace, there is no guarantee that all files can be synchronized. When the data file for executing this statement is offline, you need to perform a media recovery before re-ONLINE the tablespace.

ALTER TABLESPACE XXX OFFLINE TEMPORARY

3)-OFFLINE IMMEDIATE

Performing this operation means that the tablespace is taken offline immediately, and the media recovery must be performed the next time the tablespace ONLINE is made, and the media recovery is successful to make the tablespace ONLINE:

ALTER TABLESPACE XXX OFFLINE IMMEDIATE

For offline data files, be sure to perform the media recovery process the next time you ONLINE, and if the media recovery is successful, you can successfully ONLINE. For a normal tablespace offline, the next time you ONLINE the tablespace, you do not need to perform a media recovery. For OFFLINE TEMPORARY tablespaces, if there are already data files offline before going offline, you also need to perform a media recovery of some data files before the tablespaces go online. For IMMEDIATE OFFLINE tablespaces, media recovery needs to be performed on all data files in the tablespace before the tablespace comes online. For offline data files and tablespaces, the SCN number of the data file will not be verified when the instance is restarted.

Source:-http://blog.itpub.net/23135684/viewspace-705015/

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report