web-dev-qa-db-ja.com

ORA-48108 / ORA-48140 / ORA-48187-diagnostic_dest値エラー-初期化ファイル/制御ファイル

これはすべてテスト/トレーニングです-これは本番環境に関連していません

VMでのOracle DB 12c + UNIX/LINUX 64ビットの使用

こんにちは、みんな!以下のエラーが発生し、解決できないようです。手伝ってくれませんか?

SQL> STARTUP NOMOUNT; 
ORA-48108: invalid value given for the diagnostic_dest init.ora parameter 
ORA-48140: the specified ADR Base directory does not exist [/u01/app/Oracle/product/12.1.0.2/db_1/dbs/<Oracle_BASE>] 
ORA-48187: specified directory does not exist Linux-x86_64 Error: 2: No such file or directory Additional information: 1

DBの詳細:

[Oracle@ol12c dbs]$ echo $Oracle_BASE
/u01/app/Oracle

echo $Oracle_HOME
/u01/app/Oracle/product/12.1.0.2/db_1

[Oracle@ol12c dbs]$ ls -a
.   hc_cdb1.dat   init.ora       lkCDB1     spfilecdb1.ora   STARTUP
..  hc_pridb.dat  initpridb.ora  orapwcdb1  spfilepridb.ora
[Oracle@ol12c dbs]$ pwd
/u01/app/Oracle/product/12.1.0.2/db_1/dbs

[Oracle@ol12c dbs]$ echo $DB_NAME
pridb

[Oracle@ol12c dbs]$ env | grep ORA
Oracle_UNQNAME=cdb1
Oracle_SID=pridb
Oracle_BASE=/u01/app/Oracle
ORACLE_HOSTNAME=ol12c.localdomain
Oracle_HOME=/u01/app/Oracle/product/12.1.0.2/db_1

init.oraに含まれるもの:diagnostic_dest='<Oracle_BASE>'

initpridb.oraには以下が含まれます:diagnostic_dest='u01/app/Oracle'

**値を'<Oracle_BASE>'/'/u01/app/Oracle'/'/u01/app/Oracle/product/12.1.0.2/db_1'/'|Oracle_BASE|'に変更しました。運が悪い-すべて同じエラー。

私の以前の研究によると:

以下のように起動しようとすると:

SQL> startup nomount pfile=/u01/app/Oracle/product/12.1.0.2/db_1/dbs/initpridb.ora;

同じエラーが表示されます。以下を参照してください。

ORA-01261: Parameter db_recovery_file_dest destination string cannot be translated
ORA-01262: Stat failed on a file destination directory
Linux-x86_64 Error: 2: No such file or directory

Diagnostic_destの値を何に変更しても、その値+ Oracle_BASEを使用して検索することに気づきました。それらを反転すると('<Oracle_BASE>/product/12.1.0.2/db_1/dbs')、'<Oracle_BASE>/product/12.1.0.2/db_1/dbs/<Oracle_BASE>'で検索してしまいます

データベースに新しいveryで、同じホスト上に新しいデータベースを作成しています。このデータベースを作成したら、Oracle Data Guardを使用してフィジカルスタンバイDBとして使用する別のデータベースを作成します。行動を提案するときは、手がかりのない人と話すように行動してください。 :) :)

よろしくお願いします!


