Sei sulla pagina 1di 46

ADMINISTRACIN

DE BASES DE
DATOS
Ingeniera en Sistemas

Objetivo
El alumno ser capaz de comprender
los procesos de almacenamiento,
acceso a la informacin y
administracin de un sistema
administrador de bases de datos
(SABD, SMBD, SGBD, DBMS)

Temario
I.

Fundamentos de
administracin de bds

II.

Administracin de bds

III. Administracin de usuarios


IV. Seguridad e integridad
V.

Respaldo y recuperacin

Bibliografa
Sistemas de Gestin de Bases de
Datos
Ramakrishman, McGraw-Hill, 3 Ed.
2007
Fundamentos de Bases de Datos
Silberschatz, A. McGraw-Hill, 5 Ed.
2006

Conceptos
Base de datos
Es una coleccin de datos
relacionados con un tema u objetivo
concreto
Tabla
Es una estructura de datos
bidimensional donde es posible
almacenar datos relacionados

Conceptos

relacin

llave
primaria

registr
os

campos
(atributos)

Conceptos
Sistema administrador de bases
de datos (SABD, SGBD, DBMS)
Es una coleccin de programas
que permiten a los usuarios crear
y mantener bases de datos
Es un software de propsito
general que facilita el proceso de
definir, construir, manipular y
compartir bases de datos entre
varios usuarios y aplicaciones

Conceptos

Conceptos
Aridad o grado
Cardinalidad
Llave primaria y secundaria
Dominio
Procedimiento almacenado
Trigger (desencadenador)

Bn
o

Street

Area

B5

22 Deer
Rd

Sidcup London

B7

16 Argyll
St

Dyce

B3

City

Postcode

Tel_No

Fax_No

SW1 4EH

0171-8861212

0171-8861214

Aberdee
n

AB2 3SU

01224-67125

01224-67111

163 Main
St

Partick Glasgow

G11 9QX

0141-3392178

0141-3394439

B4

32 Manse
Rd

Leigh

0117-916BS99
1NZ
grado (aridad)
1170

0117-7761114

B2

56 Clover
Dr

0181-9631030

0181-4537992

Bristol
London

NW10 6EU

cardinalidad

relacin

Conceptos

Tipos de datos (T-SQL)

Tipos de datos (T-SQL)

Tipos de datos (T-SQL)

Vistas
Una vista es una tabla virtual cuyo
contenido est definido por una
consulta.
Al igual que una tabla real, una vista
consta de un conjunto de columnas y
filas de datos que proceden de tablas
a las que se hace referencia en la
consulta y se producen de forma
dinmica cuando se hace referencia

Vistas

Utilizacin de vistas
Para centrarse en datos especficos
Para simplificar la manipulacin de
datos

Utilizacin de vistas
Para proporcionar compatibilidad
con versiones anteriores

Procedimientos
almacenados
Un procedimiento almacenado
(stored procedure -SP) es un conjunto
de comandos SQL que pueden
almacenarse en un servidor.

Procedimientos
almacenados
Similitud con funciones en
programacin:
Parmetros de entrada /
parmetros de salida
Pueden llamar a otros
procedimientos
Devuelven un valor de estado a un
programa que realiza una llamada

Ventajas de los SPs


Trfico de red reducido entre el
cliente y el servidor
Mayor seguridad
Reutilizacin de cdigo

Ventajas de los SPs


Mantenimiento ms sencillo
Rendimiento mejorado

Sintaxis (en SQL Server)

Ejemplo (parmetro de
entrada)
CREATE PROCEDURE MiProc @Ciudad
nvarchar(30) AS SELECT * FROM MiTabla
WHERE Ciudad = @Ciudad
EXEC MiProc @Ciudad=Quertaro

Ejemplo (parmetro de
salida)

SPs del sistema

SPs del sistema

SPs del sistema

Funciones (SQL Server)


Integradas
Agregado:
AVG, COUNT, MAX, MIN, SUM, VAR,

Escalares:
Matemticas: ABS, COS, EXP, POWER,
De Cadena: CHAR, CONCAT, LEN,
REPLACE,
Entre otras

Definidas por el usuario (UDF)

Funciones definidas por el


usuario

Funciones (ejemplo)
CREATE FUNCTION
ElevarAlCubo(@base INT)
RETURNS __________
AS
BEGIN
RETURN __________________
END

Funciones (ejercicio)
Crear una funcin que dado un
entero que represente un da de la
semana, regrese el nombre literal del
da

Funciones (ejercicio)
CREATE FUNCTION
CalcularVolumenCubo
-- dimensiones de entrada en cms
(@Longitud decimal(4,1),
@Anchura decimal(4,1),
@Altura decimal(4,1) )
RETURNS decimal(12,3) -- cms
cbicos
AS
BEGIN
RETURN ( @Longitud * @Anchura *

Funciones (ejercicio)
CREATE TABLE Cubos (
numero int PRIMARY KEY,
color nchar(20),
altura decimal(4,1),
longitud decimal(4,1),
anchura decimal(4,1),
volumen AS (
dbo.CalcularVolumenCubo(altura, longitud,
anchura)

)
)

Funciones definidas por el


usuario

Funciones definidas por el


usuario
CREATE FUNCTION
MuestraInfoCubos(@num int) RETURNS
TABLE
RETURN
select numero, volumen
from Cubos
where numero < @num

Triggers (desencadenadores,
disparadores)
Es un objeto de base de datos que est
asociado a una tabla y que se activa cuando
ocurre un evento particular para dicha tabla.
Verificaciones de valores a insertarse en la
tabla
Llevar a cabo clculos sobre los valores
implicados en una actualizacin
Se activa cuando se ejecuta un INSERT,

Triggers
Los triggers se activan solo por sentencias
SQL
Un trigger puede llamar a un SP
Un trigger no puede ser asociada a una
tabla temporal o a una vista
No puede haber dos triggers para una
misma tabla con el mismo evento y
accin en el

Triggers (sintaxis SQL


Server)

Triggers (sintaxis MySQL)


BEFORE,
AFTER

INSERT, UPDATE,
DELETE

INSERT = INSERT, LOAD DATA, REPLACE


UPDATE = UPDATE
DELETE = DELETE, REPLACE

Triggers
CREATE TRIGGER upd_check BEFORE UPDATE ON
account
FOR EACH ROW
BEGIN
IF NEW.amount < 0 THEN
SET NEW.amount = 0;
ELSEIF NEW.amount > 100 THEN
SET NEW.amount = 100;
END IF;
END

Triggers
Solo puede ser aplicado a una tabla
Crear/alterar/borrar una bd no est
permitido
Asociados a tablas permanentes (no
temporales ni vistas)
En MySQL no pueden contener la
instruccin CALL

III Administracin de usuarios

Administracin de usuarios
Inicio de sesin (IS):
Un IS es una entidad de seguridad o una
entidad que puede ser autenticada por un
sistema seguro
Los usuarios necesitan iniciar sesin para
conectarse a SQL Server
Se pueden conceder permisos a los ISs
El mbito de un IS es todo el motor de bd
Los permisos dentro de la bd se conceden
y deniegan al usuario de la bd, no al inicio

Administracin de usuarios
Usuario de base de datos (UBD):
Un UBD es una entidad de seguridad de la
bd
El mbito de un UBD es la bd
El UBD es la identidad del inicio de sesin
cuando est conectado a una bd
El UBD puede utilizar el mismo nombre
que el inicio de sesin, pero no es
necesario
Los permisos dentro de la bd se conceden

Roles de servidor para los


ISs
Nombre del
rol

Permisos

bulkadmin

Instruccin BULK INSERT

dbcreator

Crear, modificar, quitar y restaurar cualquier base de


datos

diskadmin

Administrar archivos de disco

processadmin

Finalizar procesos mediante la ejecucin de una


instancia del motor de bd

public

Todos los usuarios, grupos y roles de SQLS pertenecen


al rol public

securityadmin

Administrar los inicios de sesin y sus propiedades


(permisos de servidor y de bds: GRANT, DENY,
REVOKE); reestablecen contraseas para ISs

serveradmin

Cambiar opciones de configuracin en el servidor y


cerrarlo

setupadmin

Agregar/quitar servidores vinculados; ejecutar algunos

Roles de bases de datos


Nombre del
rol

Permisos

db_owner

Todas las actividades de configuracin y mantenimiento


en la bd (y quitarla)

db_securityadmi Modificar la pertenencia a roles y administrar permisos.


n
db_accessadmin Agregar o quitar el acceso a la bd para ISs de Windows,
grupo de Windows e ISs de SQL Server
db_backupopera Copias de seguridad de la bd
tor
db_ddladmin

Cualquier comando DDL en una bd

db_datawriter

Agregar, eliminar o cambiar datos en todas las tablas


de usuario

db_datareader

Leer todos lo datos de todas las tablas de usuario

db_denydatawri
ter

No pueden agregar, modificar ni eliminar datos de


tablas de usuario

Potrebbero piacerti anche