2011-10-12 29 views
11

Tôi mới đến oracle. Tôi cần lấy các công việc đã lên lịch trong cơ sở dữ liệu của mình.Làm cách nào để liệt kê các công việc đã lên lịch chạy trong cơ sở dữ liệu của tôi?

tôi truy vấn

DBA_SCHEDULER_JOBS, 
DBA_SCHEDULER_SCHEDULES, DBA_SCHEDULER_PROGRAMS, 
DBA_SCHEDULER_JOB_CLASSES, DBA_JOBS. 

Nhưng Oracle phát hành các lỗi

"ORA-00942: table or view does not exist". 

Khi tôi truy vấn ALL_JOBS và USER_JOBS không có hàng được lấy ra. Vui lòng đề nghị tôi nên xem bảng nào.

Trả lời

11

Chế độ xem DBA bị hạn chế. Vì vậy, bạn sẽ không thể truy vấn chúng trừ khi bạn kết nối với tư cách là một DBA hoặc người dùng có đặc quyền tương tự.

TẤT CẢ lượt xem hiển thị cho bạn thông tin bạn được phép xem. Thông thường đó sẽ là công việc bạn đã gửi, trừ khi bạn có thêm đặc quyền.

Các đặc quyền bạn cần được xác định trong Hướng dẫn quản trị. Find out more.

Vì vậy, bạn cần có tài khoản DBA hoặc bạn cần trò chuyện với nhóm DBA của mình để nhận quyền truy cập vào thông tin bạn cần.

+10

Nếu bạn không muốn đọc hướng dẫn: 'SELECT * FROM ALL_SCHEDULER_JOBS;'. –

1

SCHEDULER_ADMIN vai trò là một vai trò mạnh mẽ cho phép được cấp để thực thi mã như bất kỳ người dùng nào, bạn nên xem xét cấp đặc quyền hệ thống Lập lịch riêng lẻ thay thế. Các đặc quyền của đối tượng và hệ thống được cấp bằng cú pháp SQL cấp thông thường. Ví dụ: nếu quản trị viên cơ sở dữ liệu đưa ra tuyên bố sau:

GRANT CREATE JOB TO scott;

Sau khi tuyên bố này được thực hiện, scott có thể tạo công việc, lịch biểu hoặc chương trình trong lược đồ của mình.

sao chép từ http://docs.oracle.com/cd/B19306_01/server.102/b14231/schedadmin.htm#i1006239

Các vấn đề liên quan