Sei sulla pagina 1di 9

Consultas SQL tiles para obtener informacin sobre Oracle Database

Vista que muestra el estado de la base de datos: select * from v$instance Consulta que muestra si la base de datos est abierta: select status from v$instance Vista que muestra los parmetros generales de Oracle: select * from v$system_parameter Versin de Oracle: select value from v$system_parameter where name = 'compatible' Ubicacin nombre del fic!ero spfile: select value from v$system_parameter where name = 'spfile' Ubicacin nmero de fic!eros de control: select value from v$system_parameter where name = 'control_files'; "ombre de la base de datos select value from v$system_parameter where name = 'db_name'; Vista que muestra las cone#iones actuales a Oracle: select osuser, username, machine, program

from v$session order by osuser; Vista que muestra el nmero de cone#iones actuales a Oracle agrupado por aplicacin que reali$a la cone#in select program Aplicacion, count(program) Numero_Sesiones from v$session group by program order by Numero_Sesiones desc; Vista que muestra los usuarios de Oracle conectados el nmero de sesiones por usuario

select username Usuario_Oracle, count(username) Numero_Sesiones from v$session group by username order by Numero_Sesiones desc %ropietarios de ob&etos nmero de ob&etos por propietario

select o ner, count(o ner) Numero from dba_ob!ects group by o ner order by Numero desc Diccionario de datos 'inclu e todas las (istas select " from dictionary select table_name from dictionary +uestra los datos de una tabla especificada 'en este caso todas las tablas que lle(en la cadena ,-+%LO,*: select " from A##_A##_$A%#&S 'ere upper(table_name) li(e )*&+,#O*) +uestra los disparadores 'triggers* de la base de datos Oracle Database: tablas de la )ase de Datos*:

select " from A##_$-.//&-S .ablas propiedad del usuario actual: select " from user_tables .odos los ob&etos propiedad del usuario conectado a Oracle: select " from user_catalog Consulta SQL para el D)/ de Oracle que muestra los tablespaces0 el espacio utili$ado0 el espacio libre los fic!eros de datos de los mismos: Select t0tablespace_name 1$ablespace1, t0status 1&stado1, -OUN2(+A3(d0bytes)4567845678,7) 1+% $ama9o1, -OUN2((+A3(d0bytes)4567845678) : (SU+(decode(f0bytes, NU##,6, f0bytes))4567845678),7) 1+% Usados1, -OUN2(SU+(decode(f0bytes, NU##,6, f0bytes))4567845678,7) 1+% #ibres1, t0pct_increase 1* incremento1, SU%S$-(d0file_name,5,;6) 1<ic'ero de datos1 <-O+ 2%A_<-&&_S,A=& f, 2%A_2A$A_<.#&S d, 2%A_$A%#&S,A=&S t >?&-& t0tablespace_name @ d0tablespace_name AN2 f0tablespace_name(A) @ d0tablespace_name AN2 f0file_id(A) @ d0file_id /-OU, %B t0tablespace_name, d0file_name, t0pct_increase, t0status O-2&- %B 5,C 2&S=

%roductos Oracle instalados

la (ersin:

select " from product_component_version

1oles

pri(ilegios por roles:

select " from role_sys_privs

1eglas de integridad

columna a la que afectan:

select constraint_name, column_name from sys0all_cons_columns

.ablas de las que es propietario un usuario0 en este caso ,21,:


S&#&=$ table_o ner, table_name from sys0all_synonyms 'ere table_o ner li(e )?-)

Otra forma ms efecti(a 'tablas de las que es propietario un usuario*:


S&#&=$ 2.S$.N=$ $A%#&_NA+& <-O+ A##_A##_$A%#&S >?&-& O>N&- #.D& )?-)

%armetros de Oracle0 (alor actual

su descripcin:

S&#&=$ v0name, v0value value, decode(.SSBS_+O2.<.A%#&, )2&<&--&2), )$-U&), )<A#S&)) .SSBS_+O2.<.A%#&, decode(v0is2efault, )$-U&), )B&S), )<A#S&), )NO)) 12&<AU#$1, 2&=O2&(.SS&S_+O2.<.A%#&, ).++&2.A$&), )B&S),)<A#S&), )NO), )2&<&--&2), )NO), )B&S)) S&S_+O2.<.A%#&, 2&=O2&(.SSBS_+O2.<.A%#&, ).++&2.A$&), )B&S), )<A#S&), )NO), )2&<&--&2), )B&S),)B&S)) SBS_+O2.<.A%#& , v0description <-O+ E$,A-A+&$&- v >?&-& name not li(e )nls*) O-2&- %B 5

Usuarios de Oracle temporal0333*:

todos sus datos 'fec!a de creacin0 estado0 id0 nombre0 tablespace

Select " <-O+ dba_users $ablespaces y propietarios de los mismosF select o ner, decode(partition_name, null, segment_name, segment_name GG )F) GG partition_name) name, segment_type, tablespace_name,bytes,initial_eHtent, neHt_eHtent, ,=$_.N=-&AS&, eHtents, maH_eHtents from dba_segments

>'ere 5@5 And eHtents I 5 order by J desc, C

4ltimas consultas SQL e&ecutadas en Oracle usuario que las e&ecut:


select distinct vs0sKl_teHt, vs0s'arable_mem, vs0persistent_mem, vs0runtime_mem, vs0sorts, vs0eHecutions, vs0parse_calls, vs0module, vs0buffer_gets, vs0dis(_reads, vs0version_count, vs0users_opening, vs0loads, to_c'ar(to_date(vs0first_load_time, )BBBB:++:224??78F+.FSS)),)++422 ??78F+.FSS)) first_load_time, ra to'eH(vs0address) address, vs0'as'_value 'as'_value , ro s_processed , vs0command_type, vs0parsing_user_id , O,$.+.L&-_+O2& , au0US&-NA+& parseuser from v$sKlarea vs , all_users au 'ere (parsing_user_id M@ 6) AN2 (au0user_id(A)@vs0parsing_user_id) and (eHecutions I@ 5) order by buffer_gets4eHecutions desc

.odos los fic!eros de datos


select name from E$2A$A<.#&

su ubicacin:

5ic!eros temporales:
select name from E$$&+,<.#&

.ablespaces:
select " from E$$A%#&S,A=&

Otras (istas mu interesantes:


select " from E$%A=DU,

select " from E$A-=?.E&

select " from E$#O/

select " from E$#O/<.#&

select " from E$#O/?.S$

select " from E$A-=?.E&2_#O/

select " from E$2A$A%AS&

+emoria S!are6%ool libre usada:


select name,to_number(value) bytes from v$parameter 'ere name @)s'ared_pool_siNe) union all select name,bytes from v$sgastat 'ere pool @ )s'ared pool) and name @ )free memory)

