Está en la página 1de 24

Seguridad de Base de Datos

Estrategias de Copias de Respaldo


Logro de la sesión

Al finalizar la sesión, el estudiante conoce las estrategias de copias de


respaldo de las base de datos en una institución o organización empresarial
Importancia

¿Por qué es importante distribuir las bases de datos en diferentes discos


duros? ¿Cuáles son los beneficios?
Temas

• Estrategias de Copias de Respaldo


• Sentencias Transact SQL para obtener copias de las bases de datos
• Sentencias Transact SQL para restaurar base de datos
Estrategias de Respaldos
Sentencias

BACKUP DATABASE

BACKUP LOG

DROP DATABASE

RESTORE DATABASE

RESTORE LOG
Ejemplo

USE MASTER

BACKUP DATABASE OLIMPIADA


TO DISK='D:\SBD_LABORATORIO\LAB3\COPIAS\OLIMPIADAFULL.BAK'

USE OLIMPIADA
INSERT INTO PAIS(NOMBRE) VALUES('BOLIVIA')
SELECT * FROM PAIS

USE MASTER
BACKUP LOG OLIMPIADA
TO DISK='D:\SBD_LABORATORIO\LAB3\COPIAS\OLIMPIADALOG.TRN'
Ejemplo

BACKUP DATABASE OLIMPIADA


TO DISK='D:\SBD_LABORATORIO\LAB3\COPIAS\OLIMPIADADIF.BAK'
WITH DIFFERENTIAL

RESTORE DATABASE OLIMPIADA


FROM DISK='D:\SBD_LABORATORIO\LAB3\COPIAS\OLIMPIADAFULL.BAK'
WITH NORECOVERY

RESTORE DATABASE OLIMPIADA


FROM DISK='D:\SBD_LABORATORIO\LAB3\COPIAS\OLIMPIADADIF.BAK'
WITH RECOVERY
Ejercicio

Crear la base de datos


BDPERSONAL con 3 tablas y Tipo de Contrato
relaciones: codigoTipo
Descripcion
Empleado
codigoEmpleado Entregan:
Nombre 1.- Script de la creación de la base de datos
Apellido paterno 2.- Script del backup y restore de la base de datos
Apellido materno 3.- Backup de la base de datos

Contrato
codigoContrato
Tipo de contrato
monto
Creación de BD con varios Filegroup
USE MASTER

GO

CREATE DATABASE OLIMPIADA

ON

(
NAME=OLIMPIADA_DATA,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO C\OLIMPIADA.MDF',
SIZE=100,
MAXSIZE=200,
FILEGROWTH=10
)

LOG ON
(
NAME=OLIMPIADA_LOG,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO C\OLIMPIADA.LDF',
SIZE=10,
MAXSIZE=20,
FILEGROWTH=1
)
Creación de BD con varios Filegroup

GO

use OLIMPIADA
GO

ALTER DATABASE OLIMPIADA


ADD FILEGROUP GRP_PAIS

ALTER DATABASE OLIMPIADA


ADD FILEGROUP GRP_DISCIPLINA

ALTER DATABASE OLIMPIADA


ADD FILEGROUP GRP_PARTICIPANTE

ALTER DATABASE OLIMPIADA


ADD FILEGROUP GRP_ENTRENADOR
Creación de BD con varios Filegroup

ALTER DATABASE OLIMPIADA


ADD FILE
(
NAME=OLIMPIADA_DATA1,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO D\OLIMPIADA.NDF',
SIZE=10,
MAXSIZE=20,
FILEGROWTH=1
) TO FILEGROUP GRP_PAIS

ALTER DATABASE OLIMPIADA


ADD FILE
(
NAME=OLIMPIADA_DATA2,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO E\OLIMPIADA.NDF',
SIZE=10,
MAXSIZE=20,
FILEGROWTH=1
) TO FILEGROUP GRP_DISCIPLINA
Creación de BD con varios Filegroup
ALTER DATABASE OLIMPIADA
ADD FILE
(
NAME=OLIMPIADA_DATA3,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO F\OLIMPIADA.NDF',
SIZE=10,
MAXSIZE=20,
FILEGROWTH=1
) TO FILEGROUP GRP_PARTICIPANTE

ALTER DATABASE OLIMPIADA


ADD FILE
(
NAME=OLIMPIADA_DATA4,
FILENAME='D:\SBD_LABORATORIO\LAB4\DISCO G\OLIMPIADA.NDF',
SIZE=10,
MAXSIZE=20,
FILEGROWTH=1
) TO FILEGROUP GRP_ENTRENADOR
Creación de BD con varios Filegroup
CREATE TABLE PAIS
(
codigoPais INT IDENTITY(1,1) PRIMARY KEY,
nombre NVARCHAR (50)
) ON GRP_PAIS

CREATE TABLE DISCIPLINA


(
codigoDisciplina INT IDENTITY(1,1) PRIMARY KEY,
descripcion NVARCHAR(100)
) ON GRP_DISCIPLINA

CREATE TABLE ENTRENADOR


(
codigoEntrenador INT IDENTITY(1,1) PRIMARY KEY,
nombre NVARCHAR(30),
apPaterno NVARCHAR(50),
apMaterno NVARCHAR(50)
) ON GRP_ENTRENADOR
Creación de BD con varios Filegroup
CREATE TABLE PARTICIPANTE
(
codigoParticipante INT IDENTITY(1,1) PRIMARY KEY,
nombre NVARCHAR(30),
apPaterno NVARCHAR (50),
apMaterno NVARCHAR (50),
codigoEntrenador INT,
codigoDisciplina INT,
codigoPais INT
) ON GRP_PARTICIPANTE

ALTER TABLE PARTICIPANTE


ADD CONSTRAINT PARTICIPANTE_PAIS_FK FOREIGN KEY (codigoPais)
REFERENCES PAIS (codigoPais)

ALTER TABLE PARTICIPANTE


ADD CONSTRAINT PARTICIPANTE_DISCIPLINA_FK FOREIGN KEY (codigoDisciplina)
REFERENCES DISCIPLINA (codigoDisciplina)
Creación de BD con varios Filegroup

ALTER TABLE PARTICIPANTE


ADD CONSTRAINT PARTICIPANTE_ENTRENADOR_FK FOREIGN KEY (codigoEntrenador)
REFERENCES ENTRENADOR (codigoEntrenador)

INSERT INTO PAIS(nombre) VALUES ('PERU')

INSERT INTO PAIS(nombre) VALUES ('ARGENTINA')

INSERT INTO PAIS(nombre) VALUES ('CHILE')

INSERT INTO PAIS(nombre) VALUES ('PARAGUAY')

INSERT INTO PAIS(nombre) VALUES ('URUGUAY')


Backup de BD con varios Filegroup

use master

Backup database olimpiada


filegroup='primary',
filegroup='grp_pais',
filegroup='grp_participante',
filegroup='grp_entrenador',
filegroup='grp_disciplina'
to disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'

backup log olimpiada


to disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021log.trn'
Restore de BD con varios Filegroup

restore database olimpiada


file ='olimpiada_data', filegroup='primary'
from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'
with norecovery

restore database olimpiada


file ='olimpiada_data1', filegroup='grp_pais'
from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'
with norecovery

restore database olimpiada


file ='olimpiada_data2', filegroup='grp_disciplina'
from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'
with norecovery
Restore de BD con varios Filegroup

restore database olimpiada


file ='olimpiada_data3', filegroup='grp_participante'
from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'
with norecovery

restore database olimpiada


file ='olimpiada_data4', filegroup='grp_entrenador'
from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021full.bak'
with norecovery

restore log olimpiada


from disk='d:\sbd_laboratorio\lab4\copias\olimpiadajunio2021log.trn'
with recovery
Ejercicio

Luego sacar una copia full de los datos

Registrar datos en las tablas

Luego obtener una copia del log

Eliminar la base de datos

Restaurar la base de datos

Entregar por la tarea del canvas, las copias de respaldo


Ejercicio

Crear la base de datos


BDPERSONAL con 3 tablas y Tipo de Contrato
relaciones: codigoTipo
Descripcion
Empleado
codigoEmpleado Entregan:
Nombre 1.- Script de la creación de la base de datos
Apellido paterno 2.- Script del backup y restore de la base de datos
Apellido materno 3.- Backup de la base de datos

Contrato
codigoContrato
Tipo de contrato
monto
Conversemos un poco sobre los nuevos
términos o conceptos aprendidos el día de hoy

En la modalidad virtual participamos a través del chat, para ello usamos la opción “Levantar la mano”
Conclusiones

Participación de los estudiantes

También podría gustarte