Gestión de Instancias, Roles, Privilegios y Espacio de Almacenamiento en Oracle
Resumen
El documento repasa conceptos básicos de administración de Oracle: los ficheros de configuración tnsnames.ora e init$ORACLE_SID.ora, la diferencia entre instancia y base de datos frente a MySQL, y los roles, perfiles, privilegios y recursos. También explica la organización del almacenamiento (tablespaces, segmentos, extents, datafiles y bloques) y la diferencia entre vistas dinámicas y estáticas.
Puntos clave
- tnsnames.ora configura el cliente contra el servidor, mientras que init$ORACLE_SID.ora configura la instancia.
- En Oracle, una instancia es la combinación del proceso del servidor y la memoria compartida asignada a él.
- Los roles agrupan privilegios para asignarlos fácilmente a varios usuarios.
- Los perfiles limitan los recursos del sistema o de la base de datos disponibles para un usuario.
- Los tablespaces son unidades lógicas de almacenamiento formadas por datafiles del sistema operativo.
- Las vistas dinámicas (v$ y gv$) ofrecen estadísticas en tiempo real; las estáticas (user_*, all_*, dba_*) muestran información de objetos según el alcance del usuario.
Ficheros de Configuración en Oracle
fichero tnsnames.ora: realiza la configuración del cliente contra el servidor.
fichero init$ORACLE_SID.ora: realiza la configuración de la instancia.
Instancias y Bases de Datos en MySQL vs. Oracle
MySQL: Una instancia se refiere al proceso del servidor MySQL en ejecución. Al instalar y ejecutar MySQL en un servidor, se crea una instancia de MySQL.
Oracle: Una instancia es la combinación del proceso del servidor Oracle y la memoria compartida asignada al servidor.
Roles en Oracle
Los roles son grupos de privilegios que facilitan la gestión de permisos. Se pueden otorgar privilegios a un rol y luego asignar ese rol a múltiples usuarios.
Perfiles en Oracle
Los perfiles limitan la cantidad de recursos del sistema o de la base de datos disponibles para un usuario.
Privilegios en Oracle
Los privilegios son permisos específicos otorgados a los usuarios para acceder y manipular objetos en la base de datos.
Recursos en Oracle
Los recursos son los límites y cuotas asignados a los usuarios para limitar su uso de la base de datos en términos de CPU, espacio de almacenamiento, sesiones, etc.
Gestión del Espacio de Almacenamiento en Oracle
Oracle organiza los datos en tablespaces, segmentos y bloques.
Tablespaces
Son unidades lógicas de almacenamiento que contienen archivos de datos del sistema operativo llamados datafiles.
Segmentos y Extents
Los segmentos son conjuntos de bloques de datos contiguos en un tablespace. Un segmento contiene datos para una estructura específica en la base de datos y está compuesto por uno o más extents.
Datafiles y Bloques
Los datafiles son archivos del sistema asociados con un tablespace y almacenan datos. Los bloques de datos son las unidades de almacenamiento más pequeñas y almacenan datos en los datafiles.
Vistas Estáticas vs. Vistas Dinámicas en Oracle
Vistas Dinámicas
Las vistas dinámicas, cuyos nombres empiezan por v$ y gv$, proporcionan estadísticas en tiempo real del SGBD.
Vistas Estáticas
Las vistas estáticas empiezan por los prefijos user_*, all_* y dba_*. Están basadas en vistas internas del catálogo como USER$. Hay aproximadamente 1800 vistas estáticas.
Diferencias entre Vistas Estáticas
- User_*: muestran información de los objetos del usuario actual.
- All_*: muestran información de los objetos a los que el usuario actual tiene acceso.
- Dba_*: muestran información de todos los objetos de la base de datos. Solo los usuarios con privilegios de DBA pueden acceder a estas vistas.
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué diferencia hay entre una instancia en MySQL y en Oracle?
En MySQL, una instancia es el proceso del servidor en ejecución. En Oracle, una instancia es la combinación del proceso del servidor y la memoria compartida asignada al servidor.
¿Qué es un rol en Oracle?
Un rol es un grupo de privilegios que facilita la gestión de permisos. Se otorgan privilegios a un rol y después se asigna ese rol a múltiples usuarios.
¿Qué diferencia hay entre las vistas user_*, all_* y dba_*?
Las vistas user_* muestran objetos del usuario actual, las all_* muestran objetos a los que el usuario tiene acceso y las dba_* muestran todos los objetos de la base de datos, solo accesibles con privilegios de DBA.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.