Home  >  Article  >  Database  >  resetlogs 打开数据库时新生成日志位置问题

resetlogs 打开数据库时新生成日志位置问题

WBOY
WBOYOriginal
2016-06-07 17:39:49892browse

resetlogs打开数据库时新生成日志位置问题若系统中缺少联机日志,以resetlogs方式重建控制文件,那么当我们以alterdatabaseopenresetlogs方式打开数据库时,新生

resetlogs 打开数据库时新生成日志位置问题

若系统中缺少联机日志,以resetlogs方式重建控制文件,那么当我们以alter database open resetlogs方式打开数据库时,新生成的联机日志会位于何处?

一:下面分别讨论几种情况
1 如果在重建控制文件语句中未指定日志条目,未指定omf参数,那么resetlogs 打开数据库时,自动创建的日志位于何处


2 如果在重建控制文件语句中未指定日志条目,仅指定了omf参数db_create_file_dest, 那么resetlogs 打开数据库时,自动创建的日志位于何处


3 如果在重建控制文件语句中指定了日志条目,指定了omf参数,香港虚拟主机,那么resetlogs 打开数据库事,自动创建的日志位于何处 

4 如果在重建控制文件语句中未指定日志条目,指定了omf参数db_create_file_dest和 db_create_online_log_dest_n 那么resetlogs 打开数据库时,自动创建的日志位于何处

二:实验
实验1 重建控制文件语句未指定日志条目,未指定omf参数,那么resetlogs打开数据库后日志位置
1 实验前提
    重建控制文件中不指定日志条目语句如下
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ZBCRM" RESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
DATAFILE
  '/oracle/CRM/ZBCRM/system01.dbf',
  '/oracle/CRM/ZBCRM/sysaux01.dbf',
  '/oracle/CRM/ZBCRM/undotbs01.dbf',
  '/oracle/CRM/ZBCRM/users01.dbf',
  '/oracle/CRM/ZBCRM/sysaux02.dbf'
CHARACTER SET ZHS16GBK
;


  参数文件中未指定omf参数
NAME                                     VALUE
---------------------------------------- --------------------------------------------------
db_create_file_dest
db_create_online_log_dest_1
db_create_online_log_dest_2
db_create_online_log_dest_3
db_create_online_log_dest_4
db_create_online_log_dest_5 
db_recovery_file_dest
db_recovery_file_dest_size               0


2 过程如下:

SQL> @/oracle/control1.sql
ORACLE instance started.

Total System Global Area 1152450560 bytes
Fixed Size                  2225832 bytes
Variable Size             704645464 bytes
Database Buffers          436207616 bytes
Redo Buffers                9371648 bytes

Control file created.

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open


SQL> alter database open resetlogs;

Database altered.

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE

SQL> col member for a50
SQL> select group#,member from v$logfile;

    GROUP# MEMBER
---------- --------------------------------------------------
         2 /oracle/app/db1/dbs/log2ZBCRM.dbf
         1 /oracle/app/db1/dbs/log1ZBCRM.dbf

结果:当控制文件重建语句中未指定日志条目,也未设置omf参数,那么resetlogs 打开数据库后新创建的日志文件位于dbs目录下。

实验2 重建控制文件语句中未指定了日志位置,指定omf参数,香港服务器,那么resetlogs打开数据库后日志位置
 1 实验前提
      重建控制文件语句如下
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ZBCRM" RESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
DATAFILE
  '/oracle/CRM/ZBCRM/system01.dbf',
  '/oracle/CRM/ZBCRM/sysaux01.dbf',
  '/oracle/CRM/ZBCRM/undotbs01.dbf',
  '/oracle/CRM/ZBCRM/users01.dbf',
  '/oracle/CRM/ZBCRM/sysaux02.dbf'
CHARACTER SET ZHS16GBK

参数文件中指定omf参数
NAME                                     VALUE
---------------------------------------- ----------------------------------------
db_create_file_dest                      /oracle/CRM/ZBCRM/
db_create_online_log_dest_1
db_create_online_log_dest_2
db_create_online_log_dest_3
db_create_online_log_dest_4
db_create_online_log_dest_5
db_recovery_file_dest
db_recovery_file_dest_size               0

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn