Startupnomountstartupmountstartupopen (default startup option) Other common parameters: readonly, readwrite, force, and restrict can be used together. For example, startup and startupopenreadwrite are the same. Oracle startup process: Start an instance
Startup nomount startup mount startup open (the default option of startup) Other common parameters: read only, read write, force, and restrict can be used together, for example, startup and startup open read write have the same effect. Oracle startup process: Start instance-load database-open
Startup nomount
Startup mount
Startup open (default options of startup)
Other common parameters: read only, read write, force, restrict
These parameters can be used together. For example, startup and startup open read write have the same effect.
Oracle startup process: Start the instance-> load the database-> open the database
The order in which the corresponding files are read: parameter files> Control Files> data files
Let's verify the differences between these steps:
Startup nomount
When the nomount method is used to start a database, it means that only the database instance is started, no database is loaded, no database is opened
In this case, only the parameter file is read. There are two main tasks: one is to allocate the memory SGA area, and the other is to start the Oracle background process.
Modify the name of the oracle parameter file and start the database as nomount.
Here we need to modify both pfile and spfile. By default, spfile is used for database startup, and pfile is used for startup when spfile cannot be found.
[Oracle @ localhost dbs] $ pwd
/Oracle/orc10g/product/10.1.0/db_1/dbs
[Oracle @ localhost dbs] $ mv initorcl. ora initorcl1.ora
[Oracle @ localhost dbs] $ mv spfileorcl. ora spfileorcl1.ora
SYS @ orcl> shutdown abort
ORACLE instance shut down.
SYS @ orcl> startup nomount
ORA-01078: failure in processing system parameters
LRM-00109: cocould not open parameter file '/oracle/orc10g/product/10.1.0/db_1/dbs/initorcl. ora'
SYS @ orcl>
# Keep the parameter file correct and modify the control file name
[Oracle @ localhost orcl] $ pwd
/Oracle/orc10g/oradata/orcl
[Oracle @ localhost orcl] $ mv control01.ctl control01a. ctl
[Oracle @ localhost orcl] $ mv control02.ctl control02a. ctl
[Oracle @ localhost orcl] $ mv control03.ctl control03a. ctl
.....
SYS @ orcl> startup nomount
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 778212 bytes
Variable Size 61874204 bytes
Database Buffers 104857600 bytes
Redo Buffers 262144 bytes
SYS @ orcl>
No error is reported when you modify the control file name in nomount mode. It indicates that the control file is not read in nomount mode.
To continue with the above steps, we start with mount:
SYS @ orcl> alter database mount;
Alter database mount
*
ERROR at line 1:
ORA-00205: error in identifying controlfile, check alert log for more info
When loading the database, you must read the control file to determine the location of the data file.
In the above example, we modify the control file correctly so that the database can find the control file correctly,
Modify the name of the data file.
[Oracle @ localhost orcl] $ mv tp_test.dbf tp_test1.dbf
.....
SYS @ orcl> startup mount
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 778212 bytes
Variable Size 61874204 bytes
Database Buffers 104857600 bytes
Redo Buffers 262144 bytes
Database mounted.
Although I modified the data file, there was no error in the mount mode. It indicates that in the mount mode, only the parameter file and control file are read during the startup process.
Next we open the database.
SYS @ orcl> alter database open
2;
Alter database open
*
ERROR at line 1:
ORA-01157: cannot identify/lock data file 5-see DBWR trace file
ORA-01110: data file 5: '/oracle/orc10g/oradata/orcl/tp_test.dbf'
The system prompts that we cannot find the tp_test.dbf file.
At this point, we have a rough understanding of the database startup process, the work done in each step during the startup process, and the files read.
Summary: oracle starts the database according to the following process:
Nomount
------------
Start an instance | mount
(Parameter file) | ---------------
| Load database | open
(Control file) | -----------
| Open a database
(Data files)
1. The control file has not been read in nomount mode. This option is used when all the control files in the database are corrupted. You need to re-create the Database Control file or create a new database.
2. The data file is not opened under the mount option. This option can be used to modify the running mode of the database or restore the database.