Advertisement
deeejay

Oracle - SQL Admin Queries

Dec 8th, 2015 (edited)
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.06 KB | None | 0 0
  1. Grant access to Oracle table
  2. grant select,insert,update,delete on data_profiling.YOURTABLE to USERS611;
  3. GRANT SELECT ON EDWA.WRK_MERGED_DATA TO EDWADMIN_ROLE;
  4.  
  5. Revoke access to Oracle table
  6. REVOKE SELECT ON EDW.WRK_JOB_TO_LINK_WORKSHEET FROM USERS611;
  7. REVOKE SELECT ON EDW.WRK_JOB_TO_LINK_WORKSHEET FROM USERS611;
  8. REVOKE SELECT ON EDW.TAB_GROUP_USERS FROM USERS611;
  9.  
  10. View users table privileges
  11. SELECT * FROM USER_TAB_PRIVS WHERE GRANTEE = 'USERS611';
  12.  
  13. View users other privileges
  14. SELECT * FROM USER_ROLE_PRIVS WHERE USERNAME = 'USERS611';
  15. SELECT * FROM USER_SYS_PRIVS WHERE USERNAME = 'USERS611';
  16.  
  17. Get historic query statistics (1 month retention)
  18. SELECT hist.session_id, HIST.SAMPLE_TIME, HIST.PROGRAM, HIST.MACHINE, HIST.SQL_OPNAME, U.ACCOUNT_STATUS, U.USERNAME, HIST.SQL_ID, hist.MODULE, hist.client_id, hist.action, SQL.SQL_TEXT
  19. FROM
  20. DBA_HIST_ACTIVE_SESS_HISTORY HIST
  21. INNER JOIN DBA_HIST_SQLTEXT SQL ON HIST.SQL_ID = SQL.SQL_ID
  22. INNER JOIN DBA_USERS U ON HIST.USER_ID = U.USER_ID
  23. WHERE HIST.SQL_OPNAME='SELECT' AND UPPER(sql.sql_text) LIKE '%FCT_ENCOUNTER%';
  24.  
  25. Get Oracle version
  26. SELECT * FROM v$version;
  27.  
  28. Display size of table
  29. SELECT SEGMENT_NAME TABLE_NAME,
  30. SUM(BYTES)/(1024*1024) TABLE_SIZE_MB
  31. FROM USER_EXTENTS
  32. WHERE SEGMENT_TYPE='TABLE'
  33. AND SEGMENT_NAME LIKE 'AHPN_%'
  34. GROUP BY SEGMENT_NAME
  35. ORDER BY SUM(BYTES)/(1024*1024) DESC;
  36.  
  37. Search for a table by name
  38. SELECT * FROM all_tables WHERE table_name LIKE '%HCM_%';
  39.  
  40. Search for all user tables
  41. SELECT table_name
  42. FROM user_tables
  43. WHERE rownum < 10
  44. ORDER BY table_name;
  45.  
  46. View all tables and owners
  47. SELECT table_name, owner FROM all_tables ORDER BY owner, table_name;
  48.  
  49. Find all tables that are using a specific column name
  50. select table_name from all_tab_columns where column_name = 'column_name_here';
  51.  
  52.  
  53. Get logged on users expiry date
  54. SELECT * FROM USER_USERS;
  55. SELECT * FROM dba_users;
  56.  
  57. Alter user password
  58. ALTER USER user_name IDENTIFIED BY new_password REPLACE old_password;
  59.  
  60. View role privileges
  61. SELECT * FROM USER_ROLE_PRIVS WHERE USERNAME='PROD_ROLE';
  62. SELECT * FROM USER_TAB_PRIVS WHERE GRANTEE = 'PROD_ROLE';
  63. SELECT * FROM USER_SYS_PRIVS WHERE USERNAME = 'PROD_ROLE';
  64.  
  65. View user sessions and application info
  66. select s.sid, s.serial#, p.spid, s.username, s.schemaname, s.program, s.terminal, s.osuser, s.machine
  67. from v$session s
  68. join v$process p
  69. on s.paddr = p.addr
  70. where s.type != 'BACKGROUND'
  71. and s.status = 'ACTIVE'
  72.  
  73. View ORACLE RAC user sessions and application info
  74. select s.inst_id, s.sid, s.serial#, p.spid, s.username, s.schemaname, s.program, s.terminal, s.osuser, s.machine
  75. from Gv$session s
  76. join Gv$process p
  77. on s.paddr = p.addr
  78. and s.inst_id = p.inst_id
  79. where s.type != 'BACKGROUND'
  80. and s.status = 'ACTIVE'
  81.  
  82. View query elapsed time
  83. select sesion.sid,
  84. sesion.username,
  85. sesion.osuser,
  86. sesion.machine,
  87. optimizer_mode,
  88. hash_value,
  89. address,
  90. cpu_time,
  91. elapsed_time,
  92. sql_text
  93. from v$sqlarea sqlarea, v$session sesion
  94. where sesion.sql_hash_value = sqlarea.hash_value
  95. and sesion.sql_address = sqlarea.address
  96. and sesion.username is not null;
  97.  
  98. View query elapsed time (detailed)
  99. select sesion.sid,
  100. sesion.username,
  101. sesion.osuser,
  102. sesion.machine,
  103. sqlarea.parsing_schema_name,
  104. sqlarea.first_load_time,
  105. sqlarea.last_load_time,
  106. sqlarea.last_active_time,
  107. sqlarea.rows_processed,
  108. sqlarea.optimizer_mode,
  109. sqlarea.hash_value,
  110. sqlarea.address,
  111. sqlarea.cpu_time,
  112. sqlarea.elapsed_time,
  113. sqlareasql_text
  114. from v$sqlarea sqlarea
  115. left outer join v$session sesion
  116. on sesion.sql_hash_value = sqlarea.hash_value
  117. and sesion.sql_address = sqlarea.address
  118. -- WHERE sesion.username is not null
  119. WHERE sql_text LIKE 'SELECT "Custom SQL Query"."AMLOS"%';
  120.  
  121. Cancel a user's session
  122. alter system kill session 'sid,serial#';
  123.  
  124. Terminate a user's session
  125. alter system kill session 'sid,serial#' immediate;
  126.  
  127. View queries for a specific table
  128. SELECT SYS.V_$SQL.SQL_ID, SYS.V_$SESSION.SQL_ID, SYS.V_$SESSION.STATUS, SYS.V_$SQL.SQL_TEXT, SYS.V_$SQL.EXECUTIONS, SYS.V_$SQL.CHILD_ADDRESS, SYS.V_$SQL.ROWS_PROCESSED, SYS.V_$SQL.BUFFER_GETS, SYS.V_$SQL.MODULE, SYS.V_$SQL.LOADS, SYS.V_$SQL.FIRST_LOAD_TIME, SYS.V_$SQL.LAST_ACTIVE_TIME, SYS.V_$SESSION.SID, SYS.V_$SESSION.SADDR, SYS.V_$SESSION.SQL_CHILD_NUMBER, SYS.V_$SESSION.PREV_SQL_ADDR, SYS.V_$SESSION.LOGON_TIME, SYS.V_$SESSION.USER#, SYS.V_$SESSION.PROCESS, SYS.V_$SESSION.PROGRAM, SYS.V_$SESSION.BLOCKING_SESSION_STATUS, SYS.V_$SESSION.EVENT
  129. FROM SYS.V_$SQL, SYS.V_$SESSION
  130. WHERE SYS.V_$SQL.SQL_ID = SYS.V_$SESSION.SQL_ID(+)
  131. AND SYS.V_$SQL.SQL_TEXT LIKE '%some_table_name%'
  132.  
  133. View queries by a specific user
  134. SELECT sess.sid,
  135. sess.username,
  136. sqla.optimizer_mode,
  137. sqla.hash_value,
  138. sqla.address,
  139. sqla.cpu_time,
  140. sqla.elapsed_time,
  141. sqla.sql_text
  142. FROM v$sqlarea sqla, v$session sess
  143. WHERE sess.sql_hash_value = sqla.hash_value
  144. AND sess.sql_address = sqla.address
  145. AND sess.username = 'TABLEAU_READER'
  146.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement