Lỗi bạn gặp phải là 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.
Vì vậy, /usr/apps/datafiles
thư mục không tồn tại hoặc nó không thể ghi được bởi chủ sở hữu tiến trình Oracle (ví dụ:oracle
tài khoản); hoặc có thể (nhưng ít khả năng hơn) tệp nhật ký bạn chỉ định đã tồn tại và không thể ghi đè.
Vì bạn đã nói rằng nó tồn tại, hãy xem toàn bộ quyền của thư mục (ví dụ:ls -ld /usr/apps/datafiles
, hãy kiểm tra chủ sở hữu và nhóm của chủ sở hữu quy trình Oracle (ví dụ:id -a
) để so sánh các quyền trên thư mục đó và thư mục mẹ của nó. Nếu tất cả đều ổn, trong khi đăng nhập với tư cách là chủ sở hữu quy trình Oracle, hãy kiểm tra xem bạn có thể tạo tệp trong thư mục, ví dụ:
touch /usr/apps/datafiles/test_file
ls -l /usr/apps/datafiles/test_file
rm -f /usr/apps/datafiles/test_file
Nếu tất cả những điều đó hoạt động và tôi đoán nó có thể xảy ra từ nhận xét của bạn, thì vì bạn đang sử dụng RAC, bạn có thể cần tham khảo ghi chú hỗ trợ 1305166.1.
Điều đầu tiên cần thử là thực hiện expdp
không có @orcl
, vì có vẻ như (a) có vấn đề khi trình nghe và cơ sở dữ liệu đang chạy trong các tài khoản khác nhau (ví dụ:grid
và oracle
và grid
người dùng không thể truy cập thư mục OS - lặp lại touch
kiểm tra với tư cách là người dùng đó để xem có đúng như vậy không); hoặc (b) nếu bí danh được cân bằng tải và nó kết thúc chạy trên một nút khác không có thư mục.