Ver tamaño tablespace temporal en Oracle

Problema:

Necesitamos saber el tamaño que hay usado en el tablespace temporal de nuestra base de datos

Solución:

Para saber el espacio usado por el tablespace temp, nos vale con las vistas clásicas de tamaño de tablespace, para ello tenemos que consultar en la vista dba_temp_free_space

Con la siguiente query sabríamos el espacio usado:

SELECT *
FROM   dba_temp_free_space

 

 

Dar permisos de lectura a un usuario en todos sus objetos

PROBLEMA:

Hemos creado un usuario en Oracle y queremos darle permisos de SELECT en todos los objetos del esquema. Esto supondria tener que ir uno por uno dando permisos de grant.

Solución:

Para ello lo que vamos ha hacer es con una query sacar un fichero txt con todos los grant que luego ejecutaremos directamente.

Por ejemplo nuestro usuario se llama read_user

CREATE USER read_user IDENTIFIED BY lectura;

A continuación ejecutamos la siguiente consulta

 SELECT 'GRANT SELECT ON MySchema.'||object_Name||' TO read_user;' From dba_objects where object_type = 'TABLE' and owner = 'Usuario_propiertario'

Quedando algo de esta manera

RANT SELECT ON Usuario_propiertario.USERPICKERFILTER TO read_user;
GRANT SELECT ON Usuario_propiertario.USERPICKERFILTERGROUP TO read_user;
GRANT SELECT ON Usuario_propiertario.USERPICKERFILTERROLE TO read_user;
GRANT SELECT ON Usuario_propiertario.PROJECTVERSION TO read_user;
GRANT SELECT ON Usuario_propiertario.VERSIONCONTROL TO read_user;
GRANT SELECT ON Usuario_propiertario.VOTEHISTORY TO read_user;
GRANT SELECT ON Usuario_propiertario.WORKFLOWSCHEME TO read_user;
GRANT SELECT ON Usuario_propiertario.WORKFLOWSCHEMEENTITY TO read_user;
GRANT SELECT ON Usuario_propiertario.JIRAWORKFLOWSTATUSES TO read_user;
GRANT SELECT ON Usuario_propiertario.APP_USER TO read_user;

Con esto nos ahorraríamos bastante tiempo

Hacer un export (expdp) de una tabla de oracle restringiendo valores (query)

Objetivo

Añadir a nuestro export la posibilidad de filtrar datos mediante una consulta.

¿Cómo hacerlo?

En ocasiones necesitamos realizar un export(expdp) de un rango de valores concretos de una tabla en oracle. Para ello, al igual que podemos realizar consultas con la cláusula where para restringir la búsqueda con unos valores determinados, podemos incluir dentro de la opción query en nuestro export (expdp) cola cláusula where para hacerlo.

Para evitar errores del tipo:

ORA-39001: valor de argumento no valido
ORA-39035: Ya se ha especificado el filtro de datos SUBQUERY.

que muchas veces se deben a que no escapamos bien los valores, es recomendable crearnos un parfile donde se eliminarán estos problemas de sintaxis. Continuar leyendo “Hacer un export (expdp) de una tabla de oracle restringiendo valores (query)”