一個腳本,正常運行了很久,突然之間就報錯了
腳本核心語句如下:
expdp system/********@orclfy directory=expdir dumpfile=20200313.dmp full=y cluster=n logfile=20200313.log
報錯如下:
Export: Release 19.0.0.0.0 - Production on Fri Mar 13 19:42:35 2020
Version 19.3.0.0.0Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-29283: invalid file operation: nonexistent file or path [29434]
客戶環境爲19C CDB RAC架構,導出的是指定的PDB orclfy.腳本以前一直跑的是正常的,突然之間就不行了.
這個報錯以前經常遇到,就是無法創建日誌文件,一般是目錄不存在或者沒有訪問權限.
仔細檢查了很多遍都是正常的,而且腳本以前都是正常運行的,在沒有做任何修改的情況下爲什麼突然就不行了呢?
查了一下MOS,看到一篇文章說檢查一下監聽是否正常.查了一下集羣/監聽都是正常的.
但是我突然我想到了,expdp 這裏連接的服務名連接的是集羣的ScanIP,那麼有可能在連接的時候連接到了另一個節點上:
報錯連接的tnsnames如下:
orclfy=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orclfy-cluster-scan)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclfy)
)
)
修改後的tnsnames如下:
orclfy1=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orclfy1-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclfy)
)
)
修改後使用本地節點的VIP來進行連接.這樣就順利導出了