数据库启动三台阶

来源:互联网 发布:st8单片机 编辑:程序博客网 时间:2024/05/20 18:42
SQL> shutdown immediate;
Database closed.
Database dismounted.

ORACLE instance shut down.


SQL> startup nomount;
ORACLE instance started.


Total System Global Area  271400960 bytes
Fixed Size                  2252424 bytes
Variable Size             184549752 bytes
Database Buffers           79691776 bytes
Redo Buffers                4907008 bytes


启动到nomount状态:
1.读参数文件(参数文件可以自己编写)
2.分配内存(根据参数文件里的内容)
3.启动后台进程
4.初始化部分v$视图


SQL> alter database mount;


Database altered.


SQL> select value from v$parameter  where name='control_files';


VALUE
----------------------------------------
/u01/app/oracle/oradata/orcl/control01.c
tl, /u01/app/oracle/flash_recovery_area/
orcl/control02.ctl


mount数据库的过程是度参数文件中描述的控制文件,校验控制文件的正确性,将控制文件的内容读到内存,mount是挂接的意思,一旦mount就是将一个没有意义的实例和一个数据库发生了联系。因为实例是一个空壳,没有任何数据库和该实例发生关系。可以理解为实例就是水泵,当到哪个水塘就会抽取哪里的数据,实例是通用的。mount的意思就是讲一个通用的水泵放入到指定的水塘。mount是读控制文件,控制文件中有数据文件和日志文件的信息。


SQL> select instance_name,status from v$instance;


INSTANCE_NAME    STATUS
---------------- ------------
orcl             MOUNTED


SQL> select open_mode from v$database;


OPEN_MODE
--------------------
MOUNTED



SQL> alter database open;


Database altered.

读控制文件中描述的数据文件
验证数据文件的一致性,如果不一致,使用日志文件将数据库文件恢复到一致的状态。
数据库open后,普通用户才可以访问数据库。


startup force:强制启动数据库,等于强制停止数据库再启动数据库。












0 0