Está en la página 1de 9

In: Modelamiento de base de datos (1)iii, Continuidad en Ingeniería en Informática, IACC Chile.

, 2020-2021

ADMBD1302-608-2020 – Modelamiento de base de


datos (1)–iii
Felipe Alfonso González L.
Continuidad en Ingeniería en Informática, IACC Chile., 2020-2021

Instituto Superior de Artes y


Ciencias de la Comunicación,
IACC
Av. Salvador 1318, Metro Santa
Isabel, Providencia, Santiago.
Chile.
[f. | alfonso]@res-ear.ch – http://felipe.jlengineering.se/

Introducción al periodo
El uso de bases de datos como medios de Es también importante considerar que los componentes de
almacenamiento de información ha tenido un DBMS, son:
un incesante desarrollo durante las últimas
1- Hardware: dispositivos físicos, servidores o
dos décadas. Dada la relevancia de la
estaciones.
información para la sociedad moderna,
2- Software: Es si mismo el DBMS, y es importante a
garantizar la seguridad y el buen manejo de
considerar el O.S. a operar, las aplicaciones de
la misma se ha convertido en un aspecto de
programas, y programas utilitarios.
vital interés para la sociedad moderna.
3- Usuarios: Son usuarios de un DBMS, como por ej.;
En un principio, las bases de datos fueron Administrador del sistema, Administrador de
utilizadas para almacenar información en BB.DD., y diseñadores de BB.DD.
formato digital de una manera muy 4- Analistas y Desarrolladores
conveniente, facilitando su recuperación y 5- Procedimientos: Son reglas y normas a controlar
manipulación para generar reportes basados para mantener de manera integra los datos.
en los datos almacenados. Esta tendencia fue 6- Datos: Son el componente primario para el
incrementándose a una velocidad increíble, desarrollo de información relevante.
lo cual hizo necesario desarrollar nuevos
métodos y técnicas para manipular dichos Es muy importante considerar como fundamentales en toda
datos. La teoría de base datos toma la esta operación, con profesionales adecuados, que tal como se
información de las organizaciones y la mencionan en el punto 4 son los analistas y desarrolladores,
almacena para que posteriormente los que tienen altas habilidades para el desarrollo de software, y
usuarios de la misma puedan recuperarla y son fundamentales para la toma de decisiones.
procesarla de una manera por demás fácil e
intuitiva. El proceso de instalación de un DBMS es un tema complejo
1. y delicado. Estos procesos deben considerar:
La importancia de manejar un DBMS, su arquitectura e
instalación es fundamental para manejar y proteger 1- Lectura del manual de instalación.
información. Para esto, existen mecanismos, que 2- Requisitos sobre el O.S.
posibilitaran el manejo de esta de una manera rápida y 3- Considerar especificaciones técnicas como por ej.,
expedita. Es de gran importancia y que se imponen en estos tipo de procesador a usar, etc.
procesos y operaciones son estandarizar las bases de datos 4- Chequeo de cantidad optima de memoria RAM y
como por ej. Un modelo relacional de BBDD. El DBMS H.D.
ofrecerá a la compañía la posibilidad de almacenar y
manejar con alto grado de eficiencia, abstracción, Ahora bien, para proceder con la configuración de un
flexibilidad e incluso con facilidad, bases de datos. DBMS, se debe considerar y proceder con lo Sgte.:
Existen componentes fundamentales para instalar y
configurar un DBMS, aquellos componentes son: 1- Espacio de Almacenamiento:
a) Establecer cantidad de espacio físico idóneo
1- Datos b) Establecer correcta configuración, para un
2- Procedimientos máximo desempeño.
3- Hardware c) Determinar nivel de exactitud en el diseño de
4- Software la BB.DD.
5- Red
6- Personas 2- Definición de espacio, se establece espacio
7- Servidores de BB.DD. requerido para una tabla especifica.
definidos y en la forma física en como los datos son
3- Creación del espacio. Se crean 3 tablas, reservando definidos. Garantizando integridad y desempeño del DBMS,
espacio para las Sgts.: considerando:
a) SYSCATSPACE: Almacena catalogo de La extensión, que compone segmentos y se asignan bloques
tablas. de espacio libres y continuos, y presentan estas ventajas:
b) TEMPSPACE1: Almacena tablas temporales. - Se elimina intervención del Sysadmin.
c) USERSPACE1: Almacena tablas, y - Se asegura que las Apps no dejaran de
respectivos índices creados por los usuarios. funcionar.
Estas tablas son generadas manera automática, Segmento, la mayoría de los DBMS utiliza la técnica -
aunque de cualquier modo puede ser creadas por la Mirror- y requieren ciertas características:
misma DBMS. - Los segmentos deben almacenarse dentro del
El espacio inicial de una BB.DD. Estará definido mismo sistema.
por omisión o defecto. - Los segmentos copiados deben ser
almacenados en un Host diferente.
4- Configuración de memoria: Es vital, gran cantidad - Espacio de tablas. Es un grupo de particiones
de memoria para almacenar información, procesos en la BB.DD. Están compuestos por omisión
y ejecutar operaciones. Para todo lo anterior se en la base de datos y son:
requiere una memoria cache o temporal con el
objetivo de minimizar las operaciones de lectura y 1) Syscatspace.
escritura desde y hacia un H.D.; Desde y hacia se 2) Estructuras de datos que
debe definir un Buffer pool que elimina la guarda el usuario.
subsecuente lectura desde el medio físico mientras 3) El espacio de tablas
se mantengan en el Buffer pool. temporales.