Cursores abiertos por usuario:


select b0sid, a0username, b0value =ursores_Abiertos from v$session a, v$sesstat b, v$statname c 'ere c0name in ()opened cursors current)) and b0statisticO @ c0statisticO and a0sid @ b0sid and a0username is not null

and b0value I6 order by C

/ciertos de la cac!7 'no debe superar el 8 por ciento*:


select sum(pins) &!ecuciones, sum(reloads) <allos_cac'e, trunc(sum(reloads)4sum(pins)"566,7) ,orcenta!e_aciertos from v$librarycac'e 'ere namespace in ()$A%#&4,-O=&2U-&),)SP# A-&A),)%O2B),)$-.//&-));

Sentencias SQL completas e&ecutadas con un te#to determinado en el SQL:


S&#&=$ c0sid, d0piece, c0serialO, c0username, d0sKl_teHt <-O+ v$session c, v$sKlteHt d >?&-& c0sKl_'as'_value @ d0'as'_value and upper(d0sKl_teHt) li(e )*>?&-& =A+,O #.D&*) O-2&- %B c0sid, d0piece

Una sentencia SQL concreta 'filtrado por sid*:


S&#&=$ c0sid, d0piece, c0serialO, c0username, d0sKl_teHt <-O+ v$session c, v$sKlteHt d >?&-& c0sKl_'as'_value @ d0'as'_value and sid @ 56Q O-2&- %B c0sid, d0piece

.ama9o ocupado por la base de datos


select sum(%B$&S)4567845678 +% from 2%A_&3$&N$S

.ama9o de los fic!eros de datos de la base de datos:


select sum(bytes)4567845678 +% from dba_data_files

.ama9o ocupado por una tabla concreta sin incluir los :ndices de la misma
select sum(bytes)4567845678 +%

from user_segments 'ere segment_type@)$A%#&) and segment_name@)NO+%-&$A%#A)

.ama9o ocupado por una tabla concreta inclu endo los :ndices de la misma
select sum(bytes)4567845678 $able_Allocation_+% from user_segments 'ere segment_type in ()$A%#&),).N2&3)) and (segment_name@)NO+%-&$A%#A) or segment_name in (select indeH_name from user_indeHes 'ere table_name@)NO+%-&$A%#A)))

.ama9o ocupado por una columna de una tabla:


select sum(vsiNe()NO+%-&=O#U+NA)))4567845678 +% from NO+%-&$A%#A

-spacio ocupado por usuario:


S&#&=$ o ner, SU+(%B$&S)4567845678 <-O+ 2%A_&3$&N$S +% /-OU, %B o ner

-spacio ocupado por los diferentes segmentos 'tablas0 :ndices0 undo0 rollbac;0 cluster0 333*:
S&#&=$ S&/+&N$_$B,&, SU+(%B$&S)4567845678 <-O+ 2%A_&3$&N$S +% /-OU, %B S&/+&N$_$B,&

-spacio ocupado por todos los ob&etos de la base de datos0 muestra los ob&etos que ms ocupan primero:
S&#&=$ S&/+&N$_NA+&, SU+(%B$&S)4567845678 <-O+ 2%A_&3$&N$S +% /-OU, %B S&/+&N$_NA+&

O-2&- %B 7 2&S=

Obtener todas las funciones de Oracle: "VL0 /)S0 L.1<+0 333:


S&#&=$ distinct ob!ect_name <-O+ all_arguments >?&-& pac(age_name @ )S$AN2A-2) order by ob!ect_name

Obtener los roles e#istentes en Oracle Database:


select " from 2%A_-O#&S

Obtener los pri(ilegios otorgados a un rol de Oracle:


select privilege from dba_sys_privs 'ere grantee @ )NO+%-&_-O#)

Obtener la <% del ser(idor de la base de datos Oracle Database:


select utl_inaddr0get_'ost_address ., from dual

+ostrar datos de auditor:a de la base de datos Oracle 'inicio sesiones*:


select username, action_name, priv_used, returncode from dba_audit_trail

descone#in de

Comprobar si la auditor:a de la base de datos Oracle est acti(ada:


select name, value from v$parameter 'ere name li(e )audit_trail)

Potrebbero piacerti anche