oracle归档模式和非归档模式切换
oracle启动顺序简述
上一篇说到oracle的日志文件有联机重做日志和归档重做日志,只有在归档模式下,系统才会去写归档重做日志。
使用archive log list查看是否在归档模式下:
SQL> archive log list Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 176 Current log sequence 177
一、非归档模式改为归档模式
1、命令:
shutdown;
startup mount;
alter database archivelog;
alter database open;
archive log list;
2、执行过程:
SQL> shutdown; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount; ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2231096 bytes Variable Size 624952520 bytes Database Buffers 205520896 bytes Redo Buffers 2400256 bytes Database mounted. SQL> alter database archivelog; Database altered. SQL> alter database open; Database altered. SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 176 Next log sequence to archive 177 Current log sequence 177
二、归档模式改为非归档模式
1、命令:
shutdown;
startup mount;
alter database noarchivelog;
alter database open;
archive log list;
2、执行过程:
SQL> shutdown; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount; ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2231096 bytes Variable Size 624952520 bytes Database Buffers 205520896 bytes Redo Buffers 2400256 bytes Database mounted. SQL> alter database noarchivelog; Database altered. SQL> alter database open; Database altered. SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 176 Current log sequence 177
三、oracle启动顺序
我们会发现平时启动oracle用startup命令,而在设置归档模式时使用的是startup mount命令,所以oracle启动肯定是分为几个阶段的,在mount这个阶段才能修改归档模式。
可以看到启动时状态由 nomount -> mount -> open
1、nomount状态
nomount的过程就是启动oracle数据库实例的过程。在这个阶段oracle首先会寻找参数文件(pfile或者spfile),然后根据参数文件中的设置,创建数据库实例(分配内存,创建后台进程)。
2、mount状态
启动到mount状态后,oracle就可以从spfile或pfile中获取了control file的位置信息,找到控制文件,并读取控制文件。
在这个状态下可以对数据文件和日志文件做管理类操作。
3、open状态
在这个阶段,首先会对每个数据文件做一检查,检查数据文件头中的检查点计数(Checkpoint CNT)是否和控制文件中的检查点计数一致,然后再打开数据库,锁定数据文件。
4、startup命令等于以下三个命令组合
startup nomount;
alter database mount;
alter database open;
参考资料:
http://www.cnblogs.com/linjiqin/archive/2012/06/22/2558780.html
http://blog.csdn.net/pan_tian/article/details/7815266