5- Memoria compartida, establece:


a) La asignación y liberación de estas áreas de En las operaciones sobre una BB.DD. implican las
memoria, que ocurren cuando es asignada a un siguientes consideraciones:
área particular, en un evento particular, por Espacios, Los DBMS han experimentado un avance para
ej.: la conexión a una BB.DD. calcular el espacio de almacenamiento, estos trataran como
b) Durante estos eventos la DBMS asignan arreglo lineal de paginas contiguas de BB.DD., logrando
memoria de la siguiente manera: usos eficientes de espacio de almacenamiento. Estos
- Al inicio del DBMS. espacios de datos serán recuperados para posterior
- Cuando una base de datos es conectada procesamiento. El DBMS dispone un área compartida de
por primera vez. gran capacidad de área de memoria (Shared Buffer Poll),
- Cuando una App. Se conecta a una organizado como frames, leídos desde el dispositivo HD y
BB.DD. cargados en el área común de memoria compartida.

6- Instancias Múltiples, son un conjunto completo de Espacios Privados, son BB.BB. denominadas -Formularios o
Apps necesarias para el correcto funcionamiento paneles de control-, su función es:
de una DBMS y se pueden instalar múltiples
instancias, como: Guiar a usuarios a la
- Soporte para Apps: instancias para reorganización de funciones
diferentes organizaciones con diferentes especificas.
BB.DD. o una única instancia, bajo la Controlan el acceso a las
mirada de un solo SysAdmin. tablas.
- Consolidación de los servidores, esta
característica permite reducir el numero Espacios para objetos, su estructura de datos mantiene –Los
de servidores a utilizar ya que no es llamados archivos-, manejados por el Sysadmin.
necesario un servidor para cada DBMS. Una buena administración redundara en:
- Soporte Técnico, Son actividades a nivel
se software o hardware, por lo que es - Mejoras de funcionamiento.
ideal un equipo técnico de experiencia o - Reducción de tiempos de acceso.
capacitado. - Almacenamiento persistente y robusto.

Deben considerarse los llamados -Tipos-,


o Clustered.
o Unique.
o Fulltext.

En las estructuras de datos se debe considerar importante el Bitácoras, cambios que quedan registrados de forma serial,
control de archivos en dispositivos de almacenamiento, y su así el DBMS, realiza operaciones como:
gerencia es parte del Sysadmin junto al diseñador, esto - Rollbacks.
permite el almacenamiento de estructuras de datos, como: - Ejecutar operaciones de control.
- lógicas o Las bitácoras ocupan bastante espacio
- Y físicas. debido a transacciones denominadas -
respaldos-.
Las estructuras lógicas permiten independencia en los datos
o Los datos quedan grabados en la
bitácora.
o Es necesario tener mecanismos de A pesar de que ya existe una importancia bastante grande en
control llamados Checkpoints, que el significado de las BB.DD., estos deben estar en
son definidos por el DBA. condiciones que garanticen a un mayor nivel de seguridad y
respectivo control de datos. Esto de hecho ha generado una
Particiones, índices que pueden ser dividas en unidades total nueva disciplina, orientada a conceptos relacionados
pequeñas. con Cyber-Seguridad.
Partición de rango, son valores específicos:
- Campos claves Generalmente los datos se respaldan, con una copia de
- Fechas especificas archivos, luego se almacenan incluso en zonas geográficas
distintas como incluso otros países y así recuperarlos y
Partición de lista, lista de valores discretos para ser seguir con las operaciones de la organización.
utilizadas como claves. Se debe tomar en cuenta la seguridad y métodos para
Partición Hash, requiere claves Hash, distribuye filas de proteger datos electrónicos, impresos e incluso manuales. Es
datos de manera uniforme. fundamental mantener la información privada, confidencial
y sensitiva protegida.

Configurar los diferentes modos de operaciones de un Existen varios métodos de monitoreo, de respaldo,
DBMS dan a entender que se debe tomar en cuenta las recuperación, formas de replicas, métodos de back ups,
siguientes operaciones: comandos de respaldo y otros que podre abordar en la
- Operaciones esenciales de un DBMS, respuesta numero dos y tres.
proporcionan de manera segura, rápida y Una forma confiable e integra de mantenimiento y respaldo
confiable 3 aspectos importantes: de la información es, la Permisología, esta operación es
a) Procesos y actualizaciones fundamental y lograra un total y establecido tipo de acceso,
b) Recuperar datos y garantizar autenticaciones, privilegios asociados a usuarios o grupos.
su correcto uso. Dentro de los privilegios existen un ROLE, que podrá
empaquetar un grupo de funciones relacionadas con la
- El DBMS, debe considerar: BB.DD. El establecimiento de ROLES hace mas fácil el
o El software requerido para manejo y control de acceso a los datos, y, en consecuencia, una mejor
control de la BB.DD. gerencia por parte del SYSAdmin.
o Datos representativos del modelo
o Procedimientos. Hay operaciones de comandos que respaldan los datos. Me
o El lenguaje de la BB.DD. referiré en detalle sobre este tópico en la respuesta numero
o Procesador de consultas. dos.
o Gestión de tiempo de ejecución.
o Manejo de ejecución y autorización Implementar métodos de respaldo y recuperación es
de usuarios y modificaciones. fundamental para salvaguardar la información. Con el
o Ejecutar funciones para creación de tiempo se han generado variadas técnicas en esta área, como:
tablas, respaldos y datos copiados.
o Modelo de BB.DD. garantiza - Espejo (Mirroring), crear una copia completa
almacenamiento y recuperación de en un momento específico del tiempo. No
datos. requiere de ningún proceso o algoritmo de
o Generador de reportes, genera apoyo comprensión de datos.
para la toma de decisiones: - Replica (Replication), a esto también se le
Recuperación de Callback denomina base de datos publica.
Permanencia o Commit. - Elementos y frecuencia de respaldo, debido a
las amenazas en informática como hacking o
En las Operaciones de una BB.DD., destacan, Baja y Alta: desastres naturales es fundamental tomar en
- Baja: Es un borrado de un registro. cuenta el medio de almacenamiento en su
- Alta: Gestiona nuevos registros a la BB.DD. forma física, su vida útil, volúmenes, etc.
- Es ideal tener un sistema de rotación de los
Recovery, protección de los datos ante cualquier daño de su medios físicos para respaldo y definir la
integridad y confiabilidad. De otro modo sucede lo frecuencia bajo la cual se llevan a cabo los
siguiente: respaldos.
o Daño en la superficie magnética del - Comandos de respaldos, son comandos en el
disco sistema para la implementación de respaldos
o Errores en las aplicaciones. ligado al O.S. y dada la importancia que exista
o Errores de usuarios. un error humano entre los comandos a utilizar
hay programas utilitarios que pueden hacerse
Es importante también el manejo de Índices: cargo de estas operaciones.
o Un nuevo registro se realiza de
manera secuencial. Las operaciones de monitoreo y control son hoy en día
o Búsquedas y recuperación contraria a fundamentales, debido al exponencial flujo de información
la inserción secuencial. que se experimenta día a día. Para esto debe existir
o Técnica de Indexación, son procesos operaciones de control y monitoreo sobre las BB.DD. que se
de búsqueda y recuperación. han tornado muy importantes. Estas son:
aspectos que nombrare a continuación:
- Monitoreo general, esto se refiere a los
problemas generales en el desempeño de los - Se toman en cuenta los valores lógicos y los
sistemas. Es imperativo establecer buenas textos de números escritos directamente en
practicas y directrices para que se pueda la lista de argumentos.
enfrentar cualquier inconveniente de una - Los argumentos pueden llegar a ser tanto
manera rápida. nombres, matrices, número o referencias que
- Monitoreo del espacio en Disco, se deben contengan números.
establecer políticas de respaldo y - En el caso que los argumentos que no
recuperación, por lo que incrementara su contengan ningún número entonces la
espacio en Disco requerido. Es una tarea que función MIN devuelve 0.
el Sysadmin debe proyectar. - En el caso que el argumento se trata de una
- Monitoreo de Logs, son archivos con registros referencia o una matriz, se utilizará
de transacciones, operaciones y cambios solamente los números que estén contenidos
realizados a la BB.DD. que pueden ser ya sea en la matriz o referencia. Lo que son
analizados. las celdas vacías, los textos contenidos en las
- Monitoreo de memoria compartida, se debe referencia o matriz y los valores lógicos se
compartir memoria RAM con otros pasaran por alto.
programas, es vital aquí la gestión de la - Si existen valores de error o texto que no se
BB.DD. y la instalación y configuración del puedan traducir a números simplemente
DBMS, para especificar cuanta memoria será generarán un error.iv
reservada para el sistema.
- Monitoreo de BB.DD., se mantienen en Mientras que la función MAX va a permitir poder obtener el
observación constante las bases de datos, esto valor máximo de un conjunto de valores ya sea una lista de
permite reportes para ser analizados. El números ubicados en una BB.DD. De esta manera, la
proceso de actividades es conocido como función permite devolver el valor máximo de un conjunto de
DAM (Database Activity Monitoring). valores.
- Monitoreo de Modos de operación, el Como un argumento de la función se puede ingresar los
monitoreo constante hace posible la números que se quieren evaluar o simplemente un rango o la
generación de Logs de alerta, que conserva referencia de una celda que contenga los valores numéricos.
información relacionada a errores o Ej.:
situaciones irregulares, esto hace posible
tomar las acciones correctivas necesarias para SELECT MIN(Salario) FROM Empleados;
prevenir ocurrencias de algún tipo en el Y retorna en algún caso hipotético: 150.000
futuro. Otro ejemplo utilizando la función MAX:
- Monitoreo de espejos, tal como se menciono SELECT MAX(Salario) FROM Empleados;
antes la técnica “Mirror” o espejo es muy Retornando en algún caso hipotético: 980.000
efectiva. Permite garantizar integridad y
confiabilidad de los datos. En este caso se requiere tratar de encontrar el articulo con el
menor precio, por lo siguiente la columna donde se hará la
consulta, considerando que realicé una columna con
determinados ID para cada valor esta en la segunda fila
‘Preciocol’ siendo Precio la Tabla. La instrucción SQL sería:

SELECT MIN(Preciocol) FROM ARTICULOS.Precio;


Tomando sin duda en cuenta la BB.DD. que se entrego,
para desarrollar las consultas en SQL. Desarrolle una Ahora bien, para responder a la pregunta numero dos, acerca
BB.DD. nombrada como ARTICULOS con sus respectivas de, ¿cómo generaría una consulta que contenga la
Tablas, ‘Cod_Art’, ‘Descripcion’ y ‘Precio’. descripción de cada artículo con su respectivo precio, y,
ordenándolo con la misma forma descendente en base al
¿Cómo se puede obtener de el/los artículos con el menor precio del articulo? El ordenamiento del resultado de una
usuario?, a mi parecer es bastante simple obtener en este consulta, obtenida mediante únala clausula SELECT, se
caso el resultado. Para lograr el objetivo de menor precio se logra mediante el uso de la clausula ORDER la cual
debe utilizar la función MIN, la cual devolverá como organizara los registros en base al contenido del campo
resultado un valor mínimo de la columna deseada. especificado como parámetro para la misma. Serán
Funciones MAX & MIN estas funciones retornan, ordenados de forma ascendente, sin embargo, puede ser
respectivamente, el menor y mayor valor de los valores revertido.
contenidos en la columna especificado. La siguiente sintaxis de esta cláusula es la siguiente:
SELECT <columna 1, columna 2, … columna n> FROM
Estas dos funciones son muy necesarias al momento de <nombre de la tabla> ORDER BY <columna> ASC/DESC.
trabajar en la hoja de cálculo Excel o en una BB.DD. y es
que las mismas tienen como función principal ayudar a También se utilizan ciertos elementos, utilizando la clausula
encontrar valores determinados. ORDER, tomando en cuenta, como dije anteriormente
En el caso de la función MIN va a proporcionar el valor desarrollé una estructura SQL con sus respectivos ID para
mínimo de una lista de valores, excluyendo los valores de cada columna, siendo en este caso ‘Cod_Art’, ‘Descripcion’
textos y lógicos. y ‘Precio’ las respectivas Tablas. El siguiente script SQL a
En este tipo de función se pueden considerar los siguientes aplicar, seria el siguiente:
SELECT DISTINCT Descriptioncol, Preciocl
FROM ARTICULOS.Descripcion, ARTICULOS.Preico;

Esta consulta SQL dará como resultado valores del


campo ‘Preciocol’ y a su lado su descripción.
Como siguiente ejercicio final, la siguiente
consulta SQL es para ordenar los elementos de la
tabla de menor a mayor, mostrando su respectiva
descripción de cada articulo junto al precio
descendente, sería:

SELECT DISTINCT Descripcioncol, Preciocol


FROM ARTICULOS.Descripcion, ARTICULOS.Precio Para definir la auto incrementación en fila Id_Empleado, se
ORDER BY Preciocol DESC; ejecuta el siguiente script:

ALTER TABLE `Empleados` CHANGE `Id_Empleado`


`Id_Empleado` INT(11) NOT NULL AUTO_INCREMENT;

La importancia del manejo de la información he hecho


que la relevancia de las DBMS ampliase su gestión en
bases de datos y tablas y abarcando la estructura lógica.
SQL mantiene comandos que permiten manipular tablas en
bases de datos tanto por usuarios como por administradores.
Estos hacen posible un mejor control de los datos y Al hablar de Índice, y la creación de esta con base en varias
paramentos que garantizan su confiabilidad e integridad. columnas, con la finalidad de posibilitar la búsqueda de
Los DBMS mejoraron, en su desarrollo, y pueden ejecutar registros mas expedita, se utiliza:
consultas en bases de datos, pudiendo combinar, de varias ALTER TABLE `Empresa`.`Empleados` ADD INDEX
maneras, datos contenidos en diferentes tablas para poder `Clave_empleado` (`Id_Empleado`, `Nombre`, `Apellido`,
generar reportes facilitando la toma de decisiones `Departamento`, `Salario`);
gerenciales de manera rápida y oportuna.

Estructura lógica: La explicación lógica y modelo


relacional de las correspondientes tablas en la base de datos
empresa, conectada con la tabla Contacto, dentro de la base
de datos:

Una tabla creada en SQL requiere que cada tabla creada


tenga un nombre asignado, así como los campos que
contendrá. Se le debe asignar un nombre y, necesita definir Una forma de mantenimiento en SQL para eliminar registros
el tipo de dato. De tal manera: de una BB.DD., y para borrar tabla o un índice. La sintaxis
CREATE TABLE `Empresa`.`Empleados` ( `Id_Empleado` es:
INT(11) NULL , `Nombre` VARCHAR(255) NOT NULL , DELETE FROM `Empleados` WHERE `Id_Empleado` =
`Apellido` VARCHAR(255) NOT NULL , `Departamento` "11";
VARCHAR(255) NOT NULL , `Salario` INT(11) NOT
NULL , PRIMARY KEY (`Id_Empleado`)) ENGINE =
InnoDB;
'600000'), (NULL, 'Loreto', 'Lara', 'Finanzas', '388000'),
(NULL, 'Estefani', 'Gutierrez', 'Finanzas', '290000'), (NULL,
'Angel', 'Campos', 'IT', '780000');

El resultado de esta en la fila Id_Empleado = 11 ya no


existirá.

Si se desea eliminar todos los registros, la sintaxis seria la


siguiente:
DELETE FROM Empleados

Para Borrar Una Tabla Completa De Una BB.BB. Se


Consultas De Selección Avanzadas
Utiliza El Comando Drop Table:
Esto Se Logra Mediante Cláusulas Como, Where, Group By,
DROP TABLE Empleados
Having Y Order By, Que Aumentan El Valor De Select.
SELECT Nombre FROM Empleados GROUP BY
Y Para Borrar Un Índice:
Id_Empleado
DROP INDEX Clave_Empleado;

