Oracle数据库如何定位trace file位置

用一个示例来说明吧。

在导入master key时,出现错误:

sql 复制代码
ADMINISTER KEY MANAGEMENT
  IMPORT KEYS WITH SECRET "my_secret"
  FROM '/tmp/export.exp'
  IDENTIFIED BY keypwd
  5    WITH BACKUP;
ADMINISTER KEY MANAGEMENT
*
ERROR at line 1:
ORA-46655: no valid keys in the file from which keys are to be imported

另一个错误:

sql 复制代码
ADMINISTER KEY MANAGEMENT
  IMPORT KEYS WITH SECRET "my_secret"
  FROM '/tmp/export.exp'
  IDENTIFIED BY keypwd
  5    WITH BACKUP;
ADMINISTER KEY MANAGEMENT
*
ERROR at line 1:
ORA-46654: cannot add the imported keys to the keystore

第2个错误提示让看trace file,第一个错误虽然没提示,但详细的错误信息也在trace file中。

sql 复制代码
SQL> !oerr ora 46654
46654, 00000, "cannot add the imported keys to the keystore"
// *Cause: The operation of writing the imported keys to the keystore failed.
// *Action: Check the contents of the trace file for more information on the
//          cause of the failure and retry the command.

SQL> !oerr ora 46655
46655, 00000, "no valid keys in the file from which keys are to be imported"
// *Cause: The specified keystore, from which keys are to be imported, did not
//         contain any valid keys.
// *Action: None.

根据Oracle的文档,运行以下命令以定位trace file:

sql 复制代码
select s.sid,s.serial#,s.audsid,s.username,s.osuser, s.client_identifier, s.sql_trace,s.action, p.spid, p.TRACEFILE
from v$session s,v$process p
where s.paddr=p.addr
and s.username is not null;

...
TRACEFILE
--------------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/orcl/ORCL/trace/ORCL_ora_32145.trc
...

然后就可以找到准确的错误信息:

bash 复制代码
Trace file /u01/app/oracle/diag/rdbms/orcl/ORCL/trace/ORCL_ora_32379.trc
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
Build label:    RDBMS_19.20.0.0.0DBRU_LINUX.X64_230621
ORACLE_HOME:    /u01/app/oracle/product/19c/dbhome_1
System name:    Linux
Node name:      instance-20231013-1024-db19c-iaas
Release:        5.4.17-2136.322.6.2.el7uek.x86_64
Version:        #2 SMP Sat Aug 19 11:55:11 PDT 2023
Machine:        x86_64
Instance name: ORCL
Redo thread mounted by this instance: 1
Oracle process number: 56
Unix process pid: 32379, image: oracle@instance-20231013-1024-db19c-iaas (TNS V)
相关推荐
jnrjian6 天前
ORA-01017 查找机器名 用户名 以及library cache lock 参数含义
数据库·oracle
TTc_6 天前
oracle中的union和union all有什么区别?
数据库·oracle
山峰哥6 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器
南 阳6 天前
Python从入门到精通day37
数据库·python·oracle
轩情吖6 天前
MySQL库的操作
android·数据库·mysql·oracle·字符集·数据库操作·编码集
脱发的老袁6 天前
【数据库】Oracle手动清理归档日志
数据库·oracle
jnrjian6 天前
Oracle 共享池 库缓存下的 Library Cache Lock
数据库·缓存·oracle
新缸中之脑7 天前
在Reddit上探索未满足的需求
数据库·oracle
light blue bird7 天前
产线多并发客户端指令操作场景组件
jvm·oracle·.net·winform