Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Database name embedded in controlfile -- what for?
In article <6kbqe7$t1p$4_at_gte2.gte.net>, johnvue_at_gte.net says:
>
>What is the exact relationship between the database name in CREATE
>DATABASE and the DB_NAME parameter in init.ora?
>
>Is there ever a legitimate reason for not making them the same?
>
>It seems that ORACLE_SID environment variable tells Oracle about which
>init<SID>.ora to use. It doesn't use the environment variable to
>match up with the database name embedded within the controlfile.
>
>What is the purpose of having the database name inside the
>controlfile? Redundancy?
The database name specified in CREATE DATABASE is stored in the control file, the DB_NAME parameter in INIT.ora must match the database name in the control file otherwise the database cannot be brought up.
When a control file became corrupt, one can re-create another one using CREATE CONTROLFILE specifying the same database name. I think the database name is stored in the header of each Oracle database file, hence the control file needs to be able to identify all of its database files.
Regards
Joe
Received on Fri May 29 1998 - 07:27:01 CDT