Para Afrontar Actualizaciones, En SQL Existe El Comando


‘update’:
UPDATE Empleados SET Nombre = "Donald",
Departamento = "IT" WHERE Id_Empleado = "9" ;

Consultas De Acción: Son comandos a ejecutar sobre las


tablas Tablas como: Modificación, borrado, inserción de
registro, y otros.
- INSERCIÓN, consiste en añadir nuevos registros
en las tablas, ej.:
INSERT INTO `Empleados` (`Id_Empleado`, `Nombre`,
`Apellido`, `Departamento`, `Salario`) VALUES (NULL,
'Luis', 'Saldiver', 'Contabilidad', '340000'), (NULL, 'Laura',
'Perez', 'IT', '480000'), (NULL, 'Estela', 'Mardonez',
'Mercadeo', '360000'), (NULL, 'Maria', 'Lara', 'Ventas', Clausula, HAVING (Requiere Registros Previamente
'980000'), (NULL, 'Jose', 'Gutierrez', 'Finanzas', '150000'), Agrupados):
(NULL, 'Pedro', 'Zerpa', 'Contabilidad', '400000'), (NULL, SELECT Id_Empleado,SUM(Salario) FROM Empleados
'Esteban', 'Saldiver', 'IT', '289000'), (NULL, 'Luisa', 'Perez', GROUP BY Id_Empleado HAVING SUM(Salario)>300000
'Mercadeo', '545000'), (NULL, 'Jaime', 'Mardonez', 'Ventas',
la misma cantidad de columnas.
SELECT Id_Empleado, Nombre FROM Empleados UNION
SELECT Id_Empleado, Telefono FROM Contacto;

SQL mantiene un conjunto de comandos que logran manejar


bases de datos de una forma fácil e intuitiva. La cláusula
SELECT siempre tiene una gran versatilidad, Permite la
realización de cualquier tipo de consulta sobre los datos.
Estas características han hecho de SQL el lenguaje preferido
para el manejo y gestión de los sistemas de bases de datos, lo
Intersecciones: cual ha generado que se desarrollen diferentes versiones para
Tomando en cuenta que se creó la base de datos ‘Contacto’, ser usadas en entornos más específicos.
la sintaxis es:
CREATE TABLE `Contacto`.`3` ( `Id_Empleado` INT(11)
NULL AUTO_INCREMENT , `Telefono`
VARCHAR(255) NOT NULL , `Apellido` Originalmente MySQL era un software propietario, 5
VARCHAR(255) NOT NULL , PRIMARY KEY años después de 1995 se volvió OpenSource con soporte
(`Id_Empleado`)) ENGINE = InnoDB; para Linux-Unix.
MySQL no estuvo orientado a una gran escala, su uso era
mas bien practico. Fué tan bien escrito, que se convirtió en
un DBMS preferido.
Su instalación difiere un poco dependiendo de ciertos
aspectos, como:
- Establecer compatibilidad para MySQL, se requiere
verificar si soporta y esta respaldado por la empresa
Oracle Corp.
- Decidir cual distribución instalar, binario, o código
abierto (Permite acceso para desarrollo), verificar
descarga bajo Oracle Corp., Verificar bajo que O.S.
se instalará.
- MySQL Community Server, descargable de manera
libre, para pequeños o medianos usuarios, soportada
bajo licencia GPL, así se tiene acceso a esta, como
código abierto, soportada para colaboradores y
Developers.

Bajo la licencia GPL, existen limitaciones comparado a


Enterprise Edition que tiene funciones adicionales para el
Inserto datos: ámbito empresarial.
INSERT INTO `3` (`Id_Empleado`, `Telefono`, `Apellido`)
VALUES (NULL, '955787689', 'Saldiver'), (NULL, Se puede crear una tabla con un respectivo ID, por eje.:
'964356545', 'Perez'), (NULL, '987445323', 'Mardonez'), CREATE TABLE Empleados (Nombre varchar(50),
(NULL, '934558879', 'Lara') Apellido varchar(50), ID int AUTOINCREMENT
PRIMARY KEY (ID) );

Para ingresar 10 registros en la tabla anterior considerando


que en la columna Apellido
cinco de ellos deben comenzar con la letra D.:

INSERT INTO Empleados (Nombre, Apellido, ID)


VALUES (‘Dohn, ‘Lemon’, ‘’), (‘Daul’, ‘Martney’,’’),
(‘Detephen’, ‘Ding’,’’), (‘Daily’, ‘Moon’,’’), (‘Dinitry’,
‘Larry’,’’), (‘Stephen’, ‘King’,’’), (‘Larry’, ‘Olson’,’’),
‘Union’ permite combinar los registros obtenidos mediante (‘Peter’, ‘Woom’,’’), (‘Tonny’, ‘Waka’,’’), (‘David’,
la ejecución de dos o mas cláusulas, que deben contemplar ‘Ben’,’’) SELECT Apellidos FROM Empleados WHERE
Apellido like = “D%”); proceso de fragmentación y existe para ello un determinado
comando:
MySQL dispone de un optimizador de consultas y este OPTIMIZE nombre de la tabla;
utiliza distribución de claves almacenadas y otros factores
para decidir el orden en que se deben unir las tablas y que También el comando para verificar integridad de las tablas,
índice se debe usar para una tabla especifica. cuya sintaxis es:
Las estructuras de datos almacenan información entre CHECK TABLE nombre de la tabla;
objetos y relaciones entre ellas. Para ello utiliza el modelo
de entidad relación (ER).
Un modelo -ER- se construye de manera grafica mediante
símbolos como: Para crear un usuario que pueda acceder a ambas tablas, pero
- Rectángulos. únicamente para ingresar y
- Líneas. modificar registros, bajo un particular requerimiento, la
instrucción es la Sgte.:
Estas representan entidades en:
- Un proceso. Crear usuario:
- Bajo características. CREATE USER usuario_supervisor INDENTIFIED BY
- Relaciones existentes. PASSWORD ‘fafarafa65’;

