administración de bases de datos con sql server 2008 (ejemplo)

Upload: ignacio-rafael-jose-rodriguez

Post on 19-Oct-2015

25 views

Category:

Documents


2 download

TRANSCRIPT

  • Administracin de bases de datos conSQL Server 2008

    Pedro Lpez-Belmonte / Aroa Solana

    Ejemp

    lo de le

    ctura

  • Sipnosis

    SQL Server 2008 constituye un cambio a todos los niveles sobre el motor de Bases de datos deMicrosoft. Con SQL Server 2008 la administracin de bases de datos se hace una tarea mucho mssencilla, debido al gran nmero de asistentes y herramientas integradas que se proporcionan desde unanica interfaz grfica para todo su entorno.

    En este libro se abordan todos los aspectos de la administracin de un sistema de bases de datos conSQL Server 2008. Adems de las tareas y herramientas habituales, que han sido mejoradas en estaversin, podremos comprobar que las nuevas caractersticas de SQL Server 2008 en cuanto aconectividad, escalabilidad, seguridad o Business Intelligence, lo hacen un sistema mucho ms robustoy potente, preparado para dar soporte a las aplicaciones ms crticas y exigentes. Adems de laintroduccin de un nuevo trmino Directivas que nos ayudarn a una correcta y eficienteadministracin.

    Pedro Lpez-Belmonte es Licenciado en Ciencias Fsicas por la UniversidadComplutense de Madrid, con ms de 8 aos de experiencia en el mundo deldesarrollo, consultora y formacin. Es especialista en herramientas dedesarrollo .NET y bases de datos. Ha participado en numerosos proyectos dedesarrollo en entornos corporativos de mediano y gran tamao con .NET,SQL Server y SharePoint.Cuenta con varias certificaciones, entre las que se encuentran MCAD, MCTSSQL Sever & SharePoint. Tambin cuenta con la certificacin MCT, y desdeel comienzo de su carrera profesional ha impartido formacin, una de suspasiones.

    Aroa Solana Ruiz es Microsoft Certified IT Professional en DatabaseDeveloper, tambin Microsoft Certified Technology Specialist en SQLServer 2005, .NET Framework 3.5, Windows Forms Applications, SQLServer 2005, al igual que Database Development en SQL Server 2008.

    Actualmente ostenta la certificacin MCT (Microsoft Certified Trainer) quela permite impartir un gran nmero de cursos oficiales de Microsoft ytrabajar como formadora en Alhambra-Eidos.

    Ha impartido formacin sobre la tecnologa .NET, desarrollo de aplicacionesWindows, Web, ADO, Distribuidas, WPF, WCF, WWF, Silverlight y UML,

    por otra parte imparte formacin en administracin de bases de datos SQL Server y desarrollo debases de datos SQL Server, tanto en 2005 como en 2008. Adems posee experiencia en J2SE y J2EE.Dentro de la gestin de procesos posee la certificacin ITIL V2 Foundations.Eje

    mplo d

    e lectu

    ra

  • LuarnaAdministracin de bases de datos con sql server 2008 Pedro Lpez-Belmonte Alhambra Eidos Aroa Solana Alhambra Eidos De esta edicin: 2009, Luarna Ediciones, S.L.

    www.luarna.com

    Madrid, octubre 2009

    ISBN: 978-84-92684-58-8

    Versin 1.0 (31-10-2009)

    Cualquier forma de reproduccin, distribucin, comunicacin pblica o transformacin de esta obra solo puede ser realizadacon la autorizacin de sus titulares, salvo excepcin prevista por la ley. Dirjase a CEDRO (Centro Espaol de DerechosReprogrficos, www.cedro.org) si necesita fotocopiar, escanear o hacer copias digitales de algn fragmento de esta obra.Eje

    mplo d

    e lectu

    ra

  • Dedicatoria de Aroa Solana

    Este libro, se lo dedico a mi familia en particular a mis padres, que no se cmo me aguantan con todo lleno de libros y de hojas tiradas por el suelo o por cualquier sitio, gracias por estar ah!.

    Tambin agradecrselo a la persona que ms me comprende y me apoya, gracias Javi!.

    Ejemp

    lo de le

    ctura

  • ADMINISTRACIN DE BASES DE DATOSCON SQL SERVER 2008

    Pedro Lpez BelmonteAroa Solana

    Ejemp

    lo de le

    ctura

  • Ejemp

    lo de le

    ctura

  • P g i n a | 7

    IndiceIntroduccin .................................................................................................................................... 14

    Introduccin .................................................................................................................................. 14Introduccin a SQL Server 2008 ................................................................................................... 15Nuevas Caractersticas .................................................................................................................. 16

    Funciones Bsicas ..................................................................................................................... 16Funciones de Business Intelligence............................................................................................ 17Funciones adicionales a SQL Server 2008 ................................................................................. 17

    Herramientas de SQL Server 2008 ................................................................................................ 18Libros en pantalla ...................................................................................................................... 18SQL Server Configuration Manager .......................................................................................... 18El SQL Server Management Studio ........................................................................................... 18

    Instalacin de SQL Server 2008 ..................................................................................................... 19Requisitos de Hardware ................................................................................................................ 19Requisitos de Software .................................................................................................................. 20

    Compatibilidad con sistemas extendidos .................................................................................... 22Proceso de instalacin ................................................................................................................... 22

    Prerrequisitos ............................................................................................................................ 25Instalacin de SQL Server ......................................................................................................... 26

    Componentes de SQL Server ................................................................................................. 28Seguridad .............................................................................................................................. 29Reglas de intercalacin (Collation) ........................................................................................ 32Servidor de Informes ............................................................................................................. 35Informe de errores ................................................................................................................. 36Progreso de la instalacin ...................................................................................................... 37

    Actualizacin desde versiones anteriores ................................................................................... 40

    Configuracin de SQL Server 2008 ................................................................................................ 42SQL Server Management Studio ................................................................................................... 43

    Conectar al servidor .................................................................................................................. 43Nombre del Servidor ................................................................................................................. 44Los paneles de Management Studio ........................................................................................... 45Servidores Registrados .............................................................................................................. 46

    Explorador de Objetos................................................................................................................... 51Explorador de soluciones .............................................................................................................. 53Mejoras en la interfaz de Usuario .................................................................................................. 54Explorador de plantillas ................................................................................................................ 55

    El panel de consultas ................................................................................................................. 55El panel de Resultados .............................................................................................................. 56

    El Monitor de Actividad ................................................................................................................ 56SQL Server Configuration Manager .............................................................................................. 57

    Los Protocolos .......................................................................................................................... 59Canalizaciones con Nombre .................................................................................................. 59TCP/IP .................................................................................................................................. 60Memoria Compartida............................................................................................................. 60

    El Cliente Nativo de SQL .............................................................................................................. 60Los Servicios de SQL Server 2008 ................................................................................................ 61

    Parmetros de inicio del servicio de SQL Server ........................................................................ 63Cuentas de ejecucin ................................................................................................................. 65

    Configuracin de la Seguridad en SQL Server 2008 ..................................................................... 67Herramienta de Configuracin de Superficie ................................................................................. 68

    Configuracin de servicios y conexiones ................................................................................... 68Ejemp

    lo de le

    ctura

  • P g i n a | 8

    Conexiones Remotas ............................................................................................................. 69Configuracin de Caractersticas ............................................................................................... 69

    Consultas ad hoc remotas ...................................................................................................... 69Integracin CLR .................................................................................................................... 69Conexin Dedicada del Administrador (DAC) ....................................................................... 70Correo Electrnico de Base de Datos ..................................................................................... 70SQL Mail .............................................................................................................................. 70Servicios Web XML Nativos ................................................................................................. 71Automatizacin OLE ............................................................................................................. 71Ayudante de Web .................................................................................................................. 71Xp_cmdshell ......................................................................................................................... 71

    Configuracin de las Entidades de Seguridad ................................................................................ 72Entidades de Seguridad de Windows ......................................................................................... 72Entidades de Seguridad de SQL Server ...................................................................................... 73Entidades de seguridad de Base de Datos................................................................................... 77Propiedad de los objetos ............................................................................................................ 80Suplantacin (Impersonation) .................................................................................................... 81Asegurables .............................................................................................................................. 82

    Nivel de Servidor .................................................................................................................. 82Nivel de Base de Datos .......................................................................................................... 83Nivel de esquema .................................................................................................................. 84

    Encriptacin .................................................................................................................................. 85Jerarqua de encriptacin en SQL Server 2008 ........................................................................... 85Encriptacin por Contrasea ...................................................................................................... 86Encriptacin por clave simtrica ................................................................................................ 87Encriptacin por clave asimtrica .............................................................................................. 88Encriptacin por certificados ..................................................................................................... 89

    Configuracin de Servidores Vinculados ....................................................................................... 92Creacin de servidores vinculados ................................................................................................. 93

    Vincular dos servidores SQL Server 2008 ................................................................................. 93Vincular un servidor SQL Server 2008 con otro origen de datos ................................................ 96

    Delegacin y Suplantacin ............................................................................................................ 97Tareas adicionales ....................................................................................................................... 101

    Configuracin de proveedores OLE DB .................................................................................. 101

    Analizador de SQL Server............................................................................................................ 106Trazas de servidor ....................................................................................................................... 107

    Plantillas ................................................................................................................................. 111Registros de trazas .................................................................................................................. 113Programar trazas ..................................................................................................................... 114Reproduccin de trazas ........................................................................................................... 114

    Correlacionar contadores del Monitor de Sistema de Windows .................................................... 118

    Asistente para la optimizacin del motor de bases de datos ........................................................ 120Caractersticas del Asistente ........................................................................................................ 121Optimizar una base de datos ........................................................................................................ 122Generar y utilizar un archivo de carga de trabajo ......................................................................... 125Anlisis de exploracin ............................................................................................................... 127Generacin de las estructuras recomendadas ............................................................................... 128

    Resolucin de bloqueos e interbloqueos ....................................................................................... 130Determinar la causa de un interbloqueo ....................................................................................... 132Herramientas de anlisis de interbloqueos ................................................................................... 133Minimizar la aparicin de interbloqueos ...................................................................................... 138

    Utilizar objetos en el mismo orden .......................................................................................... 138Ejemp

    lo de le

    ctura

  • P g i n a | 9

    Acortar la duracin de las transacciones .................................................................................. 139Nivel de aislamiento de las transacciones ................................................................................ 139

    Diagnosticar y resolver errores de servidor ................................................................................. 140Registro de SQL Server............................................................................................................... 141Conexin a un servidor que no responde utilizando DAC ............................................................ 143

    Creacin de reflejo de base de datos ............................................................................................ 145Alta disponibilidad ...................................................................................................................... 145DB Mirroring en SQL Server 2008.............................................................................................. 146Preparacin de las bases de datos ................................................................................................ 147

    Modo de recuperacin del registro ........................................................................................... 147Conectividad ........................................................................................................................... 148

    Autenticacin basada en Windows ....................................................................................... 148Autenticacin basada en certificados ................................................................................... 149

    Reflejar Base de datos ................................................................................................................. 151Asociacin Principal Espejo ................................................................................................. 151Configuracin adicional de DBMirroring ................................................................................ 152

    Niveles de seguridad transaccional ...................................................................................... 152Estado de la base de datos.................................................................................................... 152Conmutacin por error......................................................................................................... 153Iniciar una conmutacin por error ........................................................................................ 153Suspender y reiniciar la sesin de reflejo ............................................................................. 154Finalizar la sesin de reflejo ................................................................................................ 155Creacin de la sesin de reflejo en Management Studio ....................................................... 155

    Modos de operacin .................................................................................................................... 158Sesin de reflejo y aplicaciones cliente .................................................................................... 158Monitorizacin de la sesin de espejo ...................................................................................... 159Consideraciones de rendimiento .............................................................................................. 159Instantneas de bases de datos ................................................................................................. 160

    Gestin del Registro de Transacciones ......................................................................................... 161Trasvase de registros ................................................................................................................... 161

    Operaciones del trasvase de registros ....................................................................................... 162Trabajo de copia de seguridad.............................................................................................. 162Trabajo de copia .................................................................................................................. 163Trabajo de restauracin ....................................................................................................... 163Trabajo de alerta .................................................................................................................. 163

    Opciones de configuracin .......................................................................................................... 163TSQL ...................................................................................................................................... 168

    Tareas adicionales ....................................................................................................................... 170Monitorizar el trasvase de registros ......................................................................................... 170Consultas de seleccin sobre el servidor secundario ................................................................. 171Conmutacin por error manual ................................................................................................ 171

    Instantneas de base de datos ....................................................................................................... 172Creacin de una instantnea ........................................................................................................ 173Operaciones de mantenimiento .................................................................................................... 174

    Clculo del tamao de los archivos .......................................................................................... 174Revertir el estado de una base de datos .................................................................................... 175

    Restricciones de una instantnea ................................................................................................. 175Limitaciones de la instantnea ................................................................................................. 176Restricciones sobre la base de datos origen .............................................................................. 176

    Servicios Web XML Nativos ......................................................................................................... 178Creacin de Extremos HTTP ....................................................................................................... 179Ejemp

    lo de le

    ctura

  • P g i n a | 10

    Seguridad de Extremos HTTP ..................................................................................................... 182Limitaciones de los extremos ...................................................................................................... 184

    Service Broker .............................................................................................................................. 185Arquitectura del Service Broker .................................................................................................. 185

    Servicios ................................................................................................................................. 186Colas ....................................................................................................................................... 186Mensajes ................................................................................................................................. 187Dilogos.................................................................................................................................. 187Grupos de Conversacin.......................................................................................................... 188Contratos ................................................................................................................................ 188El extremo Service Broker ...................................................................................................... 188Enlace a Servicios Remotos..................................................................................................... 188Rutas ....................................................................................................................................... 188

    Aplicaciones de Service Broker ................................................................................................... 189Habilitar el Service Broker ...................................................................................................... 190Crear tipos de mensajes ........................................................................................................... 190Creacin de Contratos ............................................................................................................. 191Creacin de colas .................................................................................................................... 192Creacin de Servicios .............................................................................................................. 192

    Envo y recepcin de mensajes .................................................................................................... 193Recepcin de mensajes ............................................................................................................ 194Envo de mensajes ................................................................................................................... 197

    Seguridad y Enrutamiento de Service Broker............................................................................... 199

    Carga masiva de datos .................................................................................................................. 204Pasos previos de la recuperacin ................................................................................................. 205

    Modelo de recuperacin de la base de datos ............................................................................. 205Operaciones adicionales .......................................................................................................... 205

    Uso de la utilidad BCP ................................................................................................................ 206Instruccin BULK INSERT ........................................................................................................ 208Importar datos con OPENROWSET ............................................................................................ 208Uso de los Servicios de Integracin ............................................................................................. 209

    Rplica de Bases de Datos ............................................................................................................. 215Conceptos Generales ................................................................................................................... 215

    Publicador ............................................................................................................................... 216Suscriptor ................................................................................................................................ 216Distribuidor ............................................................................................................................. 216

    Tipos de duplicacin ................................................................................................................... 216Publicacin Instantnea ........................................................................................................... 217Publicacin transaccional ........................................................................................................ 217Publicacin transaccional con suscripciones actualizables........................................................ 217Publicacin de mezcla ............................................................................................................. 217

    Objetos de duplicacin ................................................................................................................ 218Tipos de suscripcin.................................................................................................................... 218

    Suscripciones de insercin....................................................................................................... 218Suscripciones de extraccin ..................................................................................................... 218

    Agentes de duplicacin ............................................................................................................... 219Agente de instantneas ............................................................................................................ 219Agente de lector del registro .................................................................................................... 220Agente de distribucin............................................................................................................. 220Agente de mezcla .................................................................................................................... 220Agente de lectura de cola ........................................................................................................ 220

    Configuracin de la rplica ......................................................................................................... 220Configuracin de la Distribucin ............................................................................................. 221Ejemp

    lo de le

    ctura

  • P g i n a | 11

    Configuracin de la publicacin .............................................................................................. 225Configuracin de la duplicacin de instantneas ...................................................................... 231

    Configuracin de la suscripcin ........................................................................................... 231Configuracin de la duplicacin transaccional ......................................................................... 235

    Configuracin de la suscripcin ........................................................................................... 235Configuracin de la duplicacin transaccional con suscripciones actualizables ........................ 235

    Configuracin de la suscripcin ........................................................................................... 235Configuracin de la duplicacin de mezcla .............................................................................. 236

    Configuracin de la suscripcin ........................................................................................... 236Administracin de la rplica ........................................................................................................ 236

    Administracin de los Agentes de rplica ................................................................................ 236Monitor de Rplica .................................................................................................................. 237

    Agente de SQL Server .................................................................................................................. 240Trabajos ...................................................................................................................................... 241

    Pasos de Trabajo ..................................................................................................................... 243Programaciones ....................................................................................................................... 244Completar la configuracin del Trabajo ................................................................................... 245Monitor de Actividad .............................................................................................................. 246

    Seguridad .................................................................................................................................... 248Alertas y Operadores ................................................................................................................... 250

    Alertas .................................................................................................................................... 250Operadores .............................................................................................................................. 251

    Copias de seguridad de Bases de Datos ........................................................................................ 253El registro de transacciones ......................................................................................................... 255

    Operaciones no registradas ...................................................................................................... 255Puntos de comprobacin.......................................................................................................... 256

    Tipos de copias de seguridad ....................................................................................................... 256Copia de seguridad completa ................................................................................................... 256Copia de seguridad diferencial................................................................................................. 256Copias de seguridad del registro de transacciones .................................................................... 257Copia de seguridad de grupos de archivos ............................................................................... 257Copias de seguridad de archivos .............................................................................................. 257

    Realizar copias de seguridad ....................................................................................................... 257Formatear el conjunto de medios ............................................................................................. 261Realizar copias de grupos de archivos ..................................................................................... 261Realizar copias de seguridad espejo ......................................................................................... 262

    Restauracin de bases de datos .................................................................................................... 262Plan de recuperacin de base de datos ..................................................................................... 265

    Mover una base de datos entre servidores .................................................................................... 265

    Administracin de Directivas ....................................................................................................... 268Trminos clave ........................................................................................................................... 268Uso de Declarative Management Framework (DMF) ................................................................... 273

    Modos de Evaluacin .............................................................................................................. 277Modos de evaluacin permitidos .......................................................................................... 277

    Ejemplos ..................................................................................................................................... 277

    MonitorizarEventos ...................................................................................................................... 281Traza Predeterminada.................................................................................................................. 282Traza SQL .................................................................................................................................. 283

    Arquitectura de trazas SQL ..................................................................................................... 283SQL Server Profiler .................................................................................................................... 284

    Showplan XML....................................................................................................................... 284Notificaciones de Eventos ........................................................................................................... 286Ejemp

    lo de le

    ctura

  • P g i n a | 12

    Eventos Extendidos ..................................................................................................................... 287Componentes de los Eventos Extendidos ..................................................................................... 288

    Paquetes .................................................................................................................................. 288Eventos ................................................................................................................................... 289Elementos asociados a los eventos ........................................................................................... 290Acciones ................................................................................................................................. 290Predicados............................................................................................................................... 290Sesiones de eventos ................................................................................................................. 290

    Ejemplo: Deteccin de Bloqueos ................................................................................................. 290

    Rendimiento .................................................................................................................................. 293Manejar y Monitorizar Recursos ................................................................................................. 293

    Recopilacin de datos.............................................................................................................. 294Configurar el Data Warehouse gestionado ........................................................................... 294

    System Data Collection Sets .................................................................................................... 296Conjunto de Recopilacin Uso de disco ............................................................................... 296

    Uso de Disco Archivos de Datos ................................................................................... 297Uso de Disco Archivos de Datos ................................................................................... 298

    Conjunto de Recopilacin Actividad del servidor................................................................. 298Actividad del servidor Instantneas de DMW ................................................................ 299Actividad del servidor Contadores de rendimiento ........................................................ 299

    Conjunto de Recopilacin Estadsticas de consultas ............................................................. 302Tipos de recopiladores............................................................................................................. 303

    Tipo de recopilador de consultas T-SQL genrico ................................................................ 303Tipo de recopilador genrico de seguimiento de SQL .......................................................... 303Tipo de recopilador de contadores de rendimiento ............................................................... 303Tipo de recopilador Actividad de consulta ........................................................................... 304

    Crear una recopilacin de datos ................................................................................................... 304Aadir tems de recopilacin ............................................................................................... 305Recopilar Datos ................................................................................................................... 306

    Optimizacin del Almacenamiento............................................................................................... 307Compresin de Copias de Seguridad ........................................................................................... 307Compresin de Datos .................................................................................................................. 309

    Pros y Contras de la compresin de datos ................................................................................ 309Compresin a nivel de Fila ...................................................................................................... 310Compresin a nivel de Pgina ................................................................................................. 312

    Estimar el ahorro conseguido mediante la compresin ......................................................... 313

    FILESTREAM .............................................................................................................................. 315Uso de FileStream ....................................................................................................................... 315

    Almacenamiento de FileStream ............................................................................................... 316Seguridad Integrada ............................................................................................................. 316Administracin Integrada .................................................................................................... 316

    Habilitar FILESTREAM ............................................................................................................. 317Administrar datos FILESTREAM usando Transact-SQL ............................................................. 318

    Actualizar datos FILESTREAM .............................................................................................. 319Eliminar datos FILESTREAM ................................................................................................ 319

    Administrar daos FILESTREAM usando Win32 ......................................................................... 319Leer la ruta de acceso al archivo .............................................................................................. 319Leer el contexto de la transaccin ............................................................................................ 320Obtener un identificador de archivos de Win32 ....................................................................... 320

    La API OpenSqlFilestream .................................................................................................. 320Parmetros....................................................................................................................... 321

    FilestreamPath ............................................................................................................. 321DesiredAccess ............................................................................................................. 321Ejemp

    lo de le

    ctura

  • P g i n a | 13

    OpenOptions................................................................................................................ 321FilestreamTransactionContext ...................................................................................... 322FilestreamTransactionContextLength ........................................................................... 322AllocationSize ............................................................................................................. 322

    Conflictos entre Win32 y Transact-SQL ...................................................................................... 322Ejemplos ................................................................................................................................. 323

    Abrir un BLOB de FILESTREAM para acceso de escritura ................................................. 323Abrir un BLOB de FILESTREAM para acceso de lectura .................................................... 323Abrir y cerrar varios archivos BLOB de FILESTREAM ...................................................... 324No se puede cerrar un cursor................................................................................................ 324

    Caso Prctico ................................................................................................................................ 326Despliegue de SQL Server 2008 .................................................................................................. 327Monitorizacin del Rendimiento ................................................................................................. 327Alta disponibilidad ...................................................................................................................... 328Consumir Datos .......................................................................................................................... 328

    Resolucin Caso Prctico .............................................................................................................. 330Despliegue .............................................................................................................................. 330Monitorizacin del Rendimiento ............................................................................................. 331Alta Disponibilidad ................................................................................................................. 331Consumir Datos ...................................................................................................................... 331

    Ejemp

    lo de le

    ctura

  • P g i n a | 14

    Introduccin

    IntroduccinSQL Server 2008 es la ltima versin del Sistema Gestor de Bases de Datos de Microsoft para elmercado empresarial.

    Esta ltima versin cuenta con varias ediciones, incluyendo una versin gratuita (SQL ServerExpress), todas ellas con ediciones de 32 y 64 bit.

    SQL Server surgi de la colaboracin entre Microsoft y Sybase, adems de IBM y Ashton-Tate. Laprimera versin fue desarrollada para OS/2 en 1988, y no era ms que una pequea base de datos. Dehecho, el sistema operativo OS/2 fue desarrollado conjuntamente por IBM y Microsoft para darsoporte a Sybase SQL Server

    La primera edicin de SQL Server para Windows fue la 4.2 desarrollada en 1993, (compatible conWindows NT). SQL Server 4.2 era una base de datos para pequeos entornos (desktop database), confuncionalidad limitada y no demasiado potente. En 1994, Microsoft y Sybase deciden no continuar suunin con SQL Server. Esto origin una nueva versin de SQL Server por parte de Microsoft en 1995.

    La primera versin independiente de SQL Server fue la 6.05. En esta versin se introdujeron una seriede mejoras en cuanto a rendimiento y funcionalidad que permitan considerar a este sistema adecuadopara gestionar bases de datos de pequeos negocios o aplicaciones de Internet. La siguiente versin, la6.5, fue lanzada en 1996.Eje

    mplo d

    e lectu

    ra

  • P g i n a | 15

    En 1998, Microsoft lanz SQL Server 7.0, que supuso un cambio en cuanto a su situacin en elmercado de los RDBMS. El gran nmero de mejoras en cuanto a rendimiento, potencia y facilidad deuso, as como la gran cantidad de caractersticas y aplicaciones auxiliares, incluidas en el producto sincoste adicional, situaron a SQL Server como alternativa a otros sistemas tales como Oracle o DB2 enel entorno de negocios de tamao medio.

    Con SQL Server 2000, Microsoft termin de consolidar su posicin en el mercado de los SistemasGestores de Bases de Datos. Esta versin ya est dirigida al entorno empresarial, debido a surendimiento, escalabilidad y robustez. Lo bueno es que Microsoft consigui alcanzar estos objetivossin sacrificar la facilidad de uso y el gran nmero de herramientas de desarrollo, gestin y anlisisincluidas en SQL Server. De hecho, en el ao 2001 Oracle cedi su posicin de dominio, pasando eltestigo a SQL Server (34% del mercado, contra el 40%). Esta situacin sigui su curso en 2002,cuando SQL Server aument su cuota al 45% del mercado, mientras que la de Oracle bajaba al 27%.

    Con SQL Server 2005 fueron capaces de competir con grandes sistemas como Oracle o DB2. Muchasorganizaciones de gran tamao adoptaron en su da SQL Server 2000 y lo hacen hoy todava con SQLServer 2005, como Xerox, Nasdaq, Groupama, ING, y un largo etc. Para comprender este movimientoen torno al RDBMS (Relational DataBase Management System) de Microsoft, hay que unir que lascifras de las pruebas rendimiento (benchmarks) a las que se someten a SQL Server se acercan a lascifras de Oracle, junto con la facilidad de uso y coste del sistema de Microsoft, en contraposicin conla complejidad y elevado precio del sistema de Oracle.

    Con el lanzamiento de la versin ms reciente de SQL Server, Microsoft ofrece una plataforma parainformacin empresarial confiable, productiva e inteligente. Con nuevas mejoras y capacidadesingenieriles, SQL Server 2008 permitir que sus aplicaciones funcionen mejor y se reduzca la cantidadde tiempo necesario para manejarlas. Si estuvo utilizando aplicaciones existentes en SQL Server 2000 2005, encontrar un completo set de nuevas capacidades para mejorarlas y reducir el soportenecesario gracias a que cuenta con una interfaz familiar. Muchos de estos nuevos atributos puedenproveer beneficios inmediatos sin necesidad de hacer cambios en la aplicacin.

    Introduccin a SQL Server 2008SQL Server 2008 incluye una gran cantidad de nuevas caractersticas que permiten una gestin msracional y eficaz del mismo, aumentan el rendimiento, la escalabilidad y la estabilidad del servidor y,permiten una configuracin avanzada a nivel de servicios, seguridad del servidor, etc.

    Entre las nuevas caractersticas, quizs la ms llamativa sea el soporte para compatibilidad con .NET.Esto permite la programacin de ensamblados en C# o Visual Basic 2008 y su ejecucin en SQLServer, lo que abre un gran abanico de posibilidades complementando la funcionalidad queproporciona T-SQL.

    Adems, nos encontramos con soporte completo para XML, incluyendo un nuevo tipo de dato XML,que permite el almacenamiento de documentos de este tipo en formato nativo, y posibilita el uso defunciones de bsqueda y manipulacin en cdigo XML, como XQuery o XPath directamente en elpropio campo de la tabla. Tambin permite la validacin de la estructura del propio documento contraesquemas XSD.

    Las herramientas de configuracin y mantenimiento tambin han sufrido una renovacin completa. ElAdministrador Corporativo, o el Analizador de Consultas de SQL Server 2000 dejan paso al SQLServer Management Studio (SSMS) ya integrado en la versin anterior SQL Server 2005, que agrupay amplia la funcionalidad de ambos. Esta nueva herramienta permite gestin multiservidor tanto deservidores OLTP como de servidores OLAP o gestin de funciones adicionales. Una nuevacaracterstica muy interesante es la posibilidad de crear una solucin, lo que permite una gestin msEje

    mplo d

    e lectu

    ra

  • P g i n a | 16

    eficaz de proyectos de desarrollo, as como la integracin con Visual Source Safe, que posibilita eltrabajo en grupo y el control de cdigo fuente.

    SQL Server tambin incorpora la herramienta denominada Business Intelligence DevelopmentStudio, que no es ms que una versin reducida de Visual Studio 2008. Esta herramienta sirve paradesarrollar proyectos de integracin con .NET, o tambin otros como proyectos de Analysis Services,Integration Services o Reporting Services.

    SQL Server amplia y mejora los Reporting Services (SSRS), que aunque inicialmente fueronconcebidos para aparecer con esta ltima versin del servidor, Microsoft decidi publicar una versinreducida para SQL Server 2000. Tambin incluye un mejorado y ampliado entorno para los Serviciosde Integracin (SQL Server Integration Services, SSIS), anteriormente conocidos como DataTransformation Services.

    Otra de las nuevas caractersticas la constituye el Service Broker, que es un entorno de trabajodiseado para la distribucin asncrona de mensajera.

    Todas estas caractersticas se agrupan dentro de SQL Server 2008 clasificadas segn sus distintasediciones, que describo a continuacin:

    Express: Esta edicin es la evolucin del antiguo MSDE. Sigue siendo gratuita y, aunquelimitada, incorpora un pequeo entorno grfico de administracin y permite un mximo de 50conexiones concurrentes (suficiente para cualquier entorno pequeo).

    Workgroup: Est diseada para entornos y departamentos pequeos y medianos. Poseemuchas de las caractersticas de SQL Server, pero no contiene las de alto nivel.

    Standard: Esta versin est destinada al entorno medio. Contiene prcticamente todas lascaractersticas, como los Servicios de Anlisis, o los Servicios de Integracin, pero eliminalas opciones de alta disponibilidad, como particionado o indexacin online.

    Developer: Esta versin contiene todas las opciones, pero al ser una versin destinada aentornos de prueba y laboratorio, contiene limitaciones en cuanto a CPUs soportadas y alicencias.

    Enterprise: Esta es la versin completa, la ms potente, escalable y robusta y, por supuesto, lams cara. Est destinada al entorno empresarial de tamao medio-grande, donde elrendimiento, la alta disponibilidad y la escalabilidad son cruciales.

    Nuevas CaractersticasLas nuevas caractersticas soportadas por SQL Server 2008 se pueden dividir en dos grandes grupos:Funciones Bsicas y Business Intelligence. Cada versin soporta algunas caractersticas, exceptuandolas versiones Enterprise y Developer, que como hemos visto antes, las soportan todas. Veamos unresumen de algunas de ellas:

    Funciones Bsicas Todas las versiones soportan integracin con .NET (CLR), autenticacin y autorizacin

    avanzada, optimizacin automtica de Bases de Datos, importacin y exportacin de datos, elnuevo tipo de dato XML, consultas recursivas, gestin de errores con estructurasTRYCATCH, la herramienta Express Manager (indicada para la versin Express y esgratuita), conexin dedicada para el administrador, adicin de memoria en caliente,Ejemp

    lo de le

    ctura

  • P g i n a | 17

    encriptacin de datos, la herramienta Management Studio, vistas de sistema, herramientas deReporting Services, integracin con Microsoft Baseline Security Analyzer (MBSA),replicacin (transaccional y de mezcla), Service Broker, procedimientos almacenados, vistas ydesencadenadores, tipos definidos por el usuario, indexacin XML nativa, bsquedas de textocompleto en datos XML y manipulacin con XQUERY y el Best Practices Analyzer (se puededescargar en: http://www.microsoft.com/downloads/details.aspx?familyid=b352eb1f-d3ca-44ee-893e-9e07339c1f22&displaylang=en)

    La versin Express no soporta bsqueda de texto completo en campos definidos para ello, ascomo la programacin de trabajos, o el traslado de los logs de transacciones a otra base dedatos (Log Shipping).

    La versin Workgroup no soporta la funcionalidad de espejo (DB Mirroring), el DatabaseTuning Advisor (sustituye al Index Tunning Wizard), el failover clustering, los Servicios deIntegracin, los Servicios de Notificacin, y los web services, o soporte para http.

    La versin Standard no soporta particionado de tablas, replicacin Oracle, indexacin onlinede tablas y vistas, restauracin de bases de datos online, operaciones de indexacin enparalelo, ndices en vistas, integracin de flujo de datos, disponibilidad de la base de datos enoperaciones de undo durante la restauracin, transformaciones avanzadas como minera dedatos o minera de texto, o optimizacin avanzada del rendimiento de modelos de minera.

    Funciones de Business Intelligence Todas las versiones proporcionan soporte nativo para web services, Reporting Services

    (incluyendo mltiples orgenes de datos), funciones analticas y optimizacin de consultas tipoestrella, y el Business Intelligence Development Studio.

    La versin Express no soporta integracin con el Management Studio, el profiler y otrasherramientas, y tampoco soporta el generador de informes para el usuario final.

    La versin Workgroup no soporta el modelado de datos segn el Modelo DimensionalUnificado (UDM), el Data warehousing, y el Data mining.

    La versin Standard no soporta cacheo automtico de datos, suscripciones ligadas a datos,writebacks en dimensiones y celdas, cubos particionados, proceso de cubos en paralelo,sincronizacin de servidores y escalado externo de servidores de informes.

    Funciones adicionales a SQL Server 2008 Mejor seguridad y revisin de cuentas: obtenga codificacin de la informacin y

    capacidades de revisin de cuentas de bases de datos sin las aplicaciones existentes.

    Aumenta las capacidades de administracin del sistema: Los atributos de administracindel servidor a travs de polticas y nuevas herramientas como la coleccin de datos deperformance de los servidores ayudan de manera efectiva al crecimiento de su formacin.

    Incrementa el desempeo: se han hecho muchas mejoras de desempeo a travs de latecnologa, incluyendo incrementos dentro de los servicios de anlisis, de reporte y deintegracin.Ejemp

    lo de le

    ctura

  • P g i n a | 18

    Respuesta de sistema predictiva: Nuevos atributos como la gestin de consultas y lacompresin de informacin, junto con mejoras generales de la escalabilidad, proveensoluciones escalables ms fidedignas para grandes sistemas empresariales

    Desarrollador de productividad: herramientas como Entity Framework y LINQ y nuevasaplicaciones de da/fecha, Filestream y de datos relativos al espacio, provee un desarrollo mspoderoso y ms simple.

    Perfeccione las capacidades de inteligencia de negocios: capacidades de reporte adicionalesintegradas con las aplicaciones de Microsoft Office y una nueva aplicacin de diseo dereporte permite la creacin de reportes empresariales para permitir a las aplicacionesactualizarse de manera fluida.

    Herramientas de SQL Server 2008La nueva versin de SQL Server trae consigo un buen puado de nuevas herramientas, algunasnuevas, y otras simplemente una evolucin de las anteriores. Vamos a repasar las ms importantes,para conocer su funcionalidad.

    Libros en pantallaLos libros en pantalla de SQL Server han sufrido una buena revisin, y ahora utilizan la nueva interfazde ayuda de .NET 2008, que proporciona nuevos modelos de organizacin de datos, bsquedas porpreferencias, online, en local, y muchas otras opciones.

    SQL Server Configuration ManagerEsta herramienta agrupa la funcionalidad de varias en la anterior versin de SQL Server. Bsicamente,su mbito de aplicacin se centra en la gestin avanzada de los servicios de soporte de SQL Server,para los cuales presenta un amplio abanico de opciones, y en la configuracin de red del servidor.

    El SQL Server Management StudioEl SQL Server Management Studio es la nueva herramienta de administracin de SQL Server, yrepresenta una gran evolucin frente a las versiones anteriores. Hereda su aspecto y algo defuncionalidad de Visual Studio 2008, adems de integrar un gran nmero de funciones que antesestaban disponibles como herramientas independientes.

    Ejemp

    lo de le

    ctura

  • P g i n a | 19

    Instalacin de SQL Server 2008

    El proceso de instalacin de SQL Server 2008 ha cambiado radicalmente en esta versin,equiparndose a los procesos de instalacin de otras herramientas como Visual Studio y formandoparte del estndar de Microsoft.

    Requisitos de HardwareEn primer lugar, hay que tener en cuenta los requisitos de instalacin. Estos, aunque tambin hanevolucionado, no presentan demasiada diferencia con los de la versin anterior. El equipo sobre el quese instala SQL Server 2008 debe tener un mnimo de 512MB de RAM, (recomendable 1GB), unprocesador PIII o superior con una velocidad de reloj de al menos 600MHz, (recomendable 1GHz). Enel caso de SQL Server Express Edition, los requisitos de memoria RAM son ms bajos, ya que admiteun mnimo de 192MB de RAM.

    En cuando al espacio libre en el disco duro, el proceso de instalacin de SQL Server 2008 (WindowsInstaller) crea archivos temporales en la unidad del sistema (En general, la unidad C) que ocupanaproximadamente 1,6 GB de espacio, por lo que es conveniente que nos aseguremos de tener libre esacantidad de espacio en nuestro disco duro. Esto ocurre as, incluso si vamos a instalar componentes deSQL Server en una unidad distinta.

    En funcin de la configuracin de sistema y de las caractersticas de SQL Server 2008 que instalemosen la mquina, dependen los requisitos finales de espacio en disco. La Tabla 1 muestra el desglose deespacio por cada caracterstica:Eje

    mplo d

    e lectu

    ra

  • P g i n a | 20

    Caracterstica Espacio en disco

    Motor de base de datos y archivos de datos, Rplica y Bsqueda de texto 150 MB

    Analysis Services y archivos de datos 35 MB

    Reporting Services y Administrador de informes 40 MB

    Componentes del motor de Notification Services, componentes de cliente ycomponentes de reglas

    5 MB

    Integration Services 9 MB

    Componentes de cliente 12 MB

    Herramientas de administracin 70 MB

    Herramientas de desarrollo 20 MB

    Libros en pantalla de SQL Server y Libros en pantalla de SQL Server Mobile 15 MB

    Ejemplos y bases de datos de ejemplo 390 MB

    Tabla 1: Espacio en disco de las caractersticas de SQL Server 2008 (32 y 64 bits)

    En las versiones de 64 bits, los requisitos, aunque similares, cambian un poco. La Tabla 2 muestra losrequisitos de hardware:

    SQL Server 2005 SQL Server 2008 Enterprise EditionSQL Server 2008 Developer EditionSQL Server 2008 Standard Edition

    Tipo de procesador IA64 mnimo: Procesador Itanium o superiorX64 mnimo: AMD Opteron, AMD Athlon 64, Intel Xenon compatiblecon Intel EM64T, Intel Pentium IV compatible con EM64T

    Velocidad de procesador IA64 mnimo: 1 GHzIA64 recomendado: 1 GHz o superiorX64 mnimo: 1 GHzX64 recomendado: 1 GHz o superior

    Memoria (RAM) IA64 mnimo: 512 MBIA64 recomendado: 1 GB o superiorIA64 mximo: 32 TBSistema operativo mximo mnimo: 512 MBX64 recomendado: 1 GB o superiorX64 mximo: sistema operativo mximo

    Tabla 2: Requisitos de hardware para SQL Server 2008 (64 bits)

    Requisitos de SoftwareLos requisitos de software son algo ms complicados que los de hardware, aunque todos ellos sepueden resumir en dos recomendaciones:

    En un entorno de pruebas podremos utilizar Windows XP sp2 para montar SQL Server 2008(Edicin Developer, para poder probar todas sus caractersticas).Ejemp

    lo de le

    ctura

  • P g i n a | 21

    En produccin debemos montar SQL Server 2008 sobre un Windows 2003 Server, dondepodremos aprovechar todas sus caractersticas, sobre todo estando en un entorno de granempresa, donde factores como la alta disponibilidad, fiabilidad o escalabilidad son fundamentales.

    Debemos tener en cuenta que, en muchas instalaciones de distintas versiones de los sistemasoperativos Windows, los servicios de Internet Information Server no se instalan por defecto. En estoscasos es imprescindible comprobar la instalacin del sistema operativo, ya que IIS es necesario parainstalar, por ejemplo, los Reporting Services de SQL Server 2008.

    En la Tabla 3 se resumen los requisitos de software para las versiones de 32 bits, y en la Tabla 4 paralas de 64 bits:

    Enterprise Developer Standard Workgroup Express Evaluation

    Windows 2000 No No No No No No

    Windows 2000Professional SP4

    No S S S S S

    Windows 2000Server SP4

    S S S S S S

    Windows 2000Advanced Srvr.SP4

    S S S S S S

    Windows 2000Datacenter

    S S S S S S

    Windows XPEmbedded

    No No No No No No

    Windows XPHome Edition SP2

    No S No No S No

    Windows XPProfessional SP2

    No S S S S S

    Windows XPMedia Edition SP2

    No S S S S S

    Windows XPTablet Edition SP2

    No S S S S S

    Windows 2003Server SP1

    S S S S S S

    Windows 2003Enterprise Ed. SP1

    S S S S S S

    Windows 2003Datacenter Ed.SP1

    S S S S S S

    Windows 2003Web Edition SP1

    No No No No S No

    Tabla 3: Requisitos de Software para SQL Server 2008 (32 bits)

    Enterprise Developer Standard Express EvaluationWindows 2003 64-Bit Itanium S (IA64) S (IA64) S (IA64) No S (IA64)Eje

    mplo d

    e lectu

    ra

  • P g i n a | 22

    Datacenter Edition SP1 No (X64) No (X64) No (X64) No (X64)

    Windows 2003 64-Bit ItaniumEnterprise Edition SP1

    S (IA64)

    No (X64)

    S (IA64)

    No (X64)

    S (IA64)

    No (X64)

    No S (IA64)

    No (X64)

    Windows 2003 64-Bit X64 StandardEdition SP1

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    WOW64 No (IA64)

    S (X64)

    Windows 2003 64-Bit X64Datacenter Edition SP1

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    WOW64 No (IA64)

    S (X64)

    Windows 2003 64-Bit X64Enterprise Edition SP1

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    No (IA64)

    S (X64)

    WOW64 No (IA64)

    S (X64)

    Tabla 4: Requisitos de Software para SQL Server 2008 (64 bits)

    Compatibilidad con sistemas extendidosLas versiones de 64 bits de SQL Server 2008 son compatibles con los sistemas Windows on Windows(WOW64). Estos sistemas representan una caracterstica de las ediciones de 64 bits de Windows, quepermiten que aplicaciones de 32 bits se ejecuten en ellos de forma nativa en modo 32 bits, aunque elsistema operativo siga funcionando en 64 bits.

    Proceso de instalacinEl proceso de instalacin, como hemos comentado anteriormente, se acerca al estndar en lasherramientas y servidores de Microsoft. En SQL Server 2008 se divide en dos fases:

    La primera fase es la de comprobacin de los requisitos mnimos de la mquina e instalacinde los prerrequisitos de SQL Server 2008.

    La segunda fase es la de la propia instalacin de SQL Server 2008.

    Estas dos fases se ejecutan siempre, incluso cuando estamos haciendo una reparacin de la instalacino actualizando componentes.

    Al iniciar la instalacin, aparece un asistente de opciones que nos permite elegir varias tareas a realizar(Figura 1), divididas en varias categoras:

    Las diferentes opciones seran:

    Planeamiento Instalacin Herramientas Recursos Avanzadas OpcionesEjemp

    lo de le

    ctura

  • P g i n a | 23

    Dentro de cada una de estas opciones tambin podemos elegir diversas categoras:

    Planeamiento:o Requisitos de hardware y softwareo Documentacin de seguridado Notas de la versin en lneao Comprobador de configuracin en lneao Instalar Asesor de actualizacioneso Ayuda en pantalla para la instalacino Iniciacin en el uso de clsteres de conmutacin por error de SQL Servero Documentacin de actualizacin

    Instalacino Nueva instalacin independiente de SQL Server o agregar caractersticas a una

    instalacin existente

    o Nueva instalacin de clster de conmutacin por error de SQL Servero Agregar nodo a clster de conmutacin por erro de SQL Servero Buscar actualizaciones de producto

    Mantenimientoo Actualizacin de edicino Repararo Eliminar nodo de clster de conmutacin por erro de SQL Server

    Herramientaso Comprobador de configuracin del sistemao Informe de deteccin de caractersticas instaladas de SQL Servero Actualizar paquetes de Integration Services

    Recursoso Libros en Pantalla de SQL Server 2008o SQL Server TechCentero Centro para desarrolladores de SQL Servero Sitio Web de evaluacin del producto de SQL Servero Contrato de licenciao Registrar esta copia de SQL Server 2008 Expresso Declaracin de privacidad de Microsofto Comunidado Sitio Web de ejemplos de Codeplex

    Avanzadaso Instalacin basada en un archivo de configuracino Preparacin de clster para avanzadaEjemp

    lo de le

    ctura

  • P g i n a | 24

    o Finalizacin avanzada de clster

    Figura 1: Instalacin de SQL Server 2008

    Para ejecutar la instalacin del servidor, debemos seleccionar la segunda opcin: Instalacin dentrode sta elegir Nueva instalacin independiente de SQL Server o agregar caractersticas a unainstalacin existente (Figura 2).

    Ejemp

    lo de le

    ctura

  • P g i n a | 25

    Figura 2: Instalacin de SQL Server 2008

    PrerrequisitosSQL Server 2008 requiere la instalacin de unos cuantos prerrequisitos andes de proceder con lainstalacin del producto (Figura 3).

    Figura 3: Instalacin de los prerrequisitos de SQL Server 2008Ejemp

    lo de le

    ctura

  • P g i n a | 26

    Al terminar la instalacin de los prerrequisitos, el asistente da paso al proceso de instalacin delservidor (Figura 4).

    Figura 4: Instalacin de SQL Server 2008

    Instalacin de SQL ServerUna vez hemos instalado todos los prerrequisitos, podemos continuar con el proceso de instalacin deSQL Server 2008. Aqu veremos otra evolucin por parte de Microsoft con respecto a versionesanteriores del producto. Como podemos ver, el asistente nos da la opcin de elegir que componentesson los queremos instalar. Es decir, en un solo paso podemos elegir instalar el servidor de bases dedatos, los Servicios de Anlisis, los Servicios de Informes, y el resto de componentes.

    En el primer paso de la instalacin, el asistente lleva a cabo la comprobacin de la configuracin delsistema (Figura 5), para asegurarse de que todos los pasos previos se han completado correctamente,de que todo el software requerido ha sido instalado y el sistema cumple todas las condiciones paraseguir adelante con la instalacin.

    Ejemp

    lo de le

    ctura

  • P g i n a | 27

    Figura 5: Comprobacin de la configuracin del sistema

    En el paso siguiente, podemos introducir el tipo de instalacin (Figura 6).

    Figura 6: Informacin de registro del producto.Ejemp

    lo de le

    ctura

  • P g i n a | 28

    Figura 7: Seleccin de componentes para instalar.

    Componentes de SQL Server

    Una vez realizadas todas las comprobaciones, podemos pasar al siguiente paso del asistente (Figura 7).Es aqu donde podemos elegir instalar todos los componentes de una vez. Si pulsamos en el botnAvanzadas de ese cuadro de dilogo, pasaremos a la Seleccin de Componentes. Este cuadro dedilogo es un estndar en los procesos de instalacin de Microsoft, y nos permite seleccionar loscomponentes que queremos instalar en una nica pantalla (Error! No se encuentra el origen de lareferencia.). El nico componente que no est seleccionado automticamente es el motor DTS (DataTransformation Services), que permite ejecutar paquetes DTS de SQL Server 2000. Esta opcin debeser seleccionada si necesitamos migras paquetes DTS de un SQL Server 2000 a un SQL Server 2005.Adems, las bases de datos de ejemplo, AdventureWorks (OLTP), AdventureWorksDW(DataWarehouse) y AdventureWorksAS (OLAP), por lo que debemos hacerlo nosotros manualmente,si queremos utilizarlas.

    El siguiente paso es el de seleccin de instancia (8). Si es la primera instalacin que se realiza en laEl siguiente paso es el de seleccin de instancia (8). Si es la primera instalacin que se realiza en lamquina, esta ventana nos permitir dar un nombre a la instancia, o bien instalar la instanciapredeterminada. En caso de que ya exista una predeterminada en la mquina, slo tendremos la opcinde dar un nombre.

    Ejemp

    lo de le

    ctura

  • P g i n a | 29

    Figura 8: Nombre de la instancia de SQL Server 2008

    Seguridad

    En cuanto a seguridad, SQL Server 2008 presenta un gran nmero de funciones y mejoras, y esotambin est reflejado en el proceso de instalacin del servidor (Figura 9). De hecho, podemos dividirestas mejoras en dos categoras en cuanto a la instalacin se refiere.

    Figura 9: Seleccin de las cuentas de servicio de SQL Server 2005.Ejemp

    lo de le

    ctura

  • P g i n a | 30

    Por un lado, el asistente de instalacin permite asociar una cuenta para cada servicio de SQL Server2008 (Figura 10), mientras que en versiones anteriores, solo era posible hacerlo con el servicio de SQLServer y el Agente de SQL Server (SQLSERVER & SQLSERVERAGENT).

    Figura 10: Personalizacin de las cuentas de servicio.

    Por tanto, es conveniente que antes de comenzar con la instalacin del servidor, hayamos decididocuantas cuentas necesitamos en funcin de los servicios que queramos instalar. Estas cuentas serndedicadas, es decir, no corresponden a ningn usuario real, sino que solo sern utilizadas por elservicio que tengan asignado. En cualquier caso, una vez realizada la instalacin de SQL Server 2008,y con el servidor en marcha, tambin se pueden cambiar las cuentas asociadas a cada servicio.

    La razn de que podamos asociar una cuenta a cada servicio es que esto permite a los administradoresdel sistema configurar los servicios que se ejecutan en un servidor con un conjunto de privilegiosmnimo. De esta manera, cada servicio podr realizar nicamente las tareas que debe, porque no tendrpermisos para hacer nada ms. Por ejemplo, el servicio de SQL Server necesita un conjunto deprivilegios de sistema mnimo para poder llevar a cabo sus tareas, por lo que la cuenta local delsistema (Local System) le proporciona el nivel de seguridad necesario (Error! No se encuentra elorigen de la referencia.). El servicio del Agente de SQL ejecuta tareas de mantenimientoprogramadas de todo tipo, por lo que necesitar un conjunto de permisos superior.

    En cualquier caso, es recomendable que a cada servicio se le asigne una cuenta de dominio dedicada,En cualquier caso, es recomendable que a cada servicio se le asigne una cuenta de dominio dedicada,incluyendo al servicio de SQL Server, sobre todo si el servicio interacta con otros servicios de red,como por ejemplo el servicio de Reporting Services, para enviar informes va web. Al crear estascuentas, es conveniente que las contraseas no tengan asignado un periodo de expiracin, sobre todoen servidores en produccin, ya que de lo contrario, podemos encontrarnos con la desagradablesorpresa de que un determinado servicio deje de ejecutarse.

    SQL Server 2008 dispone de 10 servicios que podemos instalar en una mquina, aunque algunos seinstalan automticamente, y no aparecern directamente en la lista simple de componentes:

    SQL Server: Es el motor relacional de SQL Server.Ejemp

    lo de le

    ctura

  • P g i n a | 31

    SQL Server Agent: Se encarga de ejecutar todos los trabajos de SQL Server, es decir, lastareas programadas. Tambin monitoriza al servidor y es el encargado de enviar alertas.

    Analysis Server: Es el motor del servidor OLAP. Report Server: Se encarga de generar informes. Tambin se encarga de gestionar los usuarios

    que tienen acceso a cada informe y su conjunto de permisos.

    Notification Server: Este servicio permite a SQL Server enviar notificaciones a cualquiersuscriptor, va email, Web, PDA, etc.

    Integration Services: Es el servicio que permite realizar tareas de manipulacin y transportede datos. Es la evolucin de los paquetes DTS.

    Full-text search: Permite buscar una determinada cadena de texto en un literal de cualquierlongitud.

    SQL Browser: Proporciona una lista de las instancias de SQL Server a su alcance, incluyendoel puerto TCP/IP asociado.

    SQL Server Active Directory Helper: Habilita la integracin con Active Directory,informando de cualquier cambio en el Nombre Principal de Servicio.

    SQL Writer: permite a los programas de backup, realizar copias de seguridad de bases dedatos de SQL Server.

    Un Nombre Principal de Servicio (Service Principal Name, SPN) es el nombre por el que un clienteidentifica de manera nica una instancia de un servicio dentro de un sistema Windows. El servicio deautenticacin Kerberos, utiliza el SPN para autenticar un servicio.

    El proceso es sencillo: cuando un cliente desea conectarse a un servicio, primero localiza la instanciadel servicio, crea un SPN para dicha instancia y presenta este SPN al servicio de autenticacin.Windows tiene una utilidad llamada setspn.exe, que permite establecer este nombre para cualquierservicio. Cuando el motor de una instancia se inicia, el servicio intenta registrar su SPN, y cuando sedetiene, lo da de baja. El SPN tiene el siguiente formato: MSSQLSvc/:, dondeMSSQLSvc es el nombre del servicio que se registra, FQDN es el nombre completo del servidor, y eltcpport representa el puerto TCP/IP.

    Para que el registro del SPN del servicio de SQL Server se produzca de manera automtica cada vezque se inicia, este servicio debe ejecutarse bajo la cuenta de sistema local (Local System) o bajo unacuenta con privilegios de administrador de dominio. Si no es as, el administrador puede hacerlo deforma manual con la utilidad anteriormente mencionada.

    Otra de las mejoras que se han producido en la seguridad del servidor es que ahora, el programa deinstalacin de SQL Server 2008, aunque sigue manteniendo al usuario sa, obliga a asignarle unapassword fuerte (strong password) (Figura 11). Este tipo de password obliga a introducir una longitudmnima de caracteres alfanumricos, al menos uno en maysculas y otro en minsculas, y al menos uncarcter especial (@#$&..).

    Ejemp

    lo de le

    ctura

  • P g i n a | 32

    Figura 11: Seleccin del modo de autenticacin de SQL Server 2008

    Reglas de intercalacin (Collation)

    En este paso del asistente, podemos establecer las reglas de intercalacin para nuestra instancia delservidor (Figura 12).

    Figura 12: Configuracin de las reglas de intercalacin y orden pasa SQL Server 2008.Ejemp

    lo de le

    ctura

  • P g i n a | 33

    Las reglas de intercalacin especifican los patrones de bits que representan a cada carcter en unconjunto de datos, y determinan las reglas utilizadas para ordenar y comparar esos datos, adems dealgunas configuraciones especficas de la localizacin. Estas reglas son fundamentales para elfuncionamiento de SQL Server, ya que se utilizan para ordenar los datos almacenados en las bases dedatos, en funcin del alfabeto o lenguaje seleccionado cuando el diccionario de ordenacin se utilice,adems de especificar la pgina de cdigo ANSI utilizada para representar caracteres no Unicode. Poresta razn, es fundamental que dentro de cada organizacin se establezca un estndar para las reglas deintercalacin, ya que si tenemos dos instancias de SQL Server cuyos datos estn almacenados conjuegos de caracteres distintos, no tendremos posibilidad de mover o restaurar bases de datos, al menosde una manera sencilla. De hecho, en estos casos suele ocurrir que los resultados que se obtienen soninconsistentes.

    Las reglas de intercalacin en SQL Server 2008 son importantes si estamos comparando caracteresUnicode contra caracteres No Unicode, ya que al realizar un proceso de ordenacin, las comparacionesde caracteres no funcionan de la misma manera para un tipo de caracteres que para el otro.

    La tabla de caracteres Unicode fue desarrollada por el Consorcio Unicode, formado por empresas talescomo Microsoft, HP, Apple, Oracle, Sybase, SAP, Sun Microsystems o Google, entre otras. Estaorganizacin se encarga de mantener y promover este estndar. La diferencia entre esta y otras tablasde caracteres es que Unicode utiliza dos bytes para representar cada carcter, en lugar de uno, lo que lepermite representar los caracteres de todos los lenguajes escritos que existen en el mundo. Por estarazn, resulta adecuado utilizar caracteres Unicode cuando necesitamos almacenar datos queprovienen de distintos idiomas o lenguajes.

    En SQL Server 2008 podemos utilizar tipos de datos Unicode (nchar, nvarchar o ntext, este ltimo endesuso), o tipos de datos No Unicode (char, varchar y text, tambin este ltimo en desuso). Loscaracteres Unicode no se vern afectados por las reglas de intercalacin. Debido a esto, los tipos dedatos Unicode proporcionan un rendimiento muy superior en las consultas o modificaciones de datos,aunque tambin hay que tener en cuenta que esta mejora de rendimiento se produce a costa de espacioocupado en disco, ya que un carcter Unicode utiliza exactamente el doble de espacio que uno NoUnicode.

    En SQL Server 2008 podemos configurar las reglas de intercalacin a distintos niveles:

    A nivel de expresin. Se establecen al ejecutar una determinada sentencia, y afecta alconjunto de resultados que devuelve dicha instruccin. Permite realizar una ordenacin de losresultados, de tal manera que la clusula ORDER BY sea especfica del lenguaje especificadoen la intercalacin.

    A nivel de columna. Al crear una columna de tipo carcter, podemos especificar la regla deintercalacin asociada a esa columna. Adems, esta caracterstica se puede modificar una vezcreada. Si no se especifica ninguna regla de intercalacin, se tomarn las reglas por defectopara la base de datos donde se crea la tabla.

    A nivel de Base de Datos. Al crear una nueva base de datos, podemos especificar el juego decaracteres para esa base de datos, que no tiene porqu coincidir con el de otras bases de datosinstaladas en la misma instancia de SQL Server. Tambin se puede modificar una vez creada.Si no se especifica nada, la base de datos tomar el juego de caracteres que tenga asignado labase de datos model. Este juego coincide con las reglas de intercalacin por defecto de lainstancia de SQL Server.

    A nivel de servidor. Durante el proceso de instalacin del servidor, podemos establecer lasreglas de intercalacin por defecto. Estas reglas se convierten en los juegos de caracteres pordefecto de las bases de datos de sistema (master, model, tempdb, msdb & distribution).Ejemp

    lo de le

    ctura

  • P g i n a | 34

    Durante el proceso de instalacin de SQL Server 2008 establecemos las reglas de intercalacin pordefecto para la instancia, tal y como hemos hablado. En este paso del asistente, llamado Configuracinde intercalacin, tenemos a nuestra disposicin diferentes opciones de configuracin.

    En primer lugar, tenemos dos opciones principales para elegir:

    Designador de intercalacin y orden. Intercalaciones de SQL

    Las intercalaciones de SQL se utilizan para compatibilidad con versiones anteriores de SQL Server.De hecho, todas las intercalaciones estn basadas en versiones de SQL Server anteriores paracaracteres No Unicode. Las reglas de ordenacin que nos proporcionan las intercalaciones de SQLpara caracteres No-Unicode no son compatibles con las rutinas de ordenacin proporcionadas por lossistemas operativos Windows. Sin embargo, las reglas de los caracteres Unicode s que lo son. Debidoa que las intercalaciones de SQL utilizan diferentes reglas de comparacin, en funcin de que loscaracteres sean o no Unicode, para comparaciones entre los mismos datos, podemos encontrardiferencias dependiendo del tipo de dato subyacente.

    En cuanto a la otra opcin, tenemos una lista desplegable para seleccionar la intercalacin deWindows que deseemos escoger. En esta lista, siempre aparecer seleccionada por defecto laintercalacin asociada a nuestro sistema operativo. Para una intercalacin de Windows, el algoritmode comparacin de datos No-Unicode es el mismo que se utiliza para la comparacin de datosUnicode. Esto ocurre as para que las ordenaciones de datos, utilicen o no las tabla Unicode, seancompatibles con las comparaciones de cadenas en la versin de Windows sobre la que instalamos SQLServer, lo que aporta consistencia entre tipos de datos dentro de SQL Server y, como ventajaadicional, permite a los desarrolladores utilizar las mismas reglas de ordenacin de cadenas en susaplicaciones que las que se utilizan en SQL Server. SQL Server lleva a cabo esta tarea llamando a lafuncin CompareStringW, que pertenece a la API de Windows.

    Adems, tenemos una serie de check-boxes que nos permiten seleccionar las opciones y reglas deordenacin:

    Orden Binario. Distingue maysculas de minsculas. Distingue acentos. (Todo tipo de tildes: `~) Distingue tipos de Kana. (Slo afecta a los alfabetos Japoneses, ya que existen dos tipos de

    caracteres kana: Hiragana y Katakana)

    Distingue el ancho. (Se refiere al ancho en bytes del carcter.)

    En SQL Server, una intercalacin para la que seleccionemos el orden Binario, define el conjunto decaracteres y la pgina de cdigo ANSI que se utilizarn en operaciones de comparacin y ordenacinde caracteres. Las intercalaciones binarias aportan una mejora del rendimiento debido a susimplicidad. Para tipos de dato No-Unicode (char, varchar, y text), las comparaciones de datos utilizanla pgina de cdigo ANSI. Los tipos de dato Unicode (nchar, nvarchar y ntext) utilizan las pginas decdigos Unicode. En las intercalaciones binarias con tipos de datos Unicode, la intercalacin no seconsidera para ordenaciones de datos. Por ejemplo, al ordenar datos con tipo Unicode, se obtendranresultados similares para las intercalaciones Modern_Spanish_BIN y Japanese_BIN.

    En versiones anteriores de SQL Server, las intercalaciones binarias realizaban comparacionesincompletas para datos Unicode. En SQL Server 2005 y 2008 se mantienen estas intercalaciones porcompatibilidad con las versiones anteriores del producto, y est representada en la opcin de ordenBinario.Eje

    mplo d

    e lectu

    ra

  • P g i n a | 35

    La otra opcin, el orden Binario: punto de cdigo, incluye un nuevo conjunto de intercalacionespara comparacin de punto de cdigo real. Estas comparaciones son mucho ms rpidas y fiables, y sedeben utilizar siempre en proyectos de desarrollo desde cero, en los que no exista migracin desistemas con versiones anteriores. Esta opcin aade la marca BIN2 a los nombres de lasintercalaciones a las que se asocia.

    En general, siempre que sea posible debemos utilizar intercalaciones binarias, debido a su ptimorendimiento. Aunque hay que tener en cuenta que, las intercalaciones binarias son sensibles amaysculas, lo que puede constituir un obstculo en ciertas situaciones. De hecho, cuandoseleccionamos el check-box de alguna de las opciones binarias en el asistente de instalacin de SQLServer 2008, el resto de las opciones se deshabilita.

    Volviendo al asistente de instalacin del producto, si en el paso de seleccin de componentes hemosseleccionado instalar tanto el servidor SQL Server como los Servicios de Anlisis, el paso de laConfiguracin de intercalacin nos mostrar en su parte superior, la opcin de personalizar las reglasde intercalacin para cada servicio.

    Servid