2010-07-13 38 views

Trả lời

3

Truy vấn này sẽ hiển thị các truy vấn mà hiện đang chạy:

select sql_text from v$sqlarea where users_executing > 0; 

Xem documentation of V$SQLAREA

14

Nếu bạn muốn xem các truy vấn từ một người dùng cụ thể, bạn có thể sử dụng này (giả sử bạn có đặc quyền để truy vấn v$sessionv$sqlarea (thường là thông qua SELECT_CATALOG_ROLE)

SELECT sess.sid, 
     sess.username, 
     sqla.optimizer_mode, 
     sqla.hash_value, 
     sqla.address, 
     sqla.cpu_time, 
     sqla.elapsed_time, 
     sqla.sql_text 
    FROM v$sqlarea sqla, v$session sess 
WHERE sess.sql_hash_value = sqla.hash_value 
    AND sess.sql_address = sqla.address 
    AND sess.username = 'SCOTT' 

Thay SCOT T với tên người dùng thích hợp trong hệ thống của bạn

Output:

544 SCOTT  ALL_ROWS 2004330732 07000001064088E8   89391  131836 SELECT sess.sid,  sess.username, 
                         sqla.optimizer_mode,  sqla.h 
                        ash_value,  sqla.address,  s 
                        qla.cpu_time,  sqla.elapsed_time, 
                         sqla.sql_text FROM v$sqlarea sq 
                        la, v$session sess WHERE sess.sql_hash_ 
                        value = sqla.hash_value AND sess.sql_ 
                        address = sqla.address AND sess.usern 
                        ame = 'SCOTT' 
+0

Tuyệt vời, bạn có thể cho tôi một đầu ra ví dụ về truy vấn mà? Bởi vì tôi không có đặc quyền, tôi đã yêu cầu nhóm DBA cung cấp cho tôi kết quả đầu ra và về cơ bản họ đã cho tôi cái gì đó giống như kế hoạch exectution của truy vấn, đó không phải là điều tôi muốn. Hãy dán một đầu ra mẫu, vì vậy tôi có thể biết liệu các yêu cầu đòi hỏi có hữu ích cho tôi hay không –

+1

Tôi có một cơ sở dữ liệu mà tôi là quản trị viên đầy đủ, nhưng nó nói v $ session không tồn tại. Tôi giải quyết điều này như thế nào ? –

+0

Bằng quản trị viên đầy đủ, bạn có nghĩa là bạn có vai trò DBA và đang thực hiện truy vấn với tư cách là người dùng có vai trò này không? Nếu không, sau đó đăng nhập như SYS và thực thi GRANT SELECT ON v $ session TO ; CHỌN LỰA CHỌN TRÊN v $ sqlarea ĐẾN . – bhangm

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