06. september 2006 - 14:34Der er
8 kommentarer og 1 løsning
create controlfile
Hej
Jeg har lavet trace fil med følgende statement. alter database backup controlfile to trace;
Den har genereret noget SQL:
CREATE CONTROLFILE REUSE DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 'D:\ORACLE\ORADATA\RESTORDB\REDO01.LOG' SIZE 100M, GROUP 2 'D:\ORACLE\ORADATA\RESTORDB\REDO02.LOG' SIZE 100M, GROUP 3 'D:\ORACLE\ORADATA\RESTORDB\REDO03.LOG' SIZE 100M
DATAFILE 'D:\ORACLE\ORADATA\RESTORDB\SYSTEM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\UNDOTBS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\CWMLITE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\DRSYS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\EXAMPLE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\INDX01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\ODM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\TOOLS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\USERS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\XDB01.DBF' CHARACTER SET WE8MSWIN1252 ;
Problemet er at når jeg kører denne sql på følgende måde får jeg en fejl: SQL> @c:\tracefil1
Fejl: ========================================================= SQL> @c:\tracefil1 SP2-0042: Ukendt kommando "DATAFILE" - resten af linien er ignoreret. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0044: Angiv HELP for at fσ en oversigt over kommandoer og EXIT for at afslutte. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0044: Angiv HELP for at fσ en oversigt over kommandoer og EXIT for at afslutte. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "'D:\ORACLE..." - resten af linjen ignoreres. SP2-0734: ukendt kommando starter "CHARACTER ..." - resten af linjen ignoreres. SP2-0044: Angiv HELP for at fσ en oversigt over kommandoer og EXIT for at afslutte. 1 CREATE CONTROLFILE REUSE DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG 2 MAXLOGFILES 50 3 MAXLOGMEMBERS 5 4 MAXDATAFILES 100 5 MAXINSTANCES 1 6 MAXLOGHISTORY 226 7 LOGFILE 8 GROUP 1 'D:\ORACLE\ORADATA\RESTORDB\REDO01.LOG' SIZE 100M, 9 GROUP 2 'D:\ORACLE\ORADATA\RESTORDB\REDO02.LOG' SIZE 100M, 10* GROUP 3 'D:\ORACLE\ORADATA\RESTORDB\REDO03.LOG' SIZE 100M SQL> ============================================================
Hvad gør jeg forkert ? Jeg skal bruge det til at give databasen et nyt dbid. nid er ikke en mulighed da det er version 8.1.7
Det tyder på at der er sket en fejl i din tilretning af trace filen. Hvilken editor har du benyttet ?
alter database backup controlfile to trace; giver dig en masse junk tekst som du også skal fjerne. Evt kan du sende filen direkte til mig, så skal jeg rette den til for dig... Bruger du svrmgrl til at lave den nye controlfile ?
Jeg tror såmænd bare det er den blanke linje mellem "SIZE 100M" og "DATAFILE" der får SQL*Plus til at gå i selvsving. Prøv at fjerne den og så køre igen.
Fejlen var i hvert fald i første omgang mellemrummet. Nu får jeg en ny fejl.
SQL> @c:\tracefil1 CREATE CONTROLFILE REUSE DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG * FEJL i linie 1: ORA-01503: CREATE CONTROLFILE fejlede ORA-01227: log stemmer ikke overens med andre logge
Ja, det er pga. RMAN dbid skal ændres. Vi har 2 med samme dbid som skal registreres i samme catalog. Jeg har brugt notepad til at redigere, men måske har jeg taget det forkerte.
# Below are two sets of SQL statements, each of which creates a new # control file and uses it to open the database. The first set opens # the database with the NORESETLOGS option and should be used only if # the current versions of all online logs are available. The second # set opens the database with the RESETLOGS option and should be used # if online logs are unavailable. # The appropriate set of statements can be copied from the trace into # a script file, edited as necessary, and executed when there is a # need to re-create the control file. # # Set #1. NORESETLOGS case # # The following commands will create a new control file and use it # to open the database. # Data used by the recovery manager will be lost. Additional logs may # be required for media recovery of offline data files. Use this # only if the current version of all online logs are available. STARTUP NOMOUNT CREATE CONTROLFILE REUSE DATABASE "RESTORDB" NORESETLOGS NOARCHIVELOG -- SET STANDBY TO MAXIMIZE PERFORMANCE MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 'D:\ORACLE\ORADATA\RESTORDB\REDO01.LOG' SIZE 100M, GROUP 2 'D:\ORACLE\ORADATA\RESTORDB\REDO02.LOG' SIZE 100M, GROUP 3 'D:\ORACLE\ORADATA\RESTORDB\REDO03.LOG' SIZE 100M -- STANDBY LOGFILE
DATAFILE 'D:\ORACLE\ORADATA\RESTORDB\SYSTEM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\UNDOTBS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\CWMLITE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\DRSYS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\EXAMPLE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\INDX01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\ODM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\TOOLS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\USERS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\XDB01.DBF' CHARACTER SET WE8MSWIN1252 ;
# Recovery is required if any of the datafiles are restored backups, # or if the last shutdown was not normal or immediate. RECOVER DATABASE
# Database can now be opened normally. ALTER DATABASE OPEN;
# Commands to add tempfiles to temporary tablespaces. # Online tempfiles have complete space information. # Other tempfiles may require adjustment. ALTER TABLESPACE TEMP ADD TEMPFILE 'D:\ORACLE\ORADATA\RESTORDB\TEMP01.DBF' REUSE; # End of tempfile additions. # # Set #2. RESETLOGS case # # The following commands will create a new control file and use it # to open the database. # The contents of online logs will be lost and all backups will # be invalidated. Use this only if online logs are damaged. STARTUP NOMOUNT CREATE CONTROLFILE REUSE DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG -- SET STANDBY TO MAXIMIZE PERFORMANCE MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 'D:\ORACLE\ORADATA\RESTORDB\REDO01.LOG' SIZE 100M, GROUP 2 'D:\ORACLE\ORADATA\RESTORDB\REDO02.LOG' SIZE 100M, GROUP 3 'D:\ORACLE\ORADATA\RESTORDB\REDO03.LOG' SIZE 100M -- STANDBY LOGFILE
DATAFILE 'D:\ORACLE\ORADATA\RESTORDB\SYSTEM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\UNDOTBS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\CWMLITE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\DRSYS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\EXAMPLE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\INDX01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\ODM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\TOOLS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\USERS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\XDB01.DBF' CHARACTER SET WE8MSWIN1252 ;
# Recovery is required if any of the datafiles are restored backups, # or if the last shutdown was not normal or immediate. RECOVER DATABASE USING BACKUP CONTROLFILE
# Database can now be opened zeroing the online logs. ALTER DATABASE OPEN RESETLOGS;
# Commands to add tempfiles to temporary tablespaces. # Online tempfiles have complete space information. # Other tempfiles may require adjustment. ALTER TABLESPACE TEMP ADD TEMPFILE 'D:\ORACLE\ORADATA\RESTORDB\TEMP01.DBF' REUSE; # End of tempfile additions. #
Et par enkelte ting - hedder databasen RESTORDB og har den været startet? Ellers skal du lige sætte en "SET" ind i: CREATE CONTROLFILE REUSE SET DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG...
Ellers ser det ud til den brokker sig over dine redolog files. Hvad størrelse har de nu? ligger de der overhovedet? Eksistere de alle 3?
STARTUP NOMOUNT CREATE CONTROLFILE REUSE DATABASE "RESTORDB" RESETLOGS NOARCHIVELOG MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 'D:\ORACLE\ORADATA\RESTORDB\REDO01.LOG' SIZE 100M, GROUP 2 'D:\ORACLE\ORADATA\RESTORDB\REDO02.LOG' SIZE 100M, GROUP 3 'D:\ORACLE\ORADATA\RESTORDB\REDO03.LOG' SIZE 100M DATAFILE 'D:\ORACLE\ORADATA\RESTORDB\SYSTEM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\UNDOTBS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\CWMLITE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\DRSYS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\EXAMPLE01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\INDX01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\ODM01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\TOOLS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\USERS01.DBF', 'D:\ORACLE\ORADATA\RESTORDB\XDB01.DBF' CHARACTER SET WE8MSWIN1252 ;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.