Otorgar permisos:
GRANT INSERT, UPDATE ON Empleados,
Las relaciones tienen elementos, como, objetos, atributos, Contacto_Empleados TO ‘usuario_supervisor’;
relaciones, tablas.
Otras instrucciones bajo requerimientos específicos:
Tablas: Crear una vista de la base de datos Empleados que contenga
Las tablas son estructuras donde se almacenan los datos, sin el Nombre y Apellido de
estas, seria imposible el concepto de datos relacionales. todos aquellos empleados que comiencen con la letra D.:
Para esto se deben considerar aspectos como:
- Cantidad. CREAT VIEW Temporal_Empleados AS SELECT Nombre,
- Numero de columnas. Apellido FROM
- Tipo de dato. Empleados WHERE Nombre LIKE 'D%';

Para crear una tabla llamada Contacto_Empleados, la que Borrar la tabla Contacto_Empleados:
debe contener las columnas DROP TABLE Contacto_Empleados;
Identificación del empleado, número telefónico y correo
electrónico, su instrucción es la Sgte.: MySQL en el tiempo, ha generado una comunidad muy
CREATE TABLE IF NOT EXISTS Contacto_Empleados grande en Internet entre Developers, para el desarrollo de
(identificación int AUTOINCREMENT aplicaciones con esta tecnología.
PRIMARY KEY (Id_Empleado), Numero_Tel varchar(50),
Email varchar(250)
);

