T2 - BBDD Flashcards
(47 cards)
FUNCIONES DEL DBA ¿Qué es un DBA
y por quién está formado?
-
DBA
significa Database Administrator (Administrador de Bases de Datos) - Un
DBA
es el Administrador de Bases de Datos - Se encarga de que la base de datos funcione bien, esté protegida y tenga buen rendimiento
- En sistemas pequeños puede ser solo una persona
- En sistemas grandes, puede estar formado por un
equipo de especialistas
(por ejemplo: enseguridad
,rendimiento
,copias
, etc.)
FUNCIONES DEL DBA ¿Qué diferencia hay entre un DBA
y un SGBD
?
- El
DBA
es la persona o equipo que administra la base de datos - El
SGBD
(Sistema de Gestión de Bases de Datos) es el programa que permite crear, gestionar y consultar bases de datos (Oracle
,MySQL
,PostgreSQL
…) - El
DBA
usa elSGBD
como herramienta para realizar su trabajo
FUNCIONES DEL DBA ¿Qué ventajas tienen para el DBA
los índices
en las bases de datos?
- Permiten acceder a los datos más rápido, mejorando el
rendimiento
- Ayudan al
DBA
a optimizar consultas y reducir el uso de recursos - Son útiles en campos que se consultan o buscan con frecuencia (como
ID
,nombre
, etc.) - Pueden hacer más eficiente el
mantenimiento
de la base de datos
FUNCIONES DEL DBA ¿Para qué sirve la sentencia EXPLAIN
en monitorización
y rendimiento
?
- La sentencia
EXPLAIN
muestra cómo elSGBD
va a ejecutar una consulta - Ayuda al
DBA
a analizar elplan de ejecución
y detectar posibles problemas - Permite ver si se están usando bien los
índices
o si hay pasos innecesarios - Es clave para mejorar el
rendimiento
de las consultas
FUNCIONES DEL DBA ¿Quién crea o define los usuarios
y sus roles
, el DBA
o el SGBD
?
- El
SGBD
tiene los comandos y mecanismos para crear usuarios y roles - Pero es el
DBA
quien los define y configura según las necesidades del sistema - El
DBA
decide losprivilegios
, losaccesos
y laorganización de roles
- El
SGBD
solo ejecuta lo que elDBA
le indica
FUNCIONES DEL DBA ¿Qué es una migración
entre base de datos y código? ¿Qué incluye
? ¿Mediante qué elemento se completa
?
- Es el proceso de
actualizar
la estructura o los datos de la base de datos para que coincidan con los cambios en elcódigo
de la aplicación - Una migración
incluye
cambios entablas
,campos
,relaciones
, etc. - Normalmente la prepara el
equipo de desarrollo
- El
DBA
puede revisarla, ajustarla o aplicarla en producción - Se
completa
mediantescripts
de migración que se ejecutan de forma ordenada
FUNCIONES DEL DBA ¿Qué herramientas de migración
existen en Java
?
-
Flyway
: gestiona versiones de la base de datos mediantescripts SQL
ordenados -
Liquibase
: permite definir los cambios en ficheros tipoXML
,YAML
oJSON
, y los aplica al ejecutar - Ambas ayudan a mantener sincronizados el
código
y laestructura de la base de datos
- Son muy usadas por desarrolladores, pero el
DBA
puede revisarlas y controlarlas en producción
VISTAS ¿Qué es una vista
en un entorno de bases de datos?
- Una
vista
es unaconsulta guardada
que se comporta como si fuera una tabla - No almacena datos, solo muestra datos de otras tablas según una condición
- Se usa para simplificar el acceso a los datos o para
ocultar columnas sensibles
- El
DBA
puede crear vistas para dar acceso limitado a los usuarios
ORACLE ¿Cuál es el puerto
por defecto de Oracle
?
- El
puerto
por defecto es el1521
- También pueden usarse
2483
(sin cifrado) y2484
(con cifrado TLS)
ORACLE ¿Qué es una instancia
en Oracle
?
- Es el conjunto de
memoria
yprocesos
que permiten trabajar con unaúnica base de datos
ORACLE En Oracle, si hay una única base de datos, ¿cómo se llaman las partes
que gestionan cosas distintas?
- Se llaman
esquemas
- Cada
esquema
pertenece a unusuario
, que no tiene por qué ser una persona (puede ser una aplicación, un módulo, etc.) - Cada
esquema
tiene sus propios objetos (tablas
,vistas
, etc.) - Permiten organizar los datos dentro de una misma base de datos
ORACLE ¿Qué es el SGA
en Oracle?
-
SGA
significa System Global Area - Es la
memoria compartida
de la instancia - Guarda
datos en caché
,planes de ejecución
y otra info que mejora elrendimiento
ORACLE ¿Qué son DBW
y LGWR
en el contexto del SGA
?
-
DBW
(Database Writer): escribe losbloques modificados
del SGA en disco -
LGWR
(Log Writer): guarda en disco losregistros de cambios
(redologs) para asegurar la recuperación
ORACLE ¿Para qué sirve el PGA
y cómo se relaciona con los procesos de usuario
? ¿En qué se diferencia del SGA
?
-
PGA
significa Program Global Area - Es una zona de
memoria privada
para cadaproceso de usuario
- Un
proceso de usuario
es una conexión activa a la base de datos (como un cliente ejecutando una consulta) - El
PGA
guarda datos temporales, variables y buffers de trabajo - A diferencia del
SGA
, no se comparte
ORACLE ¿Qué diferencia hay entre la estructura lógica
y la estructura física
en Oracle?
Archivos de datos
(o datafiles
): es donde un tablespace
vuelca sus datos
(esos datos pueden estar en uno o más datafiles
)
➖
🔼Bloques
: se corresponden con los bloques de la parte lógica
📝 ➖🔼 indica una relación 1:N (uno a muchos)
ORACLE ¿Cuáles son los elementos de la estructura lógica
en Oracle?
Tablespace
➖
🔼Segmento
: tabla, índice, especiales (UNDO
, LOB
…)
➖
🔼Extensión
: conjunto de bloques contiguos
➖
🔼Bloque
: unidad más pequeña de almacenamiento lógico
📝 ➖🔼 indica una relación 1:N (uno a muchos)
ORACLE ¿Cuáles son los elementos de la estructura física
en Oracle?
-
Archivos de datos
(odatafiles
): es donde untablespace
vuelca sus datos
(esos datos pueden estar en uno o másdatafiles
) -
Bloques
: se corresponden con los bloques de la parte lógica
ORACLE ¿Con qué sentencia se crea una tablespace
en Oracle? ¿Dónde se almacenan? ¿Qué quieren decir las palabras SIZE
, AUTOEXTEND
, NEXT
y MAXSIZE
?
- La sentencia es
CREATE TABLESPACE nombre_tablespace
- Se almacenan en un
archivo físico
llamadodatafile
-
SIZE
: tamaño inicial del archivo -
AUTOEXTEND
: permite que el archivo crezca automáticamente -
NEXT
: cuánto aumentará cada vez que crezca -
MAXSIZE
: tamaño máximo que puede alcanzar el archivo
ORACLE ¿Con qué sentencia se crea una tabla
en Oracle?
¿Para qué sirve la cláusula STORAGE
?
- La sentencia básica es
CREATE TABLE nombre_tabla (...)
-
STORAGE
define cómo se gestionará el espacio físico de la tabla - Permite ajustar parámetros como
INITIAL
,NEXT
,MAXEXTENTS
yPCTINCREASE
- Es útil para tablas grandes o que crecen rápido
🧠 RECUERDA unatabla
es un tipo desegmento
que pertenece a unatablespace
ORACLE ¿Cómo se crea un usuario
en Oracle y qué permisos necesita?
-
CREATE USER nominas_owner IDENTIFIED BY password
: crea el usuario y le asigna una contraseña -
DEFAULT TABLESPACE ts_data
: asigna dónde se guardarán por defecto sus objetos -
TEMPORARY TABLESPACE ts_temp
: indica el espacio para operaciones temporales - 🧠⚠️ Es necesario darle permisos con
GRANT
, por ejemplo:GRANT CONNECT TO nominas_owner
GRANT CREATE SESSION, CREATE TABLE TO nominas_owner
ORACLE ¿Qué herramientas gráficas
se usan para trabajar con Oracle?
-
Toad
: muy popular, permite gestionar usuarios, ejecutar consultas, ver objetos, etc. -
Oracle SQL Developer
: herramienta oficial de Oracle, gratuita y muy completa - También existen otras como
DBeaver
oDataGrip
, compatibles con Oracle
ORACLE ¿Qué herramientas línea de comandos
se usan para trabajar con Oracle?
-
SQL*Plus
: la herramienta clásica de Oracle para ejecutar comandos SQL desde consola -
RMAN
(Recovery Manager): se usa para hacer copias de seguridad y recuperación -
Data Pump
(expdp
/impdp
): utilidades para exportar e importar datos
ORACLE ¿Para qué sirve el rol CONNECT
y cómo se asigna a un usuario?
- Es un
rol predefinido
en Oracle - Permite a un usuario conectarse a la base de datos (
CREATE SESSION
) - También puede incluir permisos como
CREATE TABLE
,CREATE VIEW
, etc. - Para asignarlo:
GRANT CONNECT TO nombre_usuario
ORACLE ¿Qué es Exadata
?
-
Exadata
es un sistemafísico
creado por Oracle - Está optimizado para ejecutar bases de datos Oracle con
alto rendimiento
- Incluye servidores, almacenamiento, red y software ya integrados
- Se usa en entornos críticos por su
velocidad
,fiabilidad
yrecuperación avanzada