आपको जो त्रुटि मिल रही है वह है ORA-29283
:
> oerr ora 29283
29283. 00000 - "invalid file operation"
*Cause: An attempt was made to read from a file or directory that does
not exist, or file or directory access was denied by the
operating system.
*Action: Verify file and directory access privileges on the file system,
and if reading, verify that the file exists.
तो या तो /usr/apps/datafiles
निर्देशिका मौजूद नहीं है, या यह Oracle प्रक्रिया स्वामी द्वारा लिखने योग्य नहीं है (उदा. oracle
खाता); या संभवतः (लेकिन कम संभावना है) आपके द्वारा निर्दिष्ट लॉग फ़ाइल पहले से मौजूद है और इसे अधिलेखित नहीं किया जा सकता है।
चूंकि आपने कहा है कि यह मौजूद है, निर्देशिका की पूर्ण अनुमतियां देखें (उदा. ls -ld /usr/apps/datafiles
, Oracle प्रक्रिया स्वामी के स्वामी और समूह की जाँच करें (उदा. id -a
) उस निर्देशिका और उसके माता-पिता पर अनुमतियों की तुलना करने के लिए। यदि यह सब ठीक लगता है, तो Oracle प्रक्रिया के मालिक के रूप में लॉग इन करते समय जांचें कि क्या आप निर्देशिका के तहत एक फ़ाइल बना सकते हैं जैसे:
touch /usr/apps/datafiles/test_file
ls -l /usr/apps/datafiles/test_file
rm -f /usr/apps/datafiles/test_file
यदि वह सब काम करता है, और मुझे लगता है कि यह शायद आपकी टिप्पणी से होता है, तो चूंकि आप आरएसी का उपयोग कर रहे हैं, इसलिए आपको समर्थन नोट 1305166.1 को देखने की आवश्यकता हो सकती है।
कोशिश करने वाली पहली चीज़ है expdp
बिना @orcl
. के , जैसा कि ऐसा लगता है (ए) ऐसे मुद्दे हैं जब श्रोता और डेटाबेस अलग-अलग खातों के तहत चल रहे हैं (उदाहरण के लिए grid
और oracle
, और grid
उपयोगकर्ता OS निर्देशिका तक नहीं पहुंच सकता - touch
दोहराएं यह देखने के लिए कि क्या ऐसा है, उस उपयोगकर्ता के रूप में परीक्षण करें); या (बी) यदि उपनाम लोड-संतुलित है और यह एक अलग नोड पर चल रहा है जिसमें निर्देशिका नहीं है।