[〜#〜]更新[〜#〜]

ファイルの詳細を見る:

[Oracle@ol12c dbs]$ cat initpridb.ora
# 
# $Header: rdbms/admin/init.ora /main/24 2012/02/03 08:24:01 ysarig Exp $ 
# 
# Copyright (c) 1991, 1997, 1998 by Oracle Corporation
# NAME
#   init.ora
# FUNCTION
# NOTES
# MODIFIED
#     ysarig     02/01/12  - Renaming flash_recovery_area to
#                            fast_recovery_area
#     ysarig     05/14/09  - Updating compatible to 11.2
#     ysarig     08/13/07  - Fixing the sample for 11g
#     atsukerm   08/06/98 -  fix for 8.1.
#     hpiao      06/05/97 -  fix for 803
#     glavash    05/12/97 -  add Oracle_trace_enable comment
#     hpiao      04/22/97 -  remove ifile=, events=, etc.
#     alingelb   09/19/94 -  remove vms-specific stuff
#     dpawson    07/07/93 -  add more comments regarded archive start
#     maporter   10/29/92 -  Add vms_sga_use_gblpagfile=TRUE 
#     jloaiza    03/07/92 -  change ALPHA to BETA 
#     danderso   02/26/92 -  change db_block_cache_protect to _db_block_cache_p
#     ghallmar   02/03/92 -  db_directory -> db_domain 
#     maporter   01/12/92 -  merge changes from branch 1.8.308.1 
#     maporter   12/21/91 -  bug 76493: Add control_files parameter 
#     wbridge    12/03/91 -  use of %c in archive format is discouraged 
#     ghallmar   12/02/91 -  add global_names=true, db_directory=us.acme.com 
#     thayes     11/27/91 -  Change default for cache_clone 
#     jloaiza    08/13/91 -         merge changes from branch 1.7.100.1 
#     jloaiza    07/31/91 -         add debug stuff 
#     rlim       04/29/91 -         removal of char_is_varchar2 
#   Bridge     03/12/91 - log_allocation no longer exists
#   Wijaya     02/05/91 - remove obsolete parameters
#
##############################################################################
# Example INIT.ORA file
#
# This file is provided by Oracle Corporation as a starting point for
# customizing the Oracle Database installation for your site.    
#
# NOTE: The values that are used in this file are example values only.
# You may want to adjust those values for your specific requirements. 
# You might also consider using the Database Configuration Assistant     
# tool (DBCA) to create a server-side initialization parameter file
# and to size your initial set of tablespaces. See the
# Oracle Database 2 Day DBA guide for more information.
###############################################################################

# Change '<Oracle_BASE>' to point to the Oracle base (the one you specify at
# install time)

db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='<Oracle_BASE>/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='<Oracle_BASE>/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/Oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (ora_control1, ora_control2)
compatible ='11.2.0'

そして

[Oracle@ol12c dbs]$ cat init.ora
# 
# $Header: rdbms/admin/init.ora /main/24 2012/02/03 08:24:01 ysarig Exp $ 
# 
# Copyright (c) 1991, 1997, 1998 by Oracle Corporation
# NAME
#   init.ora
# FUNCTION
# NOTES
# MODIFIED
#     ysarig     02/01/12  - Renaming flash_recovery_area to
#                            fast_recovery_area
#     ysarig     05/14/09  - Updating compatible to 11.2
#     ysarig     08/13/07  - Fixing the sample for 11g
#     atsukerm   08/06/98 -  fix for 8.1.
#     hpiao      06/05/97 -  fix for 803
#     glavash    05/12/97 -  add Oracle_trace_enable comment
#     hpiao      04/22/97 -  remove ifile=, events=, etc.
#     alingelb   09/19/94 -  remove vms-specific stuff
#     dpawson    07/07/93 -  add more comments regarded archive start
#     maporter   10/29/92 -  Add vms_sga_use_gblpagfile=TRUE 
#     jloaiza    03/07/92 -  change ALPHA to BETA 
#     danderso   02/26/92 -  change db_block_cache_protect to _db_block_cache_p
#     ghallmar   02/03/92 -  db_directory -> db_domain 
#     maporter   01/12/92 -  merge changes from branch 1.8.308.1 
#     maporter   12/21/91 -  bug 76493: Add control_files parameter 
#     wbridge    12/03/91 -  use of %c in archive format is discouraged 
#     ghallmar   12/02/91 -  add global_names=true, db_directory=us.acme.com 
#     thayes     11/27/91 -  Change default for cache_clone 
#     jloaiza    08/13/91 -         merge changes from branch 1.7.100.1 
#     jloaiza    07/31/91 -         add debug stuff 
#     rlim       04/29/91 -         removal of char_is_varchar2 
#   Bridge     03/12/91 - log_allocation no longer exists
#   Wijaya     02/05/91 - remove obsolete parameters
#
##############################################################################
# Example INIT.ORA file
#
# This file is provided by Oracle Corporation as a starting point for
# customizing the Oracle Database installation for your site.    
#
# NOTE: The values that are used in this file are example values only.
# You may want to adjust those values for your specific requirements. 
# You might also consider using the Database Configuration Assistant     
# tool (DBCA) to create a server-side initialization parameter file
# and to size your initial set of tablespaces. See the
# Oracle Database 2 Day DBA guide for more information.
###############################################################################

# Change '<Oracle_BASE>' to point to the Oracle base (the one you specify at
# install time)

db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='<Oracle_BASE>/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='<Oracle_BASE>/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='<Oracle_BASE>'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (ora_control1, ora_control2)
compatible ='11.2.0'

そして

[Oracle@ol12c dbs]$ echo $Oracle_SID
pridb

[Oracle@ol12c dbs]$ echo $Oracle_HOME
/u01/app/Oracle/product/12.1.0.2/db_1

[Oracle@ol12c dbs]$ echo $Oracle_BASE
/u01/app/Oracle

[Oracle@ol12c dbs]$ echo $DB_NAME
pridb


更新2

提案されたように、initファイルを更新しました。 <Oracle_BASE>を実際のパスに変更:/u01/app/Oracle/

[Oracle@ol12c dbs]$ cat initpridb.ora
...
...
db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='/u01/app/Oracle/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/app/Oracle/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/Oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'

そして

[Oracle@ol12c dbs]$ cat init.ora
...
...
db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='/u01/app/Oracle/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/app/Oracle/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/Oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'

Pfileを手動で選択しないと、エラーが発生します。

SQL> STARTUP NOMOUNT;
ORA-48108: invalid value given for the diagnostic_dest init.ora parameter
ORA-48140: the specified ADR Base directory does not exist [/u01/app/Oracle/product/12.1.0.2/db_1/dbs/<Oracle_BASE>]
ORA-48187: specified directory does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 1

しかし、うまくいきます! :)(私は新しい問題に遭遇しましたが、おそらくこれとは無関係です)