Creación de usuarios:
Se pueden generar usuarios de diferentes maneras, pero
requieren de un usuario Root o Superusuario bajo conexión Al realizar gestión de seguridad del sistema mediante
al servidor, y bajo la tabla de usuarios en MySQL. MySQL, existen factores que deben ser tomados en cuenta al
momento de construir un sistema robusto en seguridad. Es
Permisología: fundamental definir los permisos de usuarios, y tomar
Al crear usuarios y asignarles permisos, se deben tomar en medidas a nivel físico en servidores de datos.
cuenta que tipo de recursos requeridos tendrá. Se pueden Es importante mantener políticas de seguridad apropiadas,
asignar permisos particulares a un usuario o con acceso que en si son un conjunto de normas y directrices, que
completo. establecen como los datos pueden ser accedidos. Implica
restricciones y el tipo de operación que se pueden llegar a
Perfiles: ejecutar sobre las mismas. Es importante considerar:
Estos van a repercutir al ejecutar diferentes funciones, se
deben establecer permisos adecuados para no poner en • Passwords o claves de acceso son el primer frente
riesgo la seguridad de los datos. de protección contra vulnerabilidades. Esto proceso
de creación de passwords implica:
Mantenimiento: - Longitud mínima, debe contener un
MySQL cuenta con varias herramientas para mantener las mínimo de 10 caracteres combinando
tablas, y así: letras y números.
- Analizar - Composición, como regla no debe
- Optimizar tener datos personales o públicos.
- Verificar - Almacenamiento de passwords,
- Reparar Tablas tomando en cuenta los pasos
anteriores se debe memorizar, nunca
Dependiendo de el numero de transacciones, sufrirán un almacenar passwords.
- Control histórico, obliga a usuarios a financiero.sql;
no repetir passwords.
- Compartir Passwords, usuarios deben Para la recuperación de datos es fundamental un ambiente
ser instruidos para que se comprenda optimizado en la BB.DD. Esto implica maximizar la
la implicancia de la responsabilidad eficiencia y velocidad. También en los métodos de acceso a
que recae en el usuario final. los servidores, datos y la recuperación a través de técnicas de
- Transferencia electrónica, los diseño, análisis estadístico y de monitoreo.
passwords no deben ser transmitidos Para lograr la máxima optimización se deben tomar en
bajo ninguna circunstancia bajo cuenta:
internet. - Optimización del tamaño de los datos.
- Optimización del tipo de datos.
Protección contra hackers, se debe combinar con el uso de - Creación de índices.
buenas practicas de manera generalizada y se recomienda:
- Mantener BB.DD. detrás de un Una auditoria a las bases de datos, significa monitorear
Firewall en hardware y software. acciones ejecutadas por los usuarios no configurados
- Al usar Unix, nunca trabajar bajo correctamente, así se detectan errores.
usuario Root. Para ello es fundamental establecer los privilegios a los
- Aplicar archivos de configuración usuarios. Así de tal manera, al crear privilegios a usuarios se
para que mysql actúe de manera podrán tener en consideración que estos solo pueden ejecutar
automática ciertas operaciones, así se garantiza el excesivo uso de
- No almacenar variables en el entorno privilegios.
mysql_pwd Es necesario para la seguridad, el monitorear y establecer
- Restringir acceso a tabla mysql.user acciones ejecutadas por los usuarios y que se puedan rastrear
- Actualizar MySQL a su ultima el acceso a los datos y verificar acciones sospechosas.
versión ya que siempre incluyen MySQL cuenta con el comando GRANT para definir
mejoras. parámetros para una optima auditoria de una BB.DD.
Parámetros como:
Respaldo de datos, la utilidad de copias de seguridad es
representada por su regularidad o frecuencia. MySQL tiene - GRANT ALL PRIVILEGES ON
herramientas como MySQL Enterprise Backup. Empleados. * TO Juan; (Privilegios
Hacer un respaldo completo es necesario, pero no siempre para tablas empleados a usuario Juan)
conveniente, ya que generan grandes archivos y consumen - Ej.2:
tiempos de procesamiento, y no son efectivos, ya que todos GRANT ALL PRIVILEGES *.* TO
los respaldos son siempre diferentes respecto a su copia Juan; (Todos los privilegios sobre
anterior. Las copias de seguridad completa e incrementable todas las bases de datos a Juan)
son mas pequeñas y tardan menos tiempo. Para hacer estos
cambios incrementales en el registro binario, el servidor La encriptación es fundamental para la auditoria de datos,
debe iniciarse con la opción – - log-bin para habilitar ese estos son datos convertidos a datos binarios, que resultan
registro. Es posible indicarle a MySQL el cierre de registro muy difíciles de leer.
binario actual usando la opción mysqladmin flush-logs. Se requieren de estas auditorías para garantizar la integridad
de los datos y afirmar que los cambios realizados son
MySQL tiene un comando simple parra recuperar datos, la correctos y legales.
sintaxis es la siguiente:
Mysqldump –u “usuario” –p “contraseña”
<nombre_de_la_base_de_datos> <
nombre_del_respaldo.sql>;
Ejemplo:
mysqldumpo –u supervisor –p 1536c* finanzas

i
IACC (2019). Síntesis de los documentos de estudio, Administración de Base
de datos.
ii Síntesis de cierto material obtenido del sitio web https://bit.ly/3aLxDS4
iii Todos los derechos reservados para Felipe Alfonso González López,

Estudiante IP IACC Continuidad en Ingeniería en Informática – 2020 – 2021.

También podría gustarte