Control File
Every Oracle
Database has a control file, which is a small binary file that records the
physical structure of the database. The control file includes:
- The database name
- Names and locations of associated datafiles and redo log files
- The timestamp of the database creation
- The current log sequence number
- Checkpoint information
To find
the control files location.
Sql>SHOW PARAMETERS
control_files;
Or
Sql>SELECT * FROM
v$controlfile;
To see
controlfile contents,
Sql>SELECT * FROM v$controlfile_record_section;
If we want
to see contents of controlfile, we can create trace file of the control file.
Sql>alter database backup controlfile
to trace as ‘/u01/cntrl.txt’;
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "OLDLSQ" NORESETLOGS
NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 2
MAXDATAFILES 240
MAXINSTANCES 1
MAXLOGHISTORY 113
LOGFILE
GROUP 1 ('/u03/oradata/oldlsq/log1a.dbf',
'/u03/oradata/olslsq/log1b.dbf') SIZE 30M,
GROUP 2 ('/u04/oradata/oldlsq/log2a.dbf',
'/u04/oradata/oldlsq/log2b.dbf') SIZE 30M
DATAFILE
'/u01/oradata/oldlsq/system01.dbf',
'/u01/oradata/oldlsq/mydatabase.dbf'
;
# 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;
CREATE CONTROLFILE REUSE DATABASE "OLDLSQ" NORESETLOGS
NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 2
MAXDATAFILES 240
MAXINSTANCES 1
MAXLOGHISTORY 113
LOGFILE
GROUP 1 ('/u03/oradata/oldlsq/log1a.dbf',
'/u03/oradata/olslsq/log1b.dbf') SIZE 30M,
GROUP 2 ('/u04/oradata/oldlsq/log2a.dbf',
'/u04/oradata/oldlsq/log2b.dbf') SIZE 30M
DATAFILE
'/u01/oradata/oldlsq/system01.dbf',
'/u01/oradata/oldlsq/mydatabase.dbf'
;
# 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;
MAXLOGFILES
Clause
Specify the
maximum number of online redo log file groups that can ever be created for the
database. Oracle Database uses this value to determine how much space to
allocate in the control file for the names of redo log files. The default and
maximum values depend on your operating system. The value that you specify
should not be less than the greatest GROUP value for any redo log
file group.
MAXLOGMEMBERS Clause
Specify the
maximum number of members, or identical copies, for a redo log file group.
Oracle Database uses this value to determine how much space to allocate in the
control file for the names of redo log files. The minimum value is 1. The
maximum and default values depend on your operating system.
MAXLOGHISTORY
Clause
This parameter
is useful only if you are using Oracle Database in archivelog mode with Real
Application Clusters. Specify the maximum number of archived redo log file
groups for automatic media recovery of Real Application Clusters. The database
uses this value to determine how much space to allocate in the control file for
the names of archived redo log files. The minimum value is 0. The default value
is a multiple of the MAXINSTANCES value and depends on your operating
system. The maximum value is limited only by the maximum size of the control
file.
MAXDATAFILES
Clause
Specify the
initial sizing of the datafiles section of the control file at CREATE DATABASE or CREATE CONTROLFILE time.
An attempt to add a file whose number is greater than MAXDATAFILES, but
less than or equal to DB_FILES, causes the control file to expand
automatically so that the datafiles section can accommodate more files.
The number of
datafiles accessible to your instance is also limited by the initialization
parameter DB_FILES.
MAXINSTANCES
Clause
Specify the
maximum number of instances that can simultaneously have the database mounted
and open. This value takes precedence over the value of the initialization
parameter INSTANCES. The minimum value is 1. The maximum and default
values depend on your operating system.
ARCHIVELOG
| NOARCHIVELOG
Specify ARCHIVELOG to
archive the contents of redo log files before reusing them. This clause
prepares for the possibility of media recovery as well as instance or system
failure recovery.
If you omit both
the ARCHIVELOG clause and NOARCHIVELOG clause, then Oracle
Database chooses noarchivelog mode by default. After creating the control file,
you can change between archivelog mode and noarchivelog mode with the ALTER DATABASE statement.
FORCE
LOGGING
Use this clause
to put the database into FORCE LOGGING mode after control file
creation. When the database is in this mode, Oracle Database logs all changes
in the database except changes to temporary tablespaces and temporary segments.
This setting takes precedence over and is independent of any NOLOGGING or FORCE LOGGING settings
you specify for individual tablespaces and any NOLOGGING settings you
specify for individual database objects. If you omit this clause, the database
will not be in FORCE LOGGING mode after the control file is
created.
DATAFILE
Clause
Specify the
datafiles of the database. You must list all datafiles. These files must all
exist, although they may be restored backups that require media recovery.
Do not include
in the DATAFILE clause any datafiles in read-only tablespaces. You
can add these types of files to the database later. Also, do not include in
this clause any temporary datafiles (tempfiles).
No comments:
Post a Comment