SQL> startup nomount pfile=/u01/app/Oracle/product/12.1.0.2/db_1/dbs/initpridb.ora;
ORA-09925: Unable to create audit trail file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 9925

また、両方でdb_nameがORCLに設定されていることにも気付きました。これによりさらに問題が発生するかどうかは不明です。


更新3

対象:ORA-09925: Unable to create audit trail file

Oracle Knowledge Base Documentation:ORA-09925:起動時に監査証跡ファイルを作成できません( Doc ID 2267223.1 )解決に向けた手順に従っています。ポイントbの出力:

[Oracle@ol12c ~]$ ps -ef|grep LOCAL
Oracle    8211  8172  0 14:06 ?        00:00:00 oraclepridb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
Oracle    8448  8408  0 14:18 pts/1    00:00:00 grep --color=auto LOCAL

そして私は試しました:

[Oracle@ol12c ~]$ strace -frT -o /tmp/strace.1.log -p 8211
Process 8211 attached

しかし、これはスタック/ロードのようであり、したがって再びスタックします。


UPDATE 4

すべて解決しました。 Oracleインスタンスが起動しました。

最後のエラー(ORA-09925)は、audit_file_destパラメータの元の値をから正​​しいパスに更新することで解決されました。 audit_file_dest='/u01/app/Oracle/admin/orcl/adump'から>> audit_file_dest='/u01/app/Oracle/admin/pridb/adump'

SQL> startup nomount pfile=/u01/app/Oracle/product/12.1.0.2/db_1/dbs/initpridb.ora;
Oracle instance started.

Total System Global Area 1073741824 bytes
Fixed Size          2932632 bytes
Variable Size         671088744 bytes
Database Buffers      394264576 bytes
Redo Buffers            5455872 bytes

ご協力ありがとうございます!

2
Iris Catharina

init.oraは無視してください。これは使用されません。 init<SID>.oraが必要です。あなたの場合、これはinitpridb.oraのようです

あなたが手にしたこのファイルのこのコメントは無視されたようです:

'<Oracle_BASE>'を、Oracleベース(インストール時に指定するもの)を指すように変更します。

あなたはまだ持っています:

audit_file_dest='<Oracle_BASE>/admin/orcl/adump'

これを次のように変更します。

/u01/app/Oracle/admin/orcl/adump

そしてさらに試みる。

1
Phil Sumner