查看Oracle数据库SQL执行历史
2015-03-26 23:20
274 查看
方法1:使用LogMiner工具
优点:可以完全挖掘日志内容,找出所有执行过的SQL语句
缺点:
如果没有启用归档日志,则只能对联机日志进行挖掘
需要掌握LogMiner的用法
方法2:查看HIST视图
优点:简单,只要使用普通的select语句查询
缺点:Oracle保留约1周的历史,所以要查太早的就不可能了
举例:
下面是Oracle 10.2 command type definition的完整列表
1 CREATE TABLE
2 INSERT
3 SELECT
4 CREATE CLUSTER
5 ALTER CLUSTER
6 UPDATE
7 DELETE
8 DROP CLUSTER
9 CREATE INDEX
10 DROP INDEX
11 ALTER INDEX
12 DROP TABLE
13 CREATE SEQUENCE
14 ALTER SEQUENCE
15 ALTER TABLE
16 DROP SEQUENCE
17 GRANT OBJECT
18 REVOKE OBJECT
19 CREATE SYNONYM
20 DROP SYNONYM
21
CREATE VIEW
22
DROP VIEW
23
VALIDATE INDEX
24
CREATE PROCEDURE
25
ALTER PROCEDURE
26
LOCK
27
NO-OP
28
RENAME
29
COMMENT
30
AUDIT OBJECT
31
NOAUDIT OBJECT
32
CREATE DATABASE LINK
33
DROP DATABASE LINK
34
CREATE DATABASE
35
ALTER DATABASE
36
CREATE ROLLBACK SEG
37
ALTER ROLLBACK SEG
38
DROP ROLLBACK SEG
39
CREATE TABLESPACE
40
ALTER TABLESPACE
41
DROP TABLESPACE
42
ALTER SESSION
43
ALTER USER
44
COMMIT
45
ROLLBACK
46
SAVEPOINT
47
PL/SQL EXECUTE
48
SET TRANSACTION
49
ALTER SYSTEM
50
EXPLAIN
51
CREATE USER
52
CREATE ROLE
53
DROP USER
54
DROP ROLE
55
SET ROLE
56
CREATE SCHEMA
57
CREATE CONTROL FILE
59
CREATE TRIGGER
60
ALTER TRIGGER
61
DROP TRIGGER
62
ANALYZE TABLE
63
ANALYZE INDEX
64
ANALYZE CLUSTER
65
CREATE PROFILE
66
DROP PROFILE
67
ALTER PROFILE
68
DROP PROCEDURE
70
ALTER RESOURCE COST
71
CREATE SNAPSHOT LOG
72
ALTER SNAPSHOT LOG
73
DROP SNAPSHOT LOG
74
CREATE SNAPSHOT
75
ALTER SNAPSHOT
76
DROP SNAPSHOT
77
CREATE TYPE
78
DROP TYPE
79
ALTER ROLE
80
ALTER TYPE
81
CREATE TYPE BODY
82
ALTER TYPE BODY
83
DROP TYPE BODY
84
DROP LIBRARY
85
TRUNCATE TABLE
86
TRUNCATE CLUSTER
91
CREATE FUNCTION
92
ALTER FUNCTION
93
DROP FUNCTION
94
CREATE PACKAGE
95
ALTER PACKAGE
96
DROP PACKAGE
97
CREATE PACKAGE BODY
98
ALTER PACKAGE BODY
99
DROP PACKAGE BODY
100
LOGON
101
LOGOFF
102
LOGOFF BY CLEANUP
103
SESSION REC
104
SYSTEM AUDIT
105
SYSTEM NOAUDIT
106
AUDIT DEFAULT
107
NOAUDIT DEFAULT
108
SYSTEM GRANT
109
SYSTEM REVOKE
110
CREATE PUBLIC SYNONYM
111
DROP PUBLIC SYNONYM
112
CREATE PUBLIC DATABASE LINK
113
DROP PUBLIC DATABASE LINK
114
GRANT ROLE
115
REVOKE ROLE
116
EXECUTE PROCEDURE
117
USER COMMENT
118
ENABLE TRIGGER
119
DISABLE TRIGGER
120
ENABLE ALL TRIGGERS
121
DISABLE ALL TRIGGERS
122
NETWORK ERROR
123
EXECUTE TYPE
157
CREATE DIRECTORY
158
DROP DIRECTORY
159
CREATE LIBRARY
160
CREATE JAVA
161
ALTER JAVA
162
DROP JAVA
163
CREATE OPERATOR
164
CREATE INDEXTYPE
165
DROP INDEXTYPE
167
DROP OPERATOR
168
ASSOCIATE STATISTICS
169
DISASSOCIATE STATISTICS
170
CALL METHOD
171
CREATE SUMMARY
172
ALTER SUMMARY
173
DROP SUMMARY
174
CREATE DIMENSION
175
ALTER DIMENSION
176
DROP DIMENSION
177
CREATE CONTEXT
178
DROP CONTEXT
179
ALTER OUTLINE
180
CREATE OUTLINE
181
DROP OUTLINE
182
UPDATE INDEXES
183
ALTER OPERATOR
end
转载自:http://blog.csdn.net/wzy0623/article/details/9388061
优点:可以完全挖掘日志内容,找出所有执行过的SQL语句
缺点:
如果没有启用归档日志,则只能对联机日志进行挖掘
需要掌握LogMiner的用法
方法2:查看HIST视图
优点:简单,只要使用普通的select语句查询
缺点:Oracle保留约1周的历史,所以要查太早的就不可能了
举例:
-- 找出哪个数据库用户用什么程序在最近三天执行过delete或truncate table的操作 SELECT c.username, a.program, b.sql_text, b.command_type, a.sample_time FROM dba_hist_active_sess_history a JOIN dba_hist_sqltext b ON a.sql_id = b.sql_id JOIN dba_users c ON a.user_id = c.user_id WHERE a.sample_time BETWEEN SYSDATE - 3 AND SYSDATE AND b.command_type IN (7, 85) ORDER BY a.sample_time DESC;
下面是Oracle 10.2 command type definition的完整列表
1 CREATE TABLE
2 INSERT
3 SELECT
4 CREATE CLUSTER
5 ALTER CLUSTER
6 UPDATE
7 DELETE
8 DROP CLUSTER
9 CREATE INDEX
10 DROP INDEX
11 ALTER INDEX
12 DROP TABLE
13 CREATE SEQUENCE
14 ALTER SEQUENCE
15 ALTER TABLE
16 DROP SEQUENCE
17 GRANT OBJECT
18 REVOKE OBJECT
19 CREATE SYNONYM
20 DROP SYNONYM
21
CREATE VIEW
22
DROP VIEW
23
VALIDATE INDEX
24
CREATE PROCEDURE
25
ALTER PROCEDURE
26
LOCK
27
NO-OP
28
RENAME
29
COMMENT
30
AUDIT OBJECT
31
NOAUDIT OBJECT
32
CREATE DATABASE LINK
33
DROP DATABASE LINK
34
CREATE DATABASE
35
ALTER DATABASE
36
CREATE ROLLBACK SEG
37
ALTER ROLLBACK SEG
38
DROP ROLLBACK SEG
39
CREATE TABLESPACE
40
ALTER TABLESPACE
41
DROP TABLESPACE
42
ALTER SESSION
43
ALTER USER
44
COMMIT
45
ROLLBACK
46
SAVEPOINT
47
PL/SQL EXECUTE
48
SET TRANSACTION
49
ALTER SYSTEM
50
EXPLAIN
51
CREATE USER
52
CREATE ROLE
53
DROP USER
54
DROP ROLE
55
SET ROLE
56
CREATE SCHEMA
57
CREATE CONTROL FILE
59
CREATE TRIGGER
60
ALTER TRIGGER
61
DROP TRIGGER
62
ANALYZE TABLE
63
ANALYZE INDEX
64
ANALYZE CLUSTER
65
CREATE PROFILE
66
DROP PROFILE
67
ALTER PROFILE
68
DROP PROCEDURE
70
ALTER RESOURCE COST
71
CREATE SNAPSHOT LOG
72
ALTER SNAPSHOT LOG
73
DROP SNAPSHOT LOG
74
CREATE SNAPSHOT
75
ALTER SNAPSHOT
76
DROP SNAPSHOT
77
CREATE TYPE
78
DROP TYPE
79
ALTER ROLE
80
ALTER TYPE
81
CREATE TYPE BODY
82
ALTER TYPE BODY
83
DROP TYPE BODY
84
DROP LIBRARY
85
TRUNCATE TABLE
86
TRUNCATE CLUSTER
91
CREATE FUNCTION
92
ALTER FUNCTION
93
DROP FUNCTION
94
CREATE PACKAGE
95
ALTER PACKAGE
96
DROP PACKAGE
97
CREATE PACKAGE BODY
98
ALTER PACKAGE BODY
99
DROP PACKAGE BODY
100
LOGON
101
LOGOFF
102
LOGOFF BY CLEANUP
103
SESSION REC
104
SYSTEM AUDIT
105
SYSTEM NOAUDIT
106
AUDIT DEFAULT
107
NOAUDIT DEFAULT
108
SYSTEM GRANT
109
SYSTEM REVOKE
110
CREATE PUBLIC SYNONYM
111
DROP PUBLIC SYNONYM
112
CREATE PUBLIC DATABASE LINK
113
DROP PUBLIC DATABASE LINK
114
GRANT ROLE
115
REVOKE ROLE
116
EXECUTE PROCEDURE
117
USER COMMENT
118
ENABLE TRIGGER
119
DISABLE TRIGGER
120
ENABLE ALL TRIGGERS
121
DISABLE ALL TRIGGERS
122
NETWORK ERROR
123
EXECUTE TYPE
157
CREATE DIRECTORY
158
DROP DIRECTORY
159
CREATE LIBRARY
160
CREATE JAVA
161
ALTER JAVA
162
DROP JAVA
163
CREATE OPERATOR
164
CREATE INDEXTYPE
165
DROP INDEXTYPE
167
DROP OPERATOR
168
ASSOCIATE STATISTICS
169
DISASSOCIATE STATISTICS
170
CALL METHOD
171
CREATE SUMMARY
172
ALTER SUMMARY
173
DROP SUMMARY
174
CREATE DIMENSION
175
ALTER DIMENSION
176
DROP DIMENSION
177
CREATE CONTEXT
178
DROP CONTEXT
179
ALTER OUTLINE
180
CREATE OUTLINE
181
DROP OUTLINE
182
UPDATE INDEXES
183
ALTER OPERATOR
end
转载自:http://blog.csdn.net/wzy0623/article/details/9388061
相关文章推荐
- Oracle数据库查看一个进程是如何执行相关的实际SQL语句
- script:查看历史sql执行信息
- mysql查看历史执行的sql
- 查看oracle数据库最近执行了哪些sql语句
- oracle 查看某session的历史执行sql情况
- 查看oracle用户执行的sql语句历史记录
- 查看oracle 用户执行的sql语句历史记录
- 查看oracle 用户执行的sql语句历史记录
- 如何在sqlplus中查看oracle数据库sql语句执行计划,执行时间和统计信息
- pl/sql查看历史执行脚本的记录
- 查看oracle数据库最近执行了哪些sql语句
- 查看oracle数据库中正在执行的sql语句
- 探讨:Oracle数据库查看一个进程是如何执行相关的实际SQL语句
- 查看oracle用户执行的sql语句历史记录
- pl sql 查看历史执行过的sql记录
- 探讨:Oracle数据库查看一个进程是如何执行相关的实际SQL语句
- Trafodion 查看历史SQL执行情况
- 如何在Oracle数据库中查看哪些用户在执行哪些SQL
- 如何查看PL/SQL执行的历史
- script:查看历史sql执行信息