El objetivo de este libro es proporcionar una visión amplia y detallada de Oracle, tanto desde el punto de vista del DBA (DataBase Administrator) como desde el punto de vista del desarrollador. Ello, unido a su concepción modular y al gran número de ejercicios prácticos resueltos y consejos de la vida diaria que ofrece, lo convierten en un manual de consulta para el profesional, pero también en un libro de texto para la docencia universitaria o para la preparación de las certificaciones oficiales de Oracle. CAPÍTULO 1. INTRODUCCIÓN CAPÍTULO 2. ORACLE NET CAPÍTULO 3. HERAMIENTAS PARA EL DBA CAPÍTULO 4. INSTAN CIA DE LA BASE DE DATOS CAPÍTULO 5. ESTRUCTURAS DE MEMORIA CAPÍTULO 6. PROCESOS DE RESPALDO CAPÍTULO 7. FICHEROS DE LA BASE DE DATOS CAPÍTULO 8. ESTRUCTURA LÓGICA CAPÍTULO 9. EL OPTIMIZADOR DE CONSULTAS CAPÍTULO 10. EL ESQUEMA DE LA BASE DE DATOS CAPÍTULO 11. TIPOS DE DATOS CAPÍTULO 12. TABLAS CAPÍTULO 13. CLUSTERS CAPÍTULO 14. INTEGRIDAD DE LOS DATOS
1.1 A QUIÉN VA DESTINADO ESTE LIBRO
1.2 ESTRUCTURA DE ESTE LIBRO
1.3 LEYENDAS
1.4 BASE DE DATOS DE EJEMPLO
2.1 PILA DE PROTOCOLOS DE ORACLE NET
2.2 CONEXIONES Y SESIONES
2.3 ESTABLECIMIENTO DE UNA SESIÓN
2.4 CONEXIÓN A UNA INSTANCIA LOCAL
2.5 RESOLUCIÓN DE NOMBRES
2.5.1 Easy Connect
2.5.2 Nombrado local
2.5.3 Nombrado por directorio y nombrado externo
2.6 ORACLE NET LISTENER
2.7 REGISTRO DE LA BASE DE DATOS
2.7.1 Registro estático
2.7.2 Registro dinámico
2.8 CONFIGURACIONES DE CONEXIÓN
2.8.1 Conexión de servidor dedicado
2.8.2 Conexión de servidor compartido
2.8.3 Configuración del servidor compartido
2.9 ERRORES DE CONEXIÓN MÁS FRECUENTES
3.1 HERRAMIENTAS DE INSTALACIÓN Y CONFIGURACIÓN
3.2 HERRAMIENTAS ORACLE NET SERVICES
3.3 ORACLE ENTERPRISE MANAGER
3.4 SQL *PLUS
3.5 HERRAMIENTAS PARA EL MOVIMIENTO Y ANÁLISIS DE DATOS
3.5.1 SQL *Loader
3.5.2 Oracle Data Pump
3.5.3 Oracle LogMiner
3.5.4 ADRCI (ADR Command Interpreter)
3.6 GESTIÓN DE RECURSOS Y PLANIFICACIÓN DE TAREAS
3.6.1 Gestión de recursos
3.6.2 Planificador de Oracle
3.7 EJERCICIOS PRÁCTICOS
4.1 CONFIGURACIONES DE LA INSTANCIA
4.1.1 Identificador del sistema
4.1.2 Parámetros de inicialización
4.1.3 Ficheros de parámetros (PFILE)
4.1.4 Ficheros de parámetros en el servidor (SPFILE)
4.1.5 Modificación de los parámetros de inicialización
4.2 ARRANQUE Y PARADA DE LA INSTANCIA
4.2.1 Arranque de la instancia
4.2.2 Parada de la instancia
4.3 CHECKPOINTS
4.4 F ICHEROS DE DIAGNÓSTICO
4.4.1 El alert log
4.5 EJERCICIOS PRÁCTICOS
5.1 UGA
5.2 PGA
5.2.1 Componentes de la PGA
5.3 SGA
5.3.1 Database buffer caché
5.3.2 Buffer de redo log
5.4 SHARED POOL
5.4.1 Caché de librería
5.4.2 Asignación y reutilización de memoria en el shared pool
5.4.3 Caché del diccionario de datos
5.4.4 Caché de resultados del servidor
5.4.5 Pool reservado
5.5 LARGE POOL
5.6 JAVA POOL
5.7 STREAMS POOL
5.8 SGA FIJA
5.9 ÁREAS DE CÓDIGO DE PROGRAMA
5.10 GESTIÓN DE MEMORIA
5.10.1 Gestión de la SGA
5.11 GESTIÓN DE LA PGA
5.12 GESTIÓN AUTOMÁTICA DE MEMORIA
5.13 RESUMEN DE LOS MÉTODOS DE GESTIÓN DE MEMORIA
5.14 MEMORY ADVISORS
5.15 EJERCICIOS PRÁCTICOS
6.1 PROCESOS DE RESPALDO
6.1.1 PMON (Process Monitor)
6.1.2 SMON (System Monitor)
6.1.3 DB Wn (Database Writer)
6.1.4 LG WR (Log Writer)
6.1.5 CKPT (Checkpoint)
6.1.6 P rocesos de mantenimiento (MMON y MMNL)
6.1.7 RECO (Recoverer)
6.1.8 ARCn (Archiver)
6.1.9 CJQ0 y Jnnn (Job Queue)
6.1.10 FBD A (Flashback Data Archiver)
6.1.11 MCO (Space Management Coordinator)
6.2 PROCESOS ESCLAVOS
6.2.1 P rocesos esclavos de E/S
6.2.2 Procesos esclavos de consulta paralela
6.3 EJERCICIOS PRÁCTICOS
7.1 ALMACENAMIENTO DE LOS FICHEROS DE LA BASE DE DATOS
7.1.1 Oracle Automatic Storage Management (Oracle ASM)
7.2 FICHEROS DE DATOS
7.2.1 Ficheros de datos permanentes y temporales
7.2.2 Ficheros de datos on-line y off-line
7.2.3 Estructura de un fichero de datos
7.2.4 Tamaño de los ficheros de datos
7.2.5 Renombrado de ficheros
7.3 F ICHEROS DE CONTROL
7.3.1 Múltiples ficheros de control
7.3.2 Estructura de los ficheros de control
7.4 F ICHEROS DE REDO LOG
7.4.1 Escritura en los redo logs on-line
7.4.2 Log switch
7.4.3 Múltiples copias de los on-line redo logs
7.4.4 Ficheros de log archivados
7.4.5 Estructura del redo log on-line
7.5 OTROS FICHEROS DE LA BASE DE DATOS
7.6 EJERCICIOS PRÁCTICOS
8.1 ESPACIOS DE TABLAS
8.1.1 Espacio de tablas SYSTEM
8.1.2 El espacio de tablas SYSAUX
8.1.3 Creación y gestión de espacios de tabla
8.2 SEGMENTOS
8.2.1 Segmentos de usuario
8.2.2 Segmentos temporales
8.2.3 Segmentos de undo
8.2.4 Gestión del espacio de almacenamiento en los segmentos y HWM
8.3 EXTENSIONES
8.3.1 Reserva de extensiones
8.3.2 Liberación de extensiones
8.3.3 Parámetros de almacenamiento de las extensiones
8.4 BLOQUES DE DATOS
8.4.1 Tamaño del bloque
8.4.2 Formato del bloque
8.4.3 Compresión de bloques de datos
8.4.4 Gestión de espacio en bloques de datos
8.5 EJERCICIOS PRÁCTICOS
9.1 COMPONENTES DEL OPTIMIZADOR
9.1.1 Caminos de acceso
9.1.2 Estadísticas del optimizador
9.1.3 Pistas del optimizador
9.2 PROCESAMIENTO DE CONSULTAS
9.2.1 Parseado de la consulta
9.2.2 Optimización del SQL
9.2.3 Generación de filas fuente
9.2.4 Ejecución de la sentencia SQL
10.1 ALMACENAMIENTO DE LOS OBJETOS DE ESQUEMA
10.2 DEPENDENCIAS ENTRE OBJETOS DEL ESQUEMA
10.2.1 Objetos no válidos
10.3 NOMBRADO DE LOS OBJETOS DEL ESQUEMA
10.4 ESPACIO DE NOMBRES DE LOS OBJETOS DEL ESQUEMA
10.5 ESQUEMAS SYS Y SYSTEM
11.1 TIPOS DE DATOS CARÁCTER
11.1.1 VARCHAR2 y CHAR
11.1.2 NVARCHAR2 y NCHAR
11.1.3 Escapado de cadenas. El operador q
11.2 TIPOS DE DATOS NUMÉRICOS
11.2.1 Tipo de datos NUMBER
11.2.2 Tipo de datos en coma flotante
11.3 TIPOS DE DATOS HORARIOS
11.3.1 Tipo de datos DATE
11.3.2 Tipo de datos TIMESTAMP
11.3.3 Funciones de conversión para tipos de datos horarios
11.4 TIPOS DE DATOS ROWID
11.5 DATOS NO ESTRUCTURADOS
11.5.1 XML en Oracle
11.5.2 LOB
11.5.3 O racle Text
11.6 O RACLE MULTIMEDIA
11.7 O RACLE SPATIAL
11.8 DA TOS CON TIPO DINÁMICO
11.9 R EPRESENTACIÓN DE EXPRESIONES CONDICIONALES COMO DATOS
11.10 CONVERSIÓN DE TIPOS
11.11 EXPRESIONES SQL Y OPERADORES
12.1 FILAS Y COLUMNAS
12.2 RESTRICCIONES DE INTEGRIDAD
12.3 CREACIÓN DE TABLAS
12.4 TABLAS ORIENTADAS A OBJETOS
12.5 TABLAS TEMPORALES
12.6 TABLAS EXTERNAS
12.6.1 Creación de tablas externas
12.6.2 Drivers de acceso
12.7 ALMACENAMIENTO DE LAS TABLAS
12.8 ALMACENAMIENTO DE FILAS
12.9 COMPRESIÓN DE TABLAS
12.9.1 Almacenamiento de la tabla comprimida
12.9.2 Estimación del factor de compresión
12.9.3 Mejora del factor de compresión
12.9.4 Declaración de la compresión
12.10 ALMACENAMIENTO DE VALORES NULOS
12.11 CARGA DE DATOS
12.11.1 Carga convencional
12.11.2 Carga por direct-path
12.12 EJERCICIOS PRÁCTICOS
13.1 CLUSTERS POR ÍNDICE
13.1.1 Diseño del cluster
13.1.2 Creación de un cluster
13.1.3 Creación de índices para el cluster
13.1.4 Creación de las tablas agrupadas
13.1.5 Modificación de clusters
13.1.6 Modificación de las tablas del cluster
13.1.7 Borrado de clusters
13.2 CLUSTERS POR HASH
13.2.1 Creación del cluster por hash
13.2.2 Consultas en clusters por hash
13.2.3 Tipos de cluster por hash
13.2.4 Almacenamiento de cluster por hash
13.3 EJERCICIOS PRÁCTICOS
14.1 T IPOS DE RESTRICCIONES DE INTEGRIDAD
14.1.1 Restricciones NOT NUL