پارامتر read_only_open_delayed

با قرار دادن tablespace در وضیعت read only، کماکان وجود دیتافایلهای این tablespace در زمان open شدن بانک، مورد بررسی قرار می گیرد:

SQL> alter tablespace tbs01 read only;

Tablespace altered.

SQL> shut immediate;

Database closed.

Database dismounted.

[oracle@db~]$ mv /18c/base/oradata/CDB/CDB/datafile/o1_mf_tbs01_fro24f2b_.dbf /18c/base/oradata/CDB/CDB/datafile/o1_mf_tbs01_fro24f2b_old.dbf

SQL> startup force;

ORACLE instance shut down.

ORACLE instance started.

Total System Global Area 3925867640 bytes

Fixed Size                  8903800 bytes

Variable Size            1023410176 bytes

Database Buffers         2885681152 bytes

Redo Buffers                7872512 bytes

Database mounted.

ORA-01157: cannot identify/lock data file 17 – see DBWR trace file

برای ممانعت از سخت گیری بانک در این زمینه، می توان از پارامتر read_only_open_delayed استفاده کرد که با مقداردهی این پارامتر از false به true، در دسترس بودن دیتافایلی که tablespace آن در وضیعت read only قرار دارد، چک نخواهد شد:

SQL> alter system set read_only_open_delayed=true scope=spfile;

System altered.

SQL> startup mount force;

ORACLE instance started.

Total System Global Area 3925867640 bytes

Fixed Size                  8903800 bytes

Variable Size            1023410176 bytes

Database Buffers         2885681152 bytes

Redo Buffers                7872512 bytes

Database mounted.

SQL>  alter database open;

Database altered.

بعد از قرار گرفتن دیتابیس در وضیعت open، خطای عدم دسترسی مربوط به دیتافایل شماره 17، در alert log مکررا مشاهده خواهد شد:

ORA-01186: file 17 failed verification tests

ORA-01157: cannot identify/lock data file 17 – see DBWR trace file

دیدگاهتان را بنویسید