I forbindelse med Cloning af en database med RMAN, ramte jeg her forleden ind i en ORA-1161. Før jeg clonede, sikrede jeg mig lige en kopi af kontrolfilen.
 
[workday::/home1/usr/oracle/kbirch] sid PRODUKTION
 
[workday:PRODUKTION:/home1/usr/oracle/kbirch] sqlplus / as sysdba
 
SQL*Plus: Release 10.2.0.3.0 - Production on Mon Sep 8 13:36:03 2008
Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.
 
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
 
SQL> alter database backup controlfile to trace as '/home1/usr/oracle/kbirch/gen_ctrl.sql';
 
SQL> exit
 
gen_ctrl.sql blev herefter tilrettet, til at afspejle, vha. RMAN og BACKUP AS COPY DATABASE, den nye destination.
 
[workday::/home1/usr/oracle/kbirch] sid BRUGERTEST
 
[workday:BRUGERTEST:/home1/usr/oracle/kbirch] sqlplus / as sysdba
 
SQL*Plus: Release 10.2.0.3.0 - Production on Mon Sep 8 13:36:03 2008
Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.
 
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
 
SQL> @/home1/usr/oracle/kbirch/gen_ctrl.sql
 
Database altered.
 
Total System Global Area  706195132 bytes
Fixed Size                   102076 bytes
Variable Size             679788544 bytes
Database Buffers           26214400 bytes
Redo Buffers                  90112 bytes
 
CREATE CONTROLFILE REUSE DATABASE "BRUGERTEST" NORESETLOGS ARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01161: database name PRODUKTION in file header does not match given name of BRUGERTEST
ORA-01110: data file 1: '/[mount_point]/BRUGERTEST/system_01.dbf'
 
Fejlen ligger i, jeg har været lidt for hurtig! Da jeg jo skifter database navn fra PRODUKTION til BRUGERTEST, kan jeg jo ikke lave en; CREATE CONTROLFILE REUSE DATABASE men skal istedet lave en CREATE CONTROLFILE SET DATABASE, for det skal kunne lade sig gøre.  Nendenfor den "rigtige" gen_ctrl.sql, hvorefter alt gik glat.
 
STARTUP NOMOUNT
CREATE CONTROLFILE SET DATABASE "BRUGERTEST" RESETLOGS ARCHIVELOG
    MAXLOGFILES 32
    MAXLOGMEMBERS 2
    MAXDATAFILES 128
    MAXINSTANCES 8
    MAXLOGHISTORY 1815
LOGFILE
  GROUP 1 '/[mount_point]/BRUGERTEST/redo01.dbf'  SIZE 50M,
  GROUP 2 '/[mount_point]/BRUGERTEST/redo02.dbf'  SIZE 50M,
  GROUP 3 '/[mount_point]/BRUGERTEST/redo03.dbf'  SIZE 50M
DATAFILE
  '/[mount_point]/BRUGERTEST/system_01.dbf',
  '/[mount_point]/BRUGERTEST/temp_01.dbf',
  '/[mount_point]/BRUGERTEST/data_01.dbf',
  '/[mount_point]/BRUGERTEST/rbs_03.dbf',
  '/[mount_point]/BRUGERTEST/sysaux_01.dbf'
CHARACTER SET WE8ISO8859P1;
 
RECOVER DATABASE UNTIL TIME '2008-09-08:13:00:00' USING BACKUP CONTROLFILE;
 
ALTER DATABASE OPEN RESETLOGS;
 
ALTER TABLESPACE TEMP ADD TEMPFILE '/[mount_point]/BRUGERTEST/temp_01.dbf' SIZE 2560M REUSE AUTOEXTEND OFF;