Manual de SQL Server 2008 de La UNI

download Manual de SQL Server 2008 de La UNI

of 150

Transcript of Manual de SQL Server 2008 de La UNI

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 1

    CCAAPPIITTUULLOO 11

    Instalacin y configuracin del SQL Server 2008 Ediciones del SQL Server 2008 Requerimientos de Hardware y Software

  • Universidad Nacional de Ingeniera

    Pg. 2 [email protected] SQL Administracin

    I N S T A L A C I O N Y C O N F I G U R A C I O N D E L

    S Q L S E R V E R 2 0 0 8 Una de las primeras responsabilidades que asume un DBA (Data Base Administrador), es la eleccin del software ms adecuado a las necesidades que presente la empresa. Es por esta razn que, Microsoft corp., pone a nuestra disposicin, de diferentes ediciones de su Sistema Administrador de Base de Datos SQL Server 2008.

    QU ES SQL SERVER 2008?

    SQL Server 2008 es una plataforma global de base de datos que ofrece administracin

    de datos empresariales con herramientas integradas de inteligencia empresarial (BI). El

    motor de la base de datos SQL Server 2008 ofrece almacenamiento ms seguro y

    confiable tanto para datos relacionales como estructurados, lo que le permite crear y

    administrar aplicaciones de datos altamente disponibles y con mayor rendimiento para

    utilizar en su negocio.

    El motor de datos SQL Server 2008 constituye el ncleo de esta solucin de

    administracin de datos empresariales. Asimismo, SQL Server 2008 combina lo mejor

    en anlisis, informacin, integracin y notificacin. Esto permite que su negocio cree y

    despliegue soluciones de BI rentables que ayuden a su equipo a incorporar datos en cada

    rincn del negocio a travs de tableros de comando, escritorios digitales, servicios Web

    y dispositivos mviles.

    La integracin directa con Microsoft Visual Studio, el Microsoft Office System y un

    conjunto de nuevas herramientas de desarrollo, incluido el Business Intelligence

    Development Studio, distingue al SQL Server 2008. Ya sea que usted se desempee

    como encargado de desarrollo, administrador de base de datos, trabajador de la industria

    de la informacin o dirija una empresa, SQL Server 2008 ofrece soluciones innovadoras

    que le ayudan a obtener ms valor de sus datos.

    HERRAMIENTAS QUE INCLUYE EL SQL SERVER 2008

    Base de datos relacional. Un motor de base de datos relacional ms segura, confiable, escalable y altamente disponible con mejor rendimiento y compatible para datos estructurados y sin estructura (XML). Servicios de rplica. Rplica de datos para aplicaciones de procesamiento de datos distribuidos o mviles, alta disponibilidad de los sistemas, concurrencia escalable con almacenes de datos secundarios para soluciones de informacin empresarial e integracin con sistemas heterogneos, incluidas las bases de datos Oracle existentes. Notification Services. Capacidades avanzadas de notificacin para el desarrollo y el despliegue de aplicaciones escalables que pueden entregar actualizaciones de informacin personalizadas y oportunas a una diversidad de dispositivos conectados y mviles. Integration Services. Capacidades de extraccin, transformacin y carga (ELT) de datos para almacenamiento e integracin de datos en toda la empresa.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 3

    Analysis Services. Capacidades de procesamiento analtico en lnea (OLAP) para el anlisis rpido y sofisticado de conjuntos de datos grandes y complejos, utilizando almacenamiento multidimensional. Reporting Services. Una solucin global para crear, administrar y proporcionar tanto informes tradicionales orientados al papel como informes interactivos basados en la Web. Herramientas de administracin. SQL Server incluye herramientas integradas de administracin para administracin y optimizacin avanzadas de bases de datos, as como tambin integracin directa con herramientas tales como Microsoft Operations Manager (MOM) y Microsoft Systems Management Server (SMS). Los protocolos de acceso de datos estndar reducen drsticamente el tiempo que demanda integrar los datos en SQL Server con los sistemas existentes. Asimismo, el soporte del servicio Web nativo est incorporado en SQL Server para garantizar la interoperabilidad con otras aplicaciones y plataformas. Herramientas de desarrollo. SQL Server ofrece herramientas integradas de desarrollo para el motor de base de datos, extraccin, transformacin y carga de datos, minera de datos, OLAP e informes que estn directamente integrados con Microsoft Visual Studio para ofrecer capacidades de desarrollo de aplicacin de extremo a extremo. Cada subsistema principal en SQL Server se entrega con su propio modelo de objeto y conjunto de interfaces del programa de aplicacin (API) para ampliar el sistema de datos en cualquier direccin que sea especfica de su negocio.

    NOVEDADES EN SQL SERVER 2008

    SQL Server permite ejecutar aplicaciones de misin crtica, reduciendo costos de administracin de infraestructura de datos y brindando introspectiva e informacin a todos los usuarios.

    Confiable: Permite a las organizaciones ejecutar sus aplicaciones ms crticas con niveles de seguridad, confiabilidad y escalabilidad muy altos.

    Productivo: Permite reducir el tiempo y los costos requeridos para desarrollar y administrar sus infraestructuras de datos.

    Inteligente: Ofrece una plataforma integral que brinda introspectiva e informacin donde sus usuarios lo desean

    Nuevas funcionalidades de SQL Server 2008: Proteccin de la Informacin

    Cmo podra saber si ha copiado la base de datos del servidor de produccin de un cliente y lo han instalado en otra base de datos o si estn accediendo a la informacin? Con SQL 2008, puede proteger la informacin con una clave de proteccin (Encriptacin).

    Cmo podra saber que datos estn siendo ledos y modificados, a qu hora y por quien? SQL 2008 da la opcin de Auditora de Datos.

    Continuidad del Negocio Si sus clientes necesitan estar siempre en lnea con sus sistemas sin cadas,

    SQL 2008 ofrece mejoras en una tcnica llamada Mirroring, el cual es una copia o espejo de la base de datos.

    Si el disco se daa, donde reside los datos, SQL 2008 recupera la informacin de una copia reciente de los datos daados al otro equipo espejo de manera transparente.

  • Universidad Nacional de Ingeniera

    Pg. 4 [email protected] SQL Administracin

    Ahorro en espacio en disco, mediante la tcnica de comprensin, ahorrando costos en compra de discos si es que el volumen de la informacin de Base de Datos empieza a crecer en forma rpida.

    Datos Geoespaciales Poder manejar informacin geogrfica, la que hoy en da es de alta importancia

    en las organizaciones, con todo el tema de globalizacin Acceder a la Informacin desde cualquier lugar en cualquier momento

    Con SQL 2008 podre crear rpidamente aplicaciones conectadas a la base de datos con la funcionalidad de funcionar en forma desconectada y despus sincronizarlos con la base de datos central sin perder la lnea de negocio y manteniendo los datos validados

    Reportes Poder acceder a reportes directamente desde Word, mejoras en los tipos de

    grficos en los reportes, hacindolos ms entendibles y poder editar los reportes de Microsoft Office, sin saber donde fue diseado el reporte.

    LAS EDICIONES DEL SQL SERVER 2008

    Cada una de las ediciones que se encuentran disponibles en el mercado, est dirigida a un grupo, para responder adecuadamente a las necesidades y requisitos de estos.

    EDICIONES DE SERVIDOR

    Trmino Definicin

    Enterprise

    (x86, x64 e

    IA64)1

    SQL Server Enterprise es una completa plataforma de datos que proporciona

    escalabilidad empresarial, rendimiento, alta disponibilidad y capacidades avanzadas de

    inteligencia empresarial para ejecutar aplicaciones seguras y esenciales para la

    empresa. Para obtener ms informacin, vea http://msdn.microsoft.com/es-

    es/library/cc645993(v=SQL.100).aspx .

    Standard

    (x86 y x64)

    SQL Server Standard es una completa plataforma de datos que proporciona facilidad

    de uso y capacidad de administracin. Esto incluye capacidades integradas de

    inteligencia empresarial para ejecutar aplicaciones de departamentos. Para obtener

    ms informacin, vea http://msdn.microsoft.com/es-

    es/library/cc645993(v=SQL.100).aspx .

    SQL Server Standard for Small Business contiene todos los componentes tcnicos y

    capacidades tcnicas de SQL Server Standard y su uso est autorizado en un entorno

    de pequea empresa con 75 equipos o menos.

    EDICIONES ESPECIALIZADAS

    Trmino Definicin

    SQL Server 2008

    Developer (x86,

    x64 e IA64)

    SQL Server 2008 Developer permite a los desarrolladores crear cualquier tipo de

    aplicacin basada en SQL Server. Incluye toda la funcionalidad de SQL Server

    2008 Enterprise, pero su uso est autorizado como sistema de desarrollo y

    pruebas, no como servidor de produccin. SQL Server 2008 Developer es una

    opcin ideal para las personas que crean y prueban aplicaciones. Puede

    actualizar SQL Server 2008 Developer para utilizarlo en produccin.

    Workgroup (x86 y

    x64)

    SQL Server Workgroup es ideal para ejecutar bases de datos ubicadas en

    sucursales y proporciona una administracin de datos confiable y una

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 5

    Trmino Definicin

    plataforma de informes que incluye capacidades de sincronizacin y de

    administracin seguras y remotas.

    Web (x86, x64) SQL Server 2008 Web es una opcin con un costo total de propiedad bajo para

    los hosts de web y los sitios web que proporciona capacidades de administracin

    y escalabilidad para propiedades web, tanto de pequea como de gran escala.

    SQL Server Express

    (x86 y x64)

    SQL Server Express

    with Tools (x86 y

    x64)

    SQL Server Express

    con Advanced

    Services (x86 y

    x64)

    La plataforma de bases de datos de SQL Server Express se basa en SQL Server

    2008. Es tambin la sustitucin de Microsoft Desktop Engine (MSDE). Gracias a

    su integracin con Visual Studio, SQL Server Express facilita el desarrollo de

    aplicaciones controladas por datos que tienen una gran capacidad, ofrecen un

    almacenamiento seguro y se implementan con rapidez.

    SQL Server Express es gratuito y los ISV pueden redistribuirlo (segn su

    contrato). SQL Server Express es ideal para conocer y crear pequeas

    aplicaciones de servidor y de escritorio. Esta edicin es la mejor opcin para los

    fabricantes de software independientes, los desarrolladores no profesionales y

    los aficionados que crean aplicaciones cliente. Si necesita caractersticas de base

    de datos ms avanzadas, SQL Server Express se puede actualizar sin problemas a

    versiones ms sofisticadas de SQL Server.

    Compact 3.5 SP1

    (x86)

    Compact 3.1 (x86)

    SQL Server Compact 3.5 es una base de datos gratuita e incrustada, ideal para

    crear aplicaciones independientes que se conectan ocasionalmente para

    dispositivos mviles, escritorios y clientes web en todas las plataformas de

    Windows.

    COMPONENTES QUE VIENEN A ESCOGER EN EL SQL SERVER

    Componentes de

    servidor

    Descripcin

    SQL Server Database

    Engine (Motor de base de

    datos de SQL Server)

    SQL Server Database Engine (Motor de base de datos de SQL Server)

    incluye Database Engine (Motor de base de datos), el servicio principal

    para almacenar, procesar y proteger datos; tambin incluye replicacin,

    bsqueda de texto completo y herramientas para administrar datos XML

    y relacionales.

    Analysis Services Analysis Services incluye las herramientas para crear y administrar

    aplicaciones de procesamiento analtico en lnea (OLAP) y de minera de

    datos.

    Reporting Services Reporting Services incluye componentes de servidor y de cliente para

    crear, administrar e implementar informes tabulares, matriciales, grficos

    y de forma libre. Reporting Services tambin es una plataforma

    extensible que puede utilizarse para desarrollar aplicaciones de informes.

    Integration Services Integration Services es un conjunto de herramientas grficas y objetos

    programables para mover, copiar y transformar datos.

    Herramientas de

    administracin

    Descripcin

    SQL Server Management

    Studio

    SQL Server Management Studio es un entorno integrado para tener

    acceso, configurar, administrar y desarrollar componentes de SQL Server.

  • Universidad Nacional de Ingeniera

    Pg. 6 [email protected] SQL Administracin

    Herramientas de

    administracin

    Descripcin

    Management Studio permite a los desarrolladores de software y

    administradores con diferentes grados de experiencia usar SQL Server.

    Para la instalacin de Management Studio, se requiere Internet Explorer 6

    Service Pack 1 o una versin posterior.

    Administrador de

    configuracin de SQL

    Server

    El Administrador de configuracin de SQL Server proporciona

    administracin de configuracin bsica para los servicios, protocolos de

    servidor, protocolos de cliente y alias de cliente de SQL Server.

    SQL Server Profiler SQL Server Profiler proporciona una interfaz grfica de usuario para

    supervisar una instancia del Database Engine (Motor de base de datos) o

    de Analysis Services.

    Asistente para la

    optimizacin de Database

    Engine (Motor de base de

    datos)

    El Asistente para la optimizacin de Database Engine (Motor de base de

    datos) crea conjuntos ptimos de ndices, vistas indizadas y particiones.

    Business Intelligence

    Development Studio

    Business Intelligence Development Studio es un IDE para las soluciones

    Analysis Services, Reporting Services y Integration Services. Para la

    instalacin de BI Development Studio, se requiere Internet Explorer 6

    Service Pack 1 o una versin posterior.

    Componentes de

    conectividad

    Instala componentes para la comunicacin entre clientes y servidores, y

    bibliotecas de red para DB-Library, ODBC y OLE DB.

    NMERO MXIMO DE PROCESADORES COMPATIBLES CON LAS EDICIONES DE

    SQL SERVER SQL Server admite el nmero especificado de sockets de procesador multiplicado por el nmero de CPU lgicas en cada socket. Por ejemplo, lo siguiente se considera un solo procesador para los fines de esta tabla:

    Un procesador de un solo ncleo e hipersubprocesamiento con dos CPU lgicas por socket.

    Un procesador de doble ncleo con dos CPU lgicas. Un procesador de ncleo cudruple con cuatro CPU lgicas. SQL Server se utiliza bajo licencia para cada socket del procesador y no para

    cada CPU lgica.

    Edicin de SQL Server 2008 Nmero de procesadores admitidos

    Enterprise Sistema operativo mximo

    Developer Sistema operativo mximo

    Standard 4

    Web 4

    Workgroup 2

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 7

    Edicin de SQL Server 2008 Nmero de procesadores admitidos

    Express 1

    Express with Tools 1

    Express con Advanced Services 1

    REQUISITOS DEL SISTEMA SQL SERVER 2008

    Componente Requisito

    Marco de

    trabajo2

    El programa de instalacin de SQL Server instala los siguientes componentes de

    software requeridos por el producto:

    .NET Framework 3.5 SP11

    SQL Server Native Client

    Archivos auxiliares para la instalacin de SQL Server

    Software2 El programa de instalacin de SQL Server requiere Microsoft Windows Installer 4.5 o

    una versin posterior

    Una vez instalados los componentes requeridos, el programa de instalacin de SQL

    Server comprobar que el equipo en el que se ha instalado SQL Server 2008

    tambin cumple los dems requisitos para su correcta instalacin. Para obtener ms

    informacin, vea Comprobar los parmetros del Comprobador de configuracin del

    sistema.

    Software de

    red

    Los requisitos de software de red para las versiones de 64 bits de SQL Server 2008

    son los mismos que para las versiones de 32 bits.

    Los sistemas operativos compatibles tienen el software de red integrado. Las

    instancias predeterminadas y con nombre independientes admiten los siguientes

    protocolos de red:

    Memoria compartida

    Canalizaciones con nombre

    TCP/IP

    VIA

    Nota La memoria compartida y VIA no se admiten en clsteres de conmutacin

    por error.

    Virtualizacin SQL Server 2008 es compatible con entornos de mquina virtual que se ejecutan en

    la funcin Hyper-V de las ediciones Standard, Enterprise y Datacenter de Windows

    Server 2008 R2 y Windows Server 2008. La mquina virtual debe ejecutarse en un

    sistema operativo compatible con la edicin de SQL Server 2008 concreta que se

    cita ms adelante en este tema.

    Adems de los recursos requeridos por la particin primaria, a cada mquina virtual

    (particin secundaria) se debe proporcionar suficientes recursos de procesador,

    memoria y recursos de disco para su instancia de SQL Server 2008. Los requisitos se

    enumeran ms adelante en este tema.3

    Dentro de la funcin Hyper-V de Windows Server 2008, se puede asignar un

    mximo de cuatro procesadores virtuales a mquinas virtuales que ejecuten las

    ediciones de 32 o 64 bits de Windows Server 2008. Se pueden asignar como

    mximo 2 procesadores virtuales a equipos virtuales que ejecuten ediciones de 32

    bits de Windows Server 2003. Para equipos virtuales que alojan otros sistemas

    operativos, se puede asignar como mximo un procesador virtual a equipos

  • Universidad Nacional de Ingeniera

    Pg. 8 [email protected] SQL Administracin

    Componente Requisito

    virtuales.

    Notas:

    Se recomienda cerrar SQL Server 2008 antes de apagar la mquina virtual.

    Para obtener ms informacin sobre la funcin Hyper-V de Windows Server 2008,

    vea el sitio web de Windows Server 2008.

    La agrupacin en clsteres de conmutacin por error del invitado se admite en SQL

    Server 2008. Para obtener ms informacin sobre las versiones admitidas de SQL

    Server y los sistemas operativos para la agrupacin en clsteres de conmutacin por

    error del invitado, y la compatibilidad con la virtualizacin, vea el tema que trata

    sobre la directiva de compatibilidad para los productos de Microsoft SQL Server que

    se ejecutan en un entorno virtual de hardware.

    Software de

    Internet

    Para todas las instalaciones de SQL Server 2008 se requiere Microsoft Internet

    Explorer 6 SP 1 o una versin posterior. Se requiere Internet Explorer 6 Service Pack

    1 o una versin posterior para Microsoft Management Console (MMC), SQL Server

    Management Studio, Business Intelligence Development Studio, el componente

    Diseador de informes de Reporting Services y la Ayuda HTML.

    Disco duro Las necesidades de espacio en disco variarn con los componentes de SQL Server

    2008 que instale. Para obtener ms informacin, vea Requisitos de espacio en disco

    duro, ms adelante en este tema.

    Unidad Para la instalacin desde disco se necesita una unidad de CD o DVD.

    Pantalla Las herramientas grficas de SQL Server 2008 requieren VGA o una resolucin

    mayor: resolucin mnima de 1.024 x 768 pxeles.

    Otros

    dispositivos

    Dispositivo sealador: se necesita un mouse Microsoft o dispositivo sealador

    compatible.

    Nota: Las versiones de 64 bits de SQL Server 2008 incluyen soporte para sistemas extendidos, tambin conocidos como Windows on Windows (WOW64). WOW64 es una caracterstica de las ediciones de 64 bits de Microsoft Windows que permite que las aplicaciones de 32 bits se ejecuten de forma nativa en modo de 32 bits. Las aplicaciones funcionan en modo de 32 bits aunque el sistema operativo subyacente se ejecute en la plataforma de 64 bits.

    Componente Requisito

    Procesador Tipo de procesador:

    Mnimo: AMD Opteron, AMD Athlon 64, Intel Xeon compatible con Intel EM64T,

    Intel Pentium IV compatible con EM64T

    Velocidad de procesador:

    Mnimo: 1,4 GHz

    Recomendado: 2,0 GHz o ms

    Sistema

    operativo

    Windows Server 2003 SP2 de 64 bits x64 Standard1

    Windows Server 2003 SP2 de 64 bits x64 Datacenter1

    Windows Server 2003 SP2 de 64 bits x64 Enterprise1

    Windows Server 2008 de 64 bits x64 Standard

    Windows Server 2008 de 64 bits x64 Standard sin Hyper-V

    Windows Server 2008 de 64 bits x64 Datacenter

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 9

    Componente Requisito

    Windows Server 2008 de 64 bits x64 Datacenter sin Hyper-V1

    Windows Server 2008 de 64 bits x64 Enterprise

    Windows Server 2008 de 64 bits x64 Enterprise sin Hyper-V1

    Windows Server 2008 R2 de 64 bits x64 Web1,2

    Windows Server 2008 R2 de 64 bits x64 Standard1,2

    Windows Server 2008 R2 de 64 bits x64 Enterprise1,2

    Windows Server 2008 R2 de 64 bits x64 Datacenter1,2

    Memoria RAM:

    Mnimo: 512 MB

    Recomendado: 2,048 GB o ms

    Mximo: mximo del sistema operativo

    CONSIDERACIONES SOBRE LA SEGURIDAD Para iniciar Management Studio, elija Programas>Microsoft SQL Server 2008>SQL Server Management Studio en el men de Inicio de Windows. Management Studio se

    instala durante la instalacin de Sql Server 2008. Al abrirse, le pide que se conecte a una instancia de SQL Server. En cuanto se conecte, la instancia de SQL Server aparece en el Explorador de objetos.

    Si fuera necesario, se podra dar a conocer caractersticas especiales sobre la conexin, para ello, hay que hacer clic sobre el botn Options, luego, aparecer la siguiente pantalla.

  • Universidad Nacional de Ingeniera

    Pg. 10 [email protected] SQL Administracin

    En el combo de base de datos, se podr seleccionar la Base de Datos con la cual deseamos conectarnos, esto depender del servidor con el cual nos enlacemos. En el rea de detalles de la red, veremos el modo de conexin que tenemos con el SQL Server, dicho sea de paso, no es necesario cambiar esta opcin. En conexiones, podemos especificar el tiempo de espera para la conexin, en tiempo de ejecucin, se determina el tiempo de espera para la ejecucin de las sentencias en T-SQL. Una vez que hayamos dado a conocer, todas las caractersticas necesarias para la conexin, haremos clic sobre el botn Connect. Seguidamente, veremos la pantalla del Management Studio.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 11

    Instalando el SQL Server 2008 Una vez que hayan decidido la Edicin a utilizar del SQL Server 2008, procederemos a instalar el software.

  • Universidad Nacional de Ingeniera

    Pg. 12 [email protected] SQL Administracin

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 13

    Aqu dan a conocer todos los servicios que van a utilizar:

  • Universidad Nacional de Ingeniera

    Pg. 14 [email protected] SQL Administracin

    Si tuvieran que crear una nueva instancia, aqu debern de dar el nombre de esta:

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 15

  • Universidad Nacional de Ingeniera

    Pg. 16 [email protected] SQL Administracin

    Tener en cuenta que la instalacin se debe de hacer con el usuario que tenga mximos privilegios, adems de tener una contrasea.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 17

  • Universidad Nacional de Ingeniera

    Pg. 18 [email protected] SQL Administracin

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 19

  • Universidad Nacional de Ingeniera

    Pg. 20 [email protected] SQL Administracin

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 21

  • Universidad Nacional de Ingeniera

    Pg. 22 [email protected] SQL Administracin

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 23

    CCAAPPIITTUULLOO 22

    Administracin de la Base de Datos y Archivos Planificacin de la BD. Creacin de la BD. Administracin de la BD. Uso de Schemas y FileGroups.

  • Universidad Nacional de Ingeniera

    Pg. 24 [email protected] SQL Administracin

    C R E A C I N D E L A B D Para crear la base de datos, podemos hacer uso del management Studio, o a travs de sentencias T-SQL, en ambos casos, tendremos los mismos resultados. El proceso de definicin de una base de datos crea tambin un registro de transacciones para esa base de datos. Utilizando el management Studio, el procedimiento sera el siguiente, primero nos ubicamos sobre el objeto Databases, luego clic derecho. Del men contextual, seleccionar la alternativa New Database, para que se muestre la ventana de propiedades de la nueva base de datos. Desde esta ventana, podremos darle nombre a la nueva base de datos, tambin se puede especificar el propietario, as como los nombres fsicos y lgicos de la base de datos.

    Si fuera necesario agregar nuevos grupos de archivos, hacer clic sobre el botn Add, luego aparecer la siguiente pantalla.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 25

    Desde aqu podremos crear los nuevos grupos de archivo, con los cuales trabajar nuestra base de datos. Para crear la base de datos desde T-SQL, podemos escribir lo siguiente: Creando la base de datos sin dar mayores especificaciones sobre los archivos a crear:

    USE master; GO

    IF DB_ID (N'sistemasUNI') IS NOT NULL

    DROP DATABASE miproyecto; GO

    CREATE DATABASE sistemasUNI;

    GO Verificando los archivos y tamaos de la BD SELECT name, size, size*1.0/128 AS [Size in MBs]

    FROM sys.master_files WHERE name = N' sistemasUNI ';

    GO

    Creando una base de datos especificando los archivos de datos y de transacciones USE master;

    GO

    IF DB_ID (N'Ventitas') IS NOT NULL DROP DATABASE Sales;

    GO obteniendo la ruta del SQL Server DECLARE @data_path nvarchar(256);

    SET @data_path = ( SELECT SUBSTRING(physical_name, 1,

    CHARINDEX(N'master.mdf', LOWER(physical_name)) - 1) FROM master.sys.master_files

    WHERE database_id = 1 AND file_id = 1);

    -- ejecutando la sentencia CREATE DATABASE EXECUTE ('CREATE DATABASE Ventitas

    ON ( NAME = Ventitas _dat,

    FILENAME = '''+ @data_path + ' Ventitasdat.mdf'',

    SIZE = 10, MAXSIZE = 50,

    FILEGROWTH = 5 ) LOG ON

    ( NAME = Ventitas _log,

    FILENAME = '''+ @data_path + ' Ventitaslog.ldf'', SIZE = 5MB,

    MAXSIZE = 25MB,

  • Universidad Nacional de Ingeniera

    Pg. 26 [email protected] SQL Administracin

    FILEGROWTH = 5MB )' );

    GO

    Creando una base de datos con mltiples archivos, los archivos con extensiones mdf contienen los archivos primarios, los ndf contienen los archivos secundarios y los ldf contienen las transacciones.

    USE master;

    GO

    IF DB_ID (N'Archivo') IS NOT NULL DROP DATABASE Archivo;

    GO obteniendo la ruta del SQL Server DECLARE @data_path nvarchar(256); SET @data_path =(SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf',

    LOWER(physical_name)) - 1) FROM master.sys.master_files WHERE database_id = 1 AND file_id = 1);

    -- ejecutar la sentencia CREATE DATABASE

    EXECUTE ('CREATE DATABASE Archivo ON PRIMARY

    ( NAME = Arch1, FILENAME = '''+ @data_path + 'archdat1.mdf'',

    SIZE = 100MB,

    MAXSIZE = 200, FILEGROWTH = 20),

    ( NAME = Arch2, FILENAME = '''+ @data_path + 'archdat2.ndf'',

    SIZE = 100MB,

    MAXSIZE = 200, FILEGROWTH = 20),

    ( NAME = Arch3,

    FILENAME = '''+ @data_path + 'archdat3.ndf'', SIZE = 100MB,

    MAXSIZE = 200, FILEGROWTH = 20)

    LOG ON

    ( NAME = Archlog1, FILENAME = '''+ @data_path + 'archlog1.ldf'',

    SIZE = 100MB, MAXSIZE = 200,

    FILEGROWTH = 20),

    ( NAME = Archlog2, FILENAME = '''+ @data_path + 'archlog2.ldf'',

    SIZE = 100MB,

    MAXSIZE = 200, FILEGROWTH = 20)' );

    GO

    La informacin acerca de las bases de datos de SQL Server est almacenada en la tabla sysdatabases de la base de datos master. Por tanto, debe utilizar la base de datos master para definir una base de datos cuando utilice instrucciones Transact-SQL. La definicin de una base de datos consiste en especificar el nombre de la base de datos, y disear el tamao y la ubicacin de los archivos de la base de datos. Cuando se crea la nueva base de datos, sta es un duplicado de la base de datos model. Las opciones o configuraciones de la base de datos model se copian en la nueva base de datos. Importante, se recomienda hacer una copia de seguridad de la base de datos master

    cada vez que cree, modifique o elimine una base de datos. Al crear una base de datos se pueden establecer los siguientes parmetros:

    PRIMARY

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 27

    Este parmetro especifica los archivos del grupo de archivos principal. El grupo de archivos principal contiene todas las tablas del sistema de la base de datos. Tambin contiene todos los objetos no asignados a grupos de archivos del usuario. Todas las bases de datos tienen un archivo de datos principal. El archivo de datos principal es el punto de inicio de la base de datos y seala a los dems archivos de la base de datos. La extensin de nombre de archivo recomendada para los archivos de datos principales es mdf. Si no se especifica la palabra clave PRIMARY, el primer archivo enumerado en la instruccin es el archivo principal.

    FILENAME Este parmetro especifica el nombre del archivo del sistema operativo y la ruta de acceso al archivo. La ruta acceso de archivo debe especificar una carpeta del servidor en el que est instalado SQL Server.

    SIZE Este parmetro especifica el tamao de los archivos de datos o de registro. Puede especificar los tamaos en megabytes (MB), que es el valor predeterminado, o en kilobytes (KB). El tamao mnimo es de 512 KB, tanto para los archivos de datos como para los archivos de registro. El tamao especificado para el archivo de datos principal debe ser, al menos, como el tamao del archivo principal de la base de datos model. Cuando se agrega un archivo de datos o un archivo de registro, el valor predeterminado es 1 MB.

    MAXSIZE Este parmetro especifica el tamao mximo hasta el que puede crecer el archivo. Puede especificar el tamao en megabytes (valor predeterminado) o en kilobytes. Si no se especifica el tamao, el archivo crece hasta que el disco est lleno. FILEGROWTH Este parmetro especifica el incremento de crecimiento del archivo. El valor de FILEGROWTH de un archivo no puede sobrepasar el valor de MAXSIZE. Un valor de 0 indica que no hay crecimiento. El valor se puede especificar en megabytes (el valor predeterminado), en kilobytes o como porcentaje (%). Si no se especifica FILEGROWTH, el valor predeterminado es el 10 por ciento y el valor mnimo es 64 KB (una extensin). El tamao especificado se redondea al mltiplo de 64 KB ms prximo.

    COLLATION Este parmetro especifica la intercalacin predeterminada para la base de datos. La intercalacin incluye las reglas que gobiernan el uso de caracteres de un lenguaje o un alfabeto.

  • Universidad Nacional de Ingeniera

    Pg. 28 [email protected] SQL Administracin

    Registro de Transacciones

    SQL Server graba todas las transacciones en un registro de transacciones para mantener la coherencia de la base de datos y facilitar la recuperacin. El registro es un rea de almacenamiento que efecta automticamente el seguimiento de todos los cambios en la base de datos. SQL Server graba las modificaciones al registro en disco cuando se ejecutan, antes de que se escriban en la base de datos. El proceso de registro es el siguiente: La aplicacin enva una modificacin de datos. Cuando la modificacin se ejecuta, las pginas de datos afectadas se cargan en la cach del bfer desde el disco si no estn ya cargadas en la cach del bfer por una consulta anterior. Cada instruccin de modificacin de datos se graba en el registro mientras se ejecuta. El cambio siempre se graba en el registro y se escribe en disco antes de hacer la modificacin en la base de datos. Este tipo de registro se denomina registro de preescritura. De forma repetitiva, el proceso de punto de comprobacin escribe en disco todas las transacciones completadas en la base de datos. Si se produce un error del sistema, el proceso automtico de recuperacin utiliza el registro de transacciones para aplicar todas las transacciones confirmadas y deshacer las transacciones incompletas. Los marcadores de transaccin del registro se utilizan durante la recuperacin automtica para determinar los puntos de inicio y fin de cada transaccin. Una transaccin se considera completa cuando el marcador BEGIN TRANSACTION tiene

    Buffer Cache

    Pginas de datos se encuentran en, o se leen, en el buffer de cach y son modificados

    2

    La modificacin se registra en diario de las transacciones en el disco

    3

    Checkpoint escribe cometido de las transacciones en la base de datos

    4

    Modificaciones de datos es enviada por la aplicacin

    1

    Disk

    Disk

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 29

    un marcador COMMIT TRANSACTION asociado. Las pginas de datos se escriben en disco cuando existe un punto de comprobacin.

    Administracin de la BD. Despus de haber creado una base de datos, se puede definir opciones de base de datos con el Management Studio del SQL Server o por medio de la instruccin ALTER DATABASE. Puede configurar varias opciones de base de datos, pero slo se puede hacer en una sola base de datos al mismo tiempo. Para que las opciones afecten a todas las bases de datos nuevas, cambie la base de datos model. La tabla siguiente enumera algunas de las opciones de uso ms frecuente. Propiedad Descripcin Valor Retornado

    Opciones automticas

    AUTO_CREATE_STATISTICS Crea automticamente las estadsticas que faltan que son necesarias para la optimizacin de consultas. El valor predeterminado es ON.

    AUTO_UPDATE_STATISTICS Actualiza automticamente las estadsticas desfasadas necesarias para la optimizacin de consultas. El valor predeterminado es ON.

    Opciones de cursor

    CURSOR_CLOSE_ON_COMMIT Cierra automticamente los cursores abiertos cuando se confirma una transaccin. El valor predeterminado es OFF y los cursores permanecen abiertos.

    CURSOR_DEFAULT LOCAL | GLOBAL

    CURSOR_DEFAULT_LOCAL limita el mbito del cursor. Es local al lote, procedimiento almacenado o desencadenador en el que se cre el cursor. CURSOR_DEFAULT_GLOBAL es el valor predeterminado; el mbito del cursor es global respecto a la conexin.

    Opciones de recuperacin

    RECOVERY FULL | BULK_LOGGED | SIMPLE

    FULL proporciona recuperabilidad completa ante errores del medio; es el valor predeterminado. BULK_LOGGED utiliza menos espacio de registro porque el registro es mnimo, pero tiene un riesgo mayor de exposicin. SIMPLE recupera la base de datos slo hasta la ltima copia de seguridad completa de la base de datos o hasta la ltima copia de seguridad diferencial.

    TORN_PAGE_DETECTION Permite a SQL Server detectar

  • Universidad Nacional de Ingeniera

    Pg. 30 [email protected] SQL Administracin

    Propiedad Descripcin Valor Retornado

    operaciones de E/S incompletas causadas por cortes de energa u otros apagones del sistema. El valor predeterminado es ON.

    Opciones de SQL ANSI_NULL_DEFAULT Permite al usuario controlar la capacidad de asignacin predeterminada de valores NULL de la base de datos.

    ANSI_NULLS Si est activada, todas las comparaciones con un valor nulo se evalan como NULL (desconocido). Si est desactivada, todas las comparaciones de valores no Unicode con un valor nulo se evalan como verdaderas (TRUE) si ambos valores son NULL. De manera predeterminada, la opcin de base de datos ANSI_NULLS es OFF.

    Opciones de estado

    READ_ONLY | READ_WRITE Define la base de datos como de slo lectura (se utiliza para establecer la seguridad en las bases de datos de ayuda a la toma de decisiones) o devuelve la base de datos a operaciones de lectura y escritura.

    SINGLE_USER | RESTRICTED_USER | MULTI_USER

    SINGLE_USER permite que los usuarios se conecten a la base de datos de uno en uno. Todas las dems conexiones se interrumpen. RESTRICTED_USER permite que slo los miembros de la funcin fija de base de datos db_owner y de las funciones fijas de servidor dbcreator y sysadmin se conecten a la base de datos. MULTI_USER permite que todos los usuarios con los permisos adecuados se conecten a la base de datos. MULTI_USER es la opcin predeterminada.

    Recuperacin de informacin de la base de datos

    Puede determinar las propiedades de la base de datos con la siguiente funcin DATABASEPROPERTYEX. SELECT DATABASEPROPERTYEX (base de datos, propiedad) Tener en cuenta que, esta funcin slo devuelve el valor de una propiedad a la vez.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 31

    La siguiente tabla enumera algunas de las propiedades de la base de datos.

    Propiedad Descripcin Valor retornado

    Collation nombre por defecto para la base de datos.

    Collation name NULL = Database is not started. Base data type: nvarchar(128)

    ComparisonStyle The Windows comparison style of the collation. ComparisonStyle is a bitmap that is calculated by using the following values.

    Style Value

    Ignore case

    1

    Ignore accent

    2

    Ignore Kana

    65536

    Ignore width

    131072

    For example, the default of 196609 is the result of combining the Ignore case, Ignore Kana, and Ignore width options.

    Returns the comparison style. Returns 0 for all binary collations. Base data type: int

    IsAnsiNullDefault

    Base de datos sigue normas ISO para permitir valores nulos.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAnsiNullsEnabled Todas las comparaciones a nulo para evaluar desconocidos.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAnsiPaddingEnabled Cadenas son rellenadas con la misma longitud antes de comparacin o insercin.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAnsiWarningsEnabled Mensajes de error o de advertencia se emiten cuando un error estndar se produce.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsArithmeticAbortEnabled Las consultas se terminan cuando un error por desbordamiento o divisin por cero se produce durante la ejecucin de las consultas.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAutoClose Base de Datos se cierra limpiando y liberando recursos a partir de la

    1 = TRUE 0 = FALSE NULL = Input not valid

  • Universidad Nacional de Ingeniera

    Pg. 32 [email protected] SQL Administracin

    Propiedad Descripcin Valor retornado ltima salida de usuario

    Base data type: int

    IsAutoCreateStatistics Falta de estadsticas que se requieren de una consulta para la optimizacin automtica se construy durante la consulta de optimizacin.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAutoShrink Archivos de Base de datos son candidatos para peridos automticos de disminucin.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsAutoUpdateStatistics Estadsticas existentes son actualizadas automticamente, por las estadsticas de fuera de fecha, porque los datos en las tablas han cambiado.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsCloseCursorsOnCommitEnabled Cursores que estn abiertas cuando una transaccin se ha comprometido estn cerradas

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsFulltextEnabled Base de Datos con full-text permitido.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsInStandBy Base de Datos esta online como read-only, con restauracin del log permitido.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsLocalCursorsDefault Declaracin del Cursor por defecto como LOCAL

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsMergePublished Las tablas de una Base de Datos pueden ser publicadas para una replicacin, si la replicacin est instalada.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsNullConcat Concatenacin de operaciones Null rinden con NULL.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsNumericRoundAbortEnabled Los errores se generan cuando la prdida de precisin se produce en las expresiones

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsParameterizationForced PARAMETERIZATION de la base de datos con la opcin SET es FORCED.

    1 = TRUE 0 = FALSE NULL = Input not valid

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 33

    Propiedad Descripcin Valor retornado

    IsQuotedIdentifiersEnabled Doble comillas se puede utilizar en identificadores.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsPublished Las tablas de la base de datos pueden ser publicados por la instantnea o la replicacin transaccional, si se instala la replicacin.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsRecursiveTriggersEnabled Recursivo disparo de factores desencadenantes est activado

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsSubscribed Base de datos est suscrito a una publicacin

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsSyncWithBackup La base de datos es una base de datos de publicacin o una base de datos de distribucin, y puede ser restaurada sin interrumpir la replicacin transaccional.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    IsTornPageDetectionEnabled

    El SQL Server Database Engine Engine detecta operaciones incompletas de E/S causados por fallos de energa o cortes de otro sistema.

    1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int

    LCID El identificador de Windows local (LCID) de la colacin.

    LCID value (in decimal format). Base data type: int For a list of LCID values (in hexadecimal format), see Collation Settings in Setup.

    Recovery Modelo de recuperacin para la base de datos

    FULL = Full recovery model BULK_LOGGED = Bulk logged model SIMPLE = Simple recovery model Base data type: nvarchar(128)

    SQLSortOrder SQL Server sort order ID supported in earlier versions of SQL Server SQL Server ordenanimiento, apoya ordenamiento por ID en las versiones anteriores de SQL Server

    0 = Database is using Windows collation >0 = SQL Server sort order ID NULL = Input not valid or database is not started Base data type: tinyint

    Status Estado de la Base de ONLINE = Database is

  • Universidad Nacional de Ingeniera

    Pg. 34 [email protected] SQL Administracin

    Propiedad Descripcin Valor retornado Datos. available for query.

    OFFLINE = Database was explicitly taken offline. RESTORING = Database is being restored. RECOVERING = Database is recovering and not yet ready for queries. SUSPECT = Database did not recover. EMERGENCY = Database is in an emergency, read-only state. Access is restricted to sysadmin members Base data type: nvarchar(128)

    Updateability Indica si los datos pueden ser modificados

    READ_ONLY = Data can be read but not modified. READ_WRITE = Data can be read and modified. Base data type: nvarchar(128)

    UserAccess Indica que los usuarios puedan acceder a la base de datos.

    SINGLE_USER = Only one db_owner, dbcreator, or sysadmin user at a time RESTRICTED_USER = Only members of db_owner, dbcreator, and sysadmin roles MULTI_USER = All users Base data type: nvarchar(128)

    Version

    Nmero de versin interna del cdigo SQL Server con el que la base de datos se ha creado. Identificado slo con fines informativos. No soportado. La compatibilidad en el futuro no est garantizada.

    Version number = Database is open. NULL = Database is not started. Base data type: int

    La siguiente tabla enumera los procedimientos almacenados del sistema de uso comn que presentan informacin acerca de las bases de datos y sus parmetros.

    Procedimiento almacenado de sistema

    Descripcin

    sp_helpdb Informa acerca de todas las bases de datos de un servidor. Proporciona el nombre, tamao, propietario, Id., fecha de creacin y opciones

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 35

    Procedimiento almacenado de sistema

    Descripcin

    de la base de datos.

    sp_helpdb baseDeDatos Informa slo acerca de la base de datos especificada. Proporciona el nombre, tamao, propietario, Id., fecha de creacin y opciones de la base de datos. Tambin enumera los archivos de datos y de registro.

    sp_spaceused [nombreObjeto] Resume el espacio de almacenamiento que utiliza una base de datos o un objeto de base de datos.

    Componentes fsicos: archivos y grupos de archivos de bases de datos (FileGroup). Un grupo de archivos es un conjunto lgico de archivos de datos que permite a los administradores controlar todos los archivos del grupo como un nico elemento. La posibilidad de controlar la posicin fsica de los objetos individuales de la base de datos puede proporcionar diversas ventajas en cuanto a facilidad de administracin y rendimiento. Por ejemplo, puede utilizar varios grupos de archivos para controlar cmo se almacenan fsicamente los datos de una base de datos en dispositivos de almacenamiento, y para separar los datos de lectura y escritura de los datos de slo lectura.

    Tipos de grupos de archivos

    SQL Server 2008 tiene un grupo de archivos principal y tambin puede tener grupos de archivos definidos por el usuario.

  • Universidad Nacional de Ingeniera

    Pg. 36 [email protected] SQL Administracin

    El grupo de archivos principal contiene el archivo principal de datos con las tablas del sistema. El archivo principal de datos utiliza normalmente la extensin .mdf. Un grupo de archivos definido por el usuario consta de archivos de datos agrupados con fines de asignacin y administrativos. Estos otros archivos de datos se conocen como archivos secundarios de datos y suelen utilizar la extensin .ndf.

    SITUACIN DE EJEMPLO PARA VARIOS GRUPOS DE ARCHIVOS La ilustracin proporciona un ejemplo de cmo podra colocar los archivos de base de datos en discos diferentes, como se describe en la lista siguiente: Puede crear grupos de archivos definidos por el usuario para separar los archivos que se consultan con mucha frecuencia de los que se modifican mucho. En la ilustracin, los archivos OrdHist1.ndf y OrdHist2.ndf se colocan en un disco distinto que las tablas Product, Customer y SalesOrderHeader, ya que se consultan como ayuda para la toma de decisiones en lugar de actualizarse con informacin de pedidos actual. Tambin podra colocar los archivos OrdHist1.ndf y OrdHist2.ndf en discos diferentes si ambos se consultaran con mucha frecuencia. No puede poner archivos de registro de transacciones en grupos de archivos. El espacio del registro de transacciones se administra por separado del espacio de datos. Los registros de transacciones suelen utilizar la extensin .ldf. En el siguiente ejemplo de cdigo Transact-SQL se utiliza la instruccin CREATE DATABASE para implementar esta situacin de ejemplo. CREATE DATABASE [AdventureWorks] ON PRIMARY ( NAME = N'AdventureWorks_Data', FILENAME = N'C:\AdventureWorks_Data.mdf' ), FILEGROUP [OrderHistoryGroup] ( NAME = N'OrdHist1', FILENAME = N'D:\OrdHist1.ndf' ), ( NAME = N'OrdHist2', FILENAME = N'D:\OrdHist2.ndf' ) LOG ON ( NAME = N'AdventureWorks_log', FILENAME = N'E:\AdventureWorks_log.ldf') Tambin puede utilizar la instruccin ALTER DATABASE para agregar o eliminar archivos y grupos de archivos de bases de datos existentes.

    CUNDO CREAR GRUPOS DE ARCHIVOS Puede crear varios archivos de datos en discos diferentes y crear un grupo de archivos definido por el usuario para contener los archivos. Las dos razones principales para utilizar grupos de archivos son mejorar el rendimiento y controlar la colocacin fsica de datos.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 37

    Uso de varios archivos en un nico grupo de archivos para mejorar el rendimiento Si bien Matriz redundante de discos independientes (RAID) es la manera preferida de mejorar el rendimiento de una base de datos, puede asignar varios archivos de discos distintos a un nico grupo de archivos para mejorar el rendimiento implementando una forma de seccionamiento de datos dentro de SQL Server. Puesto que SQL Server utiliza una estrategia de relleno proporcional al escribir datos en un grupo de archivos, los datos se reparten entre los archivos y, por tanto, en las particiones fsicas del disco. Este mtodo permite tener un control ms fino sobre el seccionamiento de datos del que se puede lograr al crear un conjunto de volmenes seccionados en el sistema operativo Windows, o utilizando una controladora de matriz RAID. Nota: En la mayora de los casos, el uso de las funciones de seccionamiento de RAID Proporciona la misma ganancia de rendimiento que podra lograr utilizando grupos de archivos definidos por el usuario, sin la carga administrativa agregada que supone definir y administrar los grupos de archivos.

    USO DE VARIOS GRUPOS DE ARCHIVOS PARA CONTROLAR LA COLOCACIN

    FSICA DE LOS DATOS Para utilizar grupos de archivos con el fin de simplificar el mantenimiento o lograr objetivos de diseo, puede: Almacenar los datos de lectura y escritura separados de los datos de slo lectura para mantener separados los diferentes tipos de actividad de E/S de disco. Almacenar los ndices en discos diferentes que las tablas, lo que puede conducir a un mayor rendimiento. Hacer copia de seguridad o restaurar archivos individuales o grupos de archivos en lugar de hacer copia de seguridad o restaurar una base de datos entera. Puede ser

  • Universidad Nacional de Ingeniera

    Pg. 38 [email protected] SQL Administracin

    necesario hacer copia de seguridad de archivos o de grupos de archivos para las bases de datos grandes con el fin de tener una estrategia eficaz de copia de seguridad y restauracin. Agrupar en los mismos grupos de archivos las tablas y los ndices que tienen unos requisitos de mantenimiento similares. Quizs desee realizar tareas de mantenimiento en algunos objetos con ms frecuencia que en otros. Por ejemplo, si crea dos grupos de archivos y les asigna tablas, puede ejecutar las tareas diarias de mantenimiento en las tablas de un grupo diario y las tareas de mantenimiento semanales en las tablas de un grupo semanal. Esto limita la contencin de disco entre los dos grupos de archivos. Separar las tablas de usuario y otros objetos de base de datos de las tablas del sistema en el grupo de archivos principal. Tambin debe cambiar el grupo de archivos predeterminado para evitar que el crecimiento inesperado de las tablas restrinja las tablas del sistema del grupo de archivos principal. Almacenar las particiones de una tabla con particiones en varios grupos de archivos. sta es una buena forma de separar fsicamente los datos que tienen necesidades de acceso diferentes dentro de una nica tabla, y tambin puede proporcionar ventajas de facilidad de administracin y rendimiento.

    Creacin de esquemas Los desarrolladores que hayan trabajado con Microsoft .NET Framework o con XML estarn familiarizados con el concepto de espacios de nombres. Un espacio de nombres ayuda a agrupar los objetos relacionados, haciendo que las listas de objetos complejas sean ms fciles de administrar. SQL Server 2008 utiliza esquemas para implementar un concepto similar para los objetos de base de datos. Los objetos de una base de datos (como tablas, vistas y procedimientos almacenados) se crean dentro de un esquema. Es esencial comprender lo que es un esquema antes de planear e implementar una base de datos de SQL Server 2008.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 39

    ESQUEMAS COMO ESPACIOS DE NOMBRES Un esquema es un espacio de nombres para objetos de base de datos. Es decir, un esquema define un lmite dentro del cual todos los nombres son nicos. Puesto que los nombres de esquema deben ser nicos dentro de la base de datos, cada objeto de una base de datos tiene un nombre completo nico con el formato servidor.base de datos.esquema.objeto. Dentro de una base de datos, puede acortarlo a esquema.objeto. La ilustracin anterior muestra tres esquemas de la base de datos AdventureWorks en una instancia de SQL Server denominada Server1. Los esquemas se denominan Person, Sales y dbo. Cada uno de estos esquemas contiene una tabla y el nombre completo de la tabla incluye el nombre del servidor, la base de datos y el esquema. Por ejemplo, el nombre completo de la tabla ErrorLog del esquema dbo es Server1.AdventureWorks.dbo.ErrorLog. En versiones anteriores de SQL Server, el espacio de nombres de un objeto estaba determinado por el nombre de usuario de su propietario. En SQL Server 2008, los esquemas estn separados de la propiedad de los objetos, lo que proporciona las ventajas siguientes: Mayor flexibilidad a la hora de organizar los objetos de base de datos en espacios de nombres, ya que la agrupacin de objetos en esquemas no depende de la propiedad de los objetos. Administracin de permisos ms sencilla, ya que se puede otorgar permisos en el mbito del esquema y en los objetos individuales. Facilidad de administracin mejorada, porque al quitar a un usuario no es necesario cambiar el nombre de todos los objetos que ese usuario posee.

    ESQUEMAS DE EJEMPLO La base de datos AdventureWorks utiliza los esquemas siguientes para organizar sus objetos de base de datos en espacios de nombres: HumanResources Person Production Purchasing Sales Por ejemplo, para hacer referencia a la tabla Employee del esquema HumanResources se utiliza HumanResources.Employee. El esquema dbo Todas las bases de datos contienen un esquema denominado dbo. dbo es el esquema predeterminado para todos los usuarios que no tienen ningn otro esquema predeterminado definido explcitamente. Creacin de un esquema Para crear un esquema, utilice el Explorador de objetos de SQL Server Management Studio o utilice la instruccin CREATE SCHEMA, como se muestra en el ejemplo siguiente. Use AdventureWorks

  • Universidad Nacional de Ingeniera

    Pg. 40 [email protected] SQL Administracin

    GO CREATE SCHEMA Sales GO

    Cmo funciona la resolucin de nombres de objetos

    Cuando una base de datos contiene varios esquemas, la resolucin de nombres de objetos puede resultar confusa. Por ejemplo, una base de datos podra contener dos tablas denominadas Order en dos esquemas diferentes, Sales y dbo. Los nombres completos de los objetos dentro de la base de datos son inequvocos: Sales.Order y dbo.Order, respectivamente. Sin embargo, el uso del nombre incompleto Order puede producir resultados inesperados. Puede asignar a los usuarios un esquema predeterminado para controlar cmo se resuelven los nombres de objetos incompletos.

    CMO FUNCIONA LA RESOLUCIN DE NOMBRES SQL Server 2008 utiliza el proceso siguiente para resolver un nombre de objeto incompleto: Si el usuario tiene un esquema predeterminado, SQL Server intenta encontrar el objeto en ese esquema predeterminado. Si el objeto no se encuentra en el esquema predeterminado del usuario, si el usuario no tiene ningn esquema predeterminado, SQL Server intenta encontrar el objeto en el esquema dbo.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 41

    Por ejemplo, un usuario que tiene el esquema predeterminado Person ejecuta la siguiente instruccin Transact-SQL: SELECT * FROM Contact SQL Server 2008 intentar resolver primero el nombre de objeto como Person.Contact. Si el esquema Person no contiene un objeto denominado Contact, SQL Server intentar resolver el nombre de objeto como dbo.Contact. Si un usuario que no tiene ningn esquema predeterminado definido ejecuta la misma instruccin, SQL Server resolver inmediatamente el nombre de objeto como dbo.Contact. Asignacin de un esquema predeterminado Puede asignar un esquema predeterminado a un usuario utilizando el cuadro de dilogo Propiedades de Usuario de la base de datos o especificando el nombre del esquema en la clusula DEFAULT_SCHEMA de la instruccin CREATE USER o ALTER USER. Por ejemplo, el siguiente cdigo Transact-SQL asigna Sales como el esquema predeterminado para el usuario Angello: ALTER USER Angello WITH DEFAULT_SCHEMA = Sales

  • Universidad Nacional de Ingeniera

    Pg. 42 [email protected] SQL Administracin

    CCAAPPIITTUULLOO 33

    Planificacin de una Estrategia de Backups

    Realizando el Backup de la BD

    Restaurando una BD

    Recuperacin de datos desde Snapshots

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 43

    P L A N I F I C A C I N D E U N A E S T R A T E G I A D E

    B A C K U P S Con frecuencia, los datos en una base de datos confirman las operaciones de una organizacin. Sin la base de datos, la organizacin no puede funcionar adecuadamente. Es importante que cada misin crtica sistema de base de datos haya sido adecuadamente definida en procedimientos de recuperacin de desastres. Las operaciones de Copia de seguridad y Restauracin, son una parte vital de la gestin de datos y son esenciales para la recuperacin ante fallas y desastres. Por lo tanto, una parte importante del papel de un administrador de bases de datos, es garantizar que los datos sean respaldados y puedan ser restaurados rpidamente en caso de un desastre.

    Tipos de Backup Descripcin

    Full Todos los archivos de la Base de Datos, datos (MDF y NDF) y de

    transacciones (LDF).

    Transaction Log Cualquier cambio en la Base de Datos, es guardado en el archivo

    de transacciones.

    Tail-Log La porcin activa del archivo de transacciones.

    Differential Las partes de la Base de Datos que han cambiado desde el ltimo

    backup completo a la Base de Datos.

    File / Filegroup Archivos especficos o grupos de archivos.

    Partial El grupo de archivos primario, cada grupo de archivos de

    lectura/escritura, y cualquier grupo de archivos especificado como

    lectura/escritura.

    Copy-only La Base de Datos o el archivo de Transacciones (sin afectar la

    secuencia de backup).

    Realizando el Backup de la BD

    Uso de la Instruccin BACKUP DATABASE

    Realiza una copia de seguridad completa de la base de datos o de uno o varios archivos o grupos de archivos (BACKUP DATABASE). Adems, con el modelo de recuperacin completa o el modelo de recuperacin optimizado para cargas masivas de registros, realiza la copia de seguridad del registro de transacciones (BACKUP LOG). Sintaxis --creando un backup

    BACKUP DATABASE { database_name | @database_name_var }

    TO [ ,...n ]

  • Universidad Nacional de Ingeniera

    Pg. 44 [email protected] SQL Administracin

    [ ] [ next-mirror-to ]

    [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;]

    --Backup para Files o Filegroups BACKUP DATABASE { database_name | @database_name_var }

    [ ,...n ]

    TO [ ,...n ] [ ] [ next-mirror-to ]

    [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;]

    --Creando un Backup Parcial BACKUP DATABASE { database_name | @database_name_var }

    READ_WRITE_FILEGROUPS [ , [ ,...n ] ] TO [ ,...n ]

    [ ] [ next-mirror-to ]

    [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;]

    Argumentos

    DATABASE Especifica una copia de seguridad completa de la base de datos. Si se especifica una lista de archivos y grupos de archivos, slo se realiza la copia de seguridad de esos archivos o grupos de archivos. Durante una copia de seguridad completa o diferencial de una base de datos, SQL Server realiza la copia de seguridad de una parte suficiente del registro de transacciones para producir una base de datos coherente cuando se restaure la base de datos. LOG Especifica que slo se realizar la copia de seguridad del registro de transacciones. Se realiza la copia de seguridad del registro desde la ltima copia de seguridad del registro ejecutada correctamente hasta el final actual del registro. Antes de que pueda crear la primera copia de seguridad del registro, debe crear una copia de seguridad completa. { database_name | @database_name_var } Es la base de datos para la que se realiza la copia de seguridad del registro de transacciones, de una parte de la base de datos o de la base de datos completa. Si se proporciona como una variable (@database_name_var), este nombre se puede especificar como una constante de cadena (@database_name_var = database name) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text. [ ,...n ] Se utiliza slo con BACKUP DATABASE, especifica un grupo de archivos o un archivo de copia de seguridad que se va a incluir en una copia de seguridad de archivos o especifica un grupo de archivos o un archivo de slo lectura que se va a incluir en una copia de seguridad parcial. FILE = { logical_file_name | @logical_file_name_var } Es el nombre lgico de un archivo o una variable cuyo valor equivale al nombre lgico de un archivo que se va a incluir en la copia de seguridad. FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 45

    Es el nombre lgico de un grupo de archivos o una variable cuyo valor equivale al nombre lgico de un grupo de archivos que se va a incluir en la copia de seguridad. En el modelo de recuperacin simple, se permite la copia de seguridad de un grupo de archivos slo si se trata de un grupo de archivos de slo lectura. n Es un marcador de posicin que indica que se pueden especificar varios archivos y grupos de archivos en una lista separada por comas. El nmero es ilimitado. READ_WRITE_FILEGROUPS [ , FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var } [ ,...n ] ] Especifica una copia de seguridad parcial. Una copia de seguridad parcial incluye todos los archivos de lectura/escritura en una base de datos: el grupo de archivos principal y los grupos de archivos secundarios de lectura/escritura, as como los grupos de archivos o archivos de slo lectura especificados. READ_WRITE_FILEGROUPS Especifica que en la copia de seguridad parcial se copiarn todos los grupos de archivos de lectura/escritura. Si la base de datos es de slo lectura, READ_WRITE_FILEGROUPS incluye tan slo el grupo de archivos principal. FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var } Es el nombre lgico de un grupo de archivos de slo lectura o una variable cuyo valor equivale al nombre lgico de un grupo de archivos de slo lectura que se va a incluir en la copia de seguridad parcial. Para obtener ms informacin, vea "", anteriormente en este tema. n Es un marcador de posicin que indica que se pueden especificar varios grupos de archivos de slo lectura en una lista separada por comas. TO [ ,...n ] Indica que el conjunto de dispositivos de copia de seguridad correspondiente es un conjunto de medios no reflejado o el primero de los reflejos de un conjunto de medios reflejado (para los que se declaran una o ms clusulas MIRROR TO). Especifica el dispositivo de copia de seguridad fsico o lgico que se va a utilizar para la operacin de copia de seguridad. { logical_device_name | @logical_device_name_var } Es el nombre lgico del dispositivo de copia de seguridad en que se hace la copia de seguridad de la base de datos. El nombre lgico debe seguir las reglas definidas para los identificadores. Si se proporciona como una variable (@logical_device_name_var), el nombre del dispositivo de copia de seguridad se puede especificar como una constante de cadena (@logical_device_name_var = nombre del dispositivo de copia de seguridad lgico) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text. { DISK | TAPE } = { 'physical_device_name' | @physical_device_name_var } Especifica un archivo de disco o un dispositivo de cinta.

  • Universidad Nacional de Ingeniera

    Pg. 46 [email protected] SQL Administracin

    No es necesario que exista un dispositivo de disco antes de que se especifique en una instruccin BACKUP. Si el dispositivo fsico existe y no se especifica la opcin INIT en la instruccin BACKUP, la copia de seguridad se anexa al dispositivo. n Es un marcador de posicin que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas. MIRROR TO [ ,...n ] Especifica un conjunto de uno o varios dispositivos de copia de seguridad que reflejarn los dispositivos de copia de seguridad especificados en la clusula TO. La clusula MIRROR TO debe incluir el mismo nmero y tipo de dispositivos de copia de seguridad que la clusula TO. El nmero mximo de clusulas MIRROR TO es tres. Esta opcin slo est disponible en SQL Server 2008 Enterprise Edition y versiones posteriores. Vea "", en un apartado anterior de esta seccin. n Es un marcador de posicin que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas. El nmero de dispositivos de la clusula MIRROR TO debe ser igual al nmero de dispositivos de la clusula TO. [ next-mirror-to ] Es un marcador de posicin que indica que una sola instruccin BACKUP puede contener hasta tres clusulas MIRROR TO, adems de una sola clusula TO. Opciones de WITH Especifica las opciones que se van a utilizar con una operacin de copia de seguridad. DIFFERENTIAL Se utiliza slo con BACKUP DATABASE. Especifica que la copia de seguridad de la base de datos o el archivo slo debe estar compuesta por las partes de la base de datos o el archivo que hayan cambiado desde la ltima copia de seguridad completa. Una copia de seguridad diferencial suele ocupar menos espacio que una copia de seguridad completa. Utilice esta opcin para que no tenga que aplicar todas las copias de seguridad de registros individuales efectuadas desde que se realiz la ltima copia de seguridad completa. DESCRIPTION = { 'text' | @text_variable } Especifica el texto de forma libre que describe el conjunto de copia de seguridad. La cadena puede tener un mximo de 255 caracteres. NAME = { backup_set_name | @backup_set_var } Especifica el nombre del conjunto de copia de seguridad. Los nombres pueden tener un mximo de 128 caracteres. Si no se especifica NAME, est en blanco. PASSWORD = { password | @password_variable } Establece la contrasea del conjunto de copia de seguridad. PASSWORD es una cadena de caracteres.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 47

    Si se define una contrasea para el conjunto de copia de seguridad, debe suministrarla para realizar operaciones de restauracin de SQL Server de ese conjunto de copia de seguridad. No obstante, la contrasea del conjunto de copia de seguridad no impide que se sobrescriba el archivo de copia de seguridad. Para evitar que se sobrescriba el archivo de copia de seguridad, utilice una contrasea para el conjunto de medios (vea la opcin MEDIAPASSWORD ms adelante en esta tabla). (Para obtener ms informacin sobre cmo utilizar las contraseas, vea "Permisos", ms adelante en este tema.)

    Utilizando el Management del SQL Server Primero nos ubicamos en el explorador de objetos, y luego hacemos clic derecho sobre la base de datos, seguidamente, haremos clic sobre la opcin de propiedades de la base de datos.

    Luego, en la opcin Recovery Model, seleccionaremos la alternativa Full, con la cual, podremos realizar todos los tipos de Backup de nuestra Base de Datos.

  • Universidad Nacional de Ingeniera

    Pg. 48 [email protected] SQL Administracin

    Una vez cambiadas las propiedades de nuestra base de datos, haremos clic derecho sobre la base de datos de la que queremos una copia de seguridad, en la opcin Tasks, seleccionamos Back Up.. (ver figura).

    Luego aparecer la siguiente pantalla, en la cual seleccionaremos el tipo de Backup a realizar.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 49

    Una vez que hayamos realizado las configuraciones del caso, procederemos a hacer clic sobre el botn OK, luego de algunos instantes, aparecer la siguiente pantalla.

    Restaurando una BD Para realizar la restauracin de una Base de Datos, podemos hacer uso de la instruccin RESTORE, o de los contrario, utilizar el management Sql Server. RESTORE (Transact-SQL) Restaura copias de seguridad realizadas con el comando BACKUP. Este comando le permite realizar los siguientes escenarios de restauracin:

    Restaurar una base de datos completa a partir de una copia de seguridad completa de la base de datos (restauracin completa).

    Restaurar parte de una base de datos (restauracin parcial).

    Restaurar archivos o grupos de archivos en una base de datos (restauracin de archivos).

    Restaurar pginas especficas en una base de datos (restauracin de pginas).

    Restaurar un registro de transacciones en una base de datos (restauracin del registro de transacciones).

    Revertir una base de datos al punto temporal capturado por una instantnea de la base de datos.

    --To Restore an Entire Database from a Full database backup (a Complete Restore): RESTORE DATABASE { database_name | @database_name_var }

    [ FROM [ ,...n ] ]

    [ WITH {

    [ RECOVERY | NORECOVERY | STANDBY = {standby_file_name | @standby_file_name_var }

    ]

    | , [ ,...n ] | ,

    | , | ,

    | , } [ ,...n ] ]

    [;]

    --To perform the first step of the initial restore sequence

    -- of a piecemeal restore:

    RESTORE DATABASE { database_name | @database_name_var } [ ,...n ]

    [ FROM [ ,...n ] ] WITH

  • Universidad Nacional de Ingeniera

    Pg. 50 [email protected] SQL Administracin

    PARTIAL, NORECOVERY

    [ , [ ,...n ] | , ] [ ,...n ]

    [;] --To Restore Specific Files or Filegroups:

    RESTORE DATABASE { database_name | @database_name_var }

    [ ,...n ] [ FROM [ ,...n ] ]

    WITH {

    [ RECOVERY | NORECOVERY ]

    [ , [ ,...n ] ] } [ ,...n ]

    [;]

    --To Restore Specific Pages: RESTORE DATABASE { database_name | @database_name_var }

    PAGE = 'file:page [ ,...n ]'

    [ , ] [ ,...n ] [ FROM [ ,...n ] ]

    WITH NORECOVERY

    [ , [ ,...n ] ]

    [;]

    --To Restore a Transaction Log:

    RESTORE LOG { database_name | @database_name_var }

    [ [ ,...n ] ] [ FROM [ ,...n ] ]

    [ WITH {

    [ RECOVERY | NORECOVERY | STANDBY =

    {standby_file_name | @standby_file_name_var } ]

    | , [ ,...n ]

    | , | , } [ ,...n ] ]

    [;]

    RESTORE DATABASE { database_name | @database_name_var }

    FROM DATABASE_SNAPSHOT = database_snapshot_name

    Permisos

    Si la base de datos que se va a restaurar no existe, el usuario debe tener permisos CREATE DATABASE para poder ejecutar RESTORE. Si la base de datos existe, los permisos RESTORE corresponden de forma predeterminada a los miembros de las funciones fijas de servidor sysadmin y dbcreator, y al propietario (dbo) de la base de datos (para la opcin FROM DATABASE_SNAPSHOT, la base de datos siempre existe). Los permisos RESTORE se conceden a funciones en las que la informacin acerca de los miembros est siempre disponible para el servidor. Debido a que los miembros de una funcin fija de base de datos slo se pueden comprobar cuando la base de datos es accesible y no est daada, lo que no siempre ocurre cuando se ejecuta RESTORE, los miembros de la funcin fija de base de datos db_owner no tienen permisos RESTORE.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 51

    La operacin de copia de seguridad puede especificar opcionalmente contraseas de un conjunto de medios, de un conjunto de copia de seguridad o de ambos. Si se ha definido una contrasea en un conjunto de medios o un conjunto de copia de seguridad, debe especificar la contrasea o contraseas correctas en la instruccin RESTORE. Estas contraseas impiden operaciones de restauracin y anexiones no autorizadas de los conjuntos de copia de seguridad en medios que utilizan herramientas de SQL Server. No obstante, los medios protegidos con contrasea se pueden sobrescribir mediante la opcin FORMAT de la instruccin BACKUP. Ejemplos sobre el uso del RESTORE A. Restaurar una base de datos completa En el siguiente ejemplo se restaura una copia de seguridad completa de la base de datos desde un dispositivo lgico de copia de seguridad de AdventureWorksBackups RESTORE DATABASE AdventureWorks

    FROM AdventureWorksBackups

    B. Restaurar copias de seguridad de bases de datos completas y diferenciales En el siguiente ejemplo se restaura una copia de seguridad completa despus de una copia de seguridad diferencial del dispositivo de copia de seguridad Z:\SQLServerBackups\AdventureWorks.bak, que contiene las dos copias de seguridad. La copia de seguridad de bases de datos completa que se va a restaurar es el sexto conjunto de copias de seguridad del dispositivo (FILE = 6), y la copia de seguridad de base de datos diferencial es el noveno conjunto del dispositivo (FILE = 9). En cuanto se recupere la copia de seguridad diferencial, se recuperar la base de datos.

    RESTORE DATABASE AdventureWorks FROM DISK = 'Z:\SQLServerBackups\AdventureWorks.bak'

    WITH FILE = 6 NORECOVERY;

    RESTORE DATABASE AdventureWorks

    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks.bak' WITH FILE = 9

    RECOVERY;

    C. Restaurar una base de datos con la sintaxis de RESTART En el ejemplo siguiente se usa la opcin RESTART para reiniciar una operacin RESTORE interrumpida por un error de alimentacin del servidor.

    -- This database RESTORE halted prematurely due to power failure.

    RESTORE DATABASE AdventureWorks

    FROM AdventureWorksBackups -- Here is the RESTORE RESTART operation.

    RESTORE DATABASE AdventureWorks

    FROM AdventureWorksBackups WITH RESTART

    D. Restaurar una base de datos y mover archivos En el ejemplo siguiente se restaura una base de datos completa y el registro de transacciones, y se mueve la base de datos restaurada al directorio C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups

    WITH NORECOVERY, MOVE 'AdventureWorks_Data' TO

  • Universidad Nacional de Ingeniera

    Pg. 52 [email protected] SQL Administracin

    'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',

    MOVE 'AdventureWorks_Log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf'

    RESTORE LOG AdventureWorks

    FROM AdventureWorksBackups WITH RECOVERY

    E. Copiar una base de datos con BACKUP y RESTORE En el ejemplo siguiente se usan las instrucciones BACKUP y RESTORE para realizar una copia de la base de datos AdventureWorks. La instruccin MOVE hace que se restauren los datos y el archivo de registro en las ubicaciones especificadas. La instruccin RESTORE FILELISTONLY se usa para determinar el nmero y los nombres de los archivos de la base de datos que se estn restaurando. La nueva copia de la base de datos se llama TestDB. Para obtener ms informacin, vea RESTORE FILELISTONLY (Transact-SQL). BACKUP DATABASE AdventureWorks

    TO AdventureWorksBackups ;

    RESTORE FILELISTONLY

    FROM AdventureWorksBackups ;

    RESTORE DATABASE TestDB FROM AdventureWorksBackups

    WITH MOVE 'AdventureWorks_Data' TO 'C:\MySQLServer\testdb.mdf',

    MOVE 'AdventureWorks_Log' TO 'C:\MySQLServer\testdb.ldf'; GO

    F. Restaurar con la sintaxis de FILE y FILEGROUP En el siguiente ejemplo se restaura una base de datos llamada MyDatabase que tiene dos archivos, un grupo de archivos secundario y un registro de transacciones. La base de datos usa el modelo de recuperacin completa. La copia de seguridad de la base de datos es el noveno conjunto de copia de seguridad del conjunto de medios en un dispositivo lgico de copia de seguridad llamado MyDatabaseBackups. A continuacin se restauran mediante WITH NORECOVERY tres copias de seguridad de registros que estn en los tres conjuntos de copia de seguridad siguientes (10, 11 y 12) en el dispositivo MyDatabaseBackups. Tras restaurar la ltima copia de seguridad de registros se restaura la base de datos. Tenga en cuenta que en RESTORE DATABASE hay dos tipos de opciones FILE. Las opciones FILE que preceden al nombre del dispositivo de copia de seguridad especifican los nombres de archivos lgicos de los archivos de base de datos que se van a restaurar desde el conjunto de copia de seguridad; por ejemplo, FILE = 'MyDatabase_data_1'. Este conjunto de copia de seguridad no es la primera copia de seguridad de la base de datos en el conjunto de medios; por ello, su posicin en el conjunto de medios se indica mediante la opcin FILE de la clusula WITH, FILE=9. RESTORE DATABASE MyDatabase

    FILE = 'MyDatabase_data_1', FILE = 'MyDatabase_data_2',

    FILEGROUP = 'new_customers' FROM MyDatabaseBackups

    WITH

    FILE = 9, NORECOVERY;

    GO

    -- Restore the log backups. RESTORE LOG MyDatabase

    FROM MyDatabaseBackups

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 53

    WITH FILE = 10,

    NORECOVERY; GO

    RESTORE LOG MyDatabase

    FROM MyDatabaseBackups WITH FILE = 11,

    NORECOVERY;

    GO RESTORE LOG MyDatabase

    FROM MyDatabaseBackups WITH FILE = 12,

    NORECOVERY;

    GO --Recover the database:

    RESTORE DATABASE MyDatabase WITH RECOVERY; GO

    Recuperando la BD desde el management

    Especificamos el origen del archivo de Backup, seleccionamos From Device

  • Universidad Nacional de Ingeniera

    Pg. 54 [email protected] SQL Administracin

    Hacemos clic sobre el botn Add para especificar la ubicacin del archivo de Backup.

    Seleccionamos el archivo.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 55

    Confirmamos la ubicacin del archivo a recuperar.

    Indicamos el nombre de la Base de Datos a recuperar.

  • Universidad Nacional de Ingeniera

    Pg. 56 [email protected] SQL Administracin

    Verificamos la ubicacin de los archivos de mdf, ndf y ldf.

    Una vez completado, aparecer el siguiente mensaje.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 57

    CCAAPPIITTUULLOO 44

    Administracin de la Seguridad

    Modos de autenticidad

    Creacin de Usuarios

    Uso de Credenciales y Permisos

  • Universidad Nacional de Ingeniera

    Pg. 58 [email protected] SQL Administracin

    A D M I N I S T R A C I N D E L A S E G U R I D A D La seguridad es una consideracin primordial cuando se disea y administra un entorno de base de datos, aqu, daremos a conocer los componentes fundamentales de seguridad de SQL Server: entidades de seguridad, protegibles y el modo en que se aplican los permisos dentro del modelo de seguridad de SQL Server.

    Qu son las entidades de seguridad? SQL Server 2008 emplea el trmino entidad de seguridad para referirse a las identidades autenticadas en un sistema de SQL Server. La comprensin de las diferentes entidades de seguridad que pueden existir en un sistema de SQL Server le ayudar a planear su modelo de seguridad.

    Una entidad de seguridad es cualquier identidad autenticada a la que se puede conceder permiso para tener acceso a un objeto del sistema de base de datos. SQL Server distingue entre entidades principales indivisibles, que son identidades nicas (como, por ejemplo, inicios de sesin), y entidades de seguridad de coleccin, que son colecciones de identidades (tales como funciones fijas de servidor). Las entidades de seguridad existen en tres niveles: Microsoft Windows, SQL Server y base de datos. Los tipos de entidad de seguridad posibles en cada uno de estos niveles

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 59

    se muestran en la tabla siguiente.

    Nivel Entidades de seguridad

    Windows Cuenta de usuario local de Windows Cuenta de usuario de dominio de Windows Grupo de Windows

    SQL Server Inicio de sesin de SQL Server Funcin de SQL Server

    Base de datos Usuario de la base de datos Funcin de la base de datos Funcin de aplicacin Grupo de bases de datos (slo para compatibilidad con versiones anteriores)

    Nota Los grupos de bases de datos se admiten principalmente por motivos de compatibilidad con versiones anteriores. Debera usar las funciones de base de datos para crear entidades de seguridad de coleccin en el nivel de base de datos.

    Qu son los protegibles? Los objetos cuyo acceso est regulado por el sistema de autorizacin de SQL Server 2008 se denominan protegibles. Como ocurre con las entidades de seguridad, es necesario comprender los diferentes mbitos de los protegibles en SQL Server para planear su modelo de seguridad.

    Los protegibles se organizan en jerarquas anidadas llamadas mbitos, que tambin se pueden proteger. Los tres mbitos protegibles son servidor, base de datos y esquema. Los protegibles en el nivel de Windows incluyen archivos y claves del Registro.

    El mbito de servidor Los protegibles que contiene el mbito de servidor incluyen: Inicios de sesin Extremos Bases de datos

  • Universidad Nacional de Ingeniera

    Pg. 60 [email protected] SQL Administracin

    El mbito de base de datos Los protegibles que contiene el mbito de base de datos incluyen: Usuarios Funciones Funciones de aplicacin Certificados Claves simtricas Claves asimtricas Ensamblados Catlogos de texto completo Eventos DDL Esquemas

    El mbito de esquema Los protegibles que contiene el esquema incluyen: Tablas Vistas Funciones Procedimientos Tipos Sinnimos Agregados

    Nota Tenga en cuenta que una entidad de seguridad tambin puede ser un protegible. Por ejemplo, un inicio de sesin es una entidad de seguridad, pero tambin se pueden otorgar permisos en ese inicio de sesin a otros inicios de sesin, lo que lo convierte en un protegible.

    Permisos de SQL Server 2008 SQL Server 2008 usa permisos para controlar el acceso a los protegibles por parte de entidades de seguridad. Para planear su modelo de seguridad para la base de datos, es importante entender cmo se implementan los permisos en los mbitos de los protegibles.

  • Facultad de Ingeniera Industrial y de Sistemas

    SQL Administracin [email protected] Pg. 61

    Los permisos son las reglas que gobiernan el nivel de acceso de las entidades de seguridad a los protegibles. Se pueden otorgar, revocar o denegar permisos en un sistema de SQL Server. Todos los protegibles de SQL Server tienen permisos asociados que pueden otorgarse a cada entidad de seguridad.

    Ejemplo de permiso La nica manera de que una entidad de seguridad pueda tener acceso a un recurso en un sistema de SQL Server es recibir permiso para ello, directa o indirectamente a travs de la suscripcin de una entidad secundaria como una funcin o un grupo. Puede administrar los permisos usando el Explorador de objetos en SQL Server Management Studio o mediante la ejecucin de instrucciones GRANT, REVOKE o DENY. Los permisos concretos asociados a cada uno de los protegibles varan segn los tipos de acciones que son compatibles con un protegible. Permisos heredados Determinados permisos en SQL Server 2008 se pueden heredar a travs de un permiso concedido en un nivel ms alto de la jerarqua de mbito del protegible. Por ejemplo: Una entidad de seguridad a la que se le ha concedido el permiso SELECT en un esquema hereda automticamente el permiso SELECT en todos los objetos del esquema. Una entidad de seguridad a la que se la ha concedido el permiso CONTROL en un objeto de base de datos hereda automticamente el permiso CONTROL en todos los protegibles que contiene esa base de datos y todos los protegibles que contienen los esquemas incluidos en esa base de datos. Permisos efectivos Los permisos efectivos para una entidad de seguridad se evalan de la misma manera que en versiones anteriores de SQL Server. Una entidad de seguridad puede realizar una accin determinada si: El permiso se ha concedido explcitamente a la entidad de seguridad o a una coleccin de la que es miembro la entidad de seguridad, y El permiso no se ha denegado explcitamente a la entidad de seguridad o a una coleccin de la que es miembro la entidad de seguridad. Nota Una instruccin DENY explcita siempre reemplaza a una instruccin GRANT. Por ejemplo, si a un usuario se le ha concedido explcitamente el permiso SELECT en una tabla determinada pero es miembro de una funcin a la que se le ha denegado explcitamente el permiso SELECT en la tabla, el usuario no podr ejecutar una instruccin SELECT en la tabla.

    Qu son los modos de autenticacin de SQL Server?

    SQL Server 2008 puede configurarse para usar uno de los dos modos de autenticacin siguientes:

  • Universidad Nacional de Ingeniera

    Pg. 62 [email protected] SQL Administracin

    Modo de autenticacin de Windows. Los us