Para aquellos interesados en planear y establecer una estrategia de actualización hacia SQL Server 2012, Microsoft ha liberado un documento de un poco más de 450 paginas sobre este tema. El documento lo pueden descargar, en formato PDF, desde aquí.
Tengan en cuenta que para actualizar hacia SQL Server 2012, el o los servidores y sus respectivas instancias, deben estar en alguna de las siguientes versiones:
Si tu servidor todavía está en SQL Server 2000 y quieres llevarlo hacia SQL Server 2012, primero deberás llevarlo al menos a una de las versiones enumeradas anteriormente, preferiblemente SQL Server 2008 R2 SP1. Si quieres información sobre este proceso, revisa este post sobre el particular.
El documento, en inglés, realiza un cubrimiento extensivo sobre cómo actualizarse hacia SQL Server 2012 en estos capítulos:
SQL Server 2012 trae también un asistente de actualización y en este artículo del Wiki TechNet de SQL Server, encontrarás una muy buena y detallada información sobre el particular. Desde ahí puedes descargar la herramienta también.
Por último, cualquier esfuerzo de actualización requiere de planeación detallada y de una recopilación de información para llevar la instancia o el servidor de base de datos hacia SQL Server 2012. Por cierto, en este post en el blog de Vinod Kumar, hay una excelente recopilación de aspectos a tener en cuenta para actualizar hacia SQL Server 2012.
Saludos.
Seguimos entonces con la segunda parte de esta serie. Como veíamos en la primera parte, ya se han configurado cinco unidades lógicas que usaremos como discos duros en nuestros recursos a configurar. Dichas unidades son:
Ahora vamos a configurar el iSCSI Target 3.3 de Microsoft para que desde los nodos, que ya los he preparado previamente, tengamos acceso a los discos que necesitamos. Cada nodo tiene sistema operativo Windows Server 2008 R2 SP1, actualizado vía Microsoft Update y agregados al directorio activo CONTOSO.
Antes de revisar los pasos, es importante tener en cuenta la siguiente imagen:
En la imagen no se ve el controlador del dominio, CONTOSODC con la IP 10.25.50.1. Y el almacenamiento compartido se llama CL-STORE con la IP 10.25.50.5.
Estos son los pasos para crear un iSCSI Target:
1. En el nodo 1 del Clúster, habilitar el iSCSI Initiator:
2. Al dar clic en “iSCSI Initiator”, y si es la primera vez, se mostrará esta pantalla:

3. Presionar “Yes”. Aparece la siguiente ventana:

4. Si se va a la pestaña “Configuration”, se aprecia lo siguiente:
5. El nombre IQN es el que requerimos después en la configuración del iSCSI Target.
6. Ahora se configura el nombre del Portal iSCSI Target. Para ello, se da clic en la pestaña “Discovery” y se aprecia la siguiente ventana:
7. Presionar el botón “Discover Portal…” y en la ventana que aparece, dejarla configurada como se aprecia a continuación:
8. Presionar OK para que aparezca la siguiente ventana:

9. Con lo anterior procedemos a configurar el iSCSI Target.
10. Ahora vamos al servidor que oficia de almacenamiento compartido y validamos la creación de discos o LUN simuladas.
11. Iniciar el asistente de creación del nuevo iSCSI Target:
12. Dar clic en la opción “Create iSCSI Target”.
13. Presionar Next. La ventana que aparece dejarla como se aprecia a continuación:

14. Presionar Next. Aparece esta ventana:

15. Dar clic en “Browse” para que aparezca esta ventana:

16. Como se había hecho la configuración previa, aparece el IQN del nodo 1 del clúster.
17. Si realizamos la misma configuración en el nodo 2 para habilitar el ISCSI Initiator y luego refrescamos la pantalla anterior, debe verse así:
18. Seleccionamos el del nodo 1 y presionamos OK. Aparece esta ventana:

19. Presionamos Next. Sale la siguiente ventana:

20. Presionamos Finish.
21. Sale esta ventana:
22. Ya está creado el iSCSI Target. Ahora hay que presentarle las unidades creadas previamente:

23. Seleccionar la opción “Add Existing Virtual Disk to iSCSI Target”. Aparece la siguiente ventana:

24. La cual presenta los discos configurados previamente.
25. Los seleccionamos todos:
26. Presionamos OK. Se aprecia la siguiente ventana:

27. Ya tenemos configurado nuestro almacenamiento compartido.
Ahora hay que configurar cada nodo del clúster para que vea el iSCSI Target, lo cual lo haremos en el siguiente post porque este ya está lo suficientemente largo.
Saludos.
Bien dicen por ahí que lo prometido es deuda. Aunque tengo una explicación para la demora adicional de un día ya que el disco duro externo que tenía con las dos MV se dañó, pensé que ya estaba listo para el post y tuve que hacer un par de ajustes. Sin embargo, esto me da pie para aumentar más el número de posts, jeje.
Como les mencioné en el post inicial, uno de los componentes para armar el Clúster es el almacenamiento compartido. Para esto, vamos a usar iSCSI Target v3.3 de Microsoft, que por cierto es gratuito, y nos ofrece en esencia, un mecanismo para armar unidades lógicas a presentarle a un Clúster o también a un servidor.
Para ello, hay que descargar el producto desde aquí. Lo que se descarga en el servidor, previamente instalado y configurado con Windows Server 2008 R2 SP1, es un instalable que hay que correr y descomprimir en un directorio. Al finalizar, éste abre la siguiente página Web local:

Pueden leer la documentación oficial en TechNet o algunos blogs interesantes y también instalar el producto. Para ello dan clic en el vínculo que indica “iSCSI Software Target (x64)” y sigan el asistente de instalación.


Luego de instalado, en el menú de Inicio cuentan con acceso al programa:

Antes de ejecutar el programa, abrir el Windows Explorer y crear una carpeta para almacenar los VHD que oficiarán de unidades lógicas. Para nuestro caso, vamos a crear 5, la del QUORUM, la del disco del MSDTC, una para los datos, otra para los logs y otra para la TEMPDB. En un ambiente de producción uno podría destinar otra LUN para el tema de respaldos, pero esto a veces también se resuelve de otras maneras.
En mi caso, el directorio se llama STORE en el disco C.
Ahora si, arrancar el programa:

Seleccionar “Devices” para crear los discos virtuales que oficiarán de unidades compartidas para nuestro Clúster. Tengan presente que pueden crear el disco virtual en formato VHD o importarlo si ya tienen uno creado. Procedemos entonces a crear los discos duros virtuales, siguiendo el asistente. El tamaño del VHD se proporciona en MB, así que hagan bien los cálculos. Cuando lleguen a la parte de “Access”, pueden dejarla en blanco y continuar; luego se configurará.
Al finalizar, deben tener algo similar a lo que se muestra a continuación:

Si van al directorio C:\STORE, verán algo como esto:

A continuación, lo que se debe hacer es crear el Target y asignarle los nodos que lo consultarán mediante IQN, o iSCSI Qualified Name. Pero como no hemos creado los nodos, ni los hemos ingresado al directorio activo, esto tendrá que esperar. Por lo pronto, hemos adelantado algo sobre nuestro Clúster SQL Server 2008 R2 SP1, cual es tener nuestros discos compartidos.
En la próxima entrega, generaremos los dos nodos del Clúster, por lo menos en cuanto a sistema operativo se refiere.
Saludos.
Durante mi tiempo de trabajo en Microsoft, el grupo de IT mantenía una serie de documentos en línea, y a veces impresos, que servían de ayuda e incluso de referencia para varios escenarios de trabajo dentro de lo que hoy se conoce como “Information Worker”.
Hoy me he enterado que Microsoft ha puesto a disposición de todos algunas de éstas y les comparto esta información ya que algunas de éstas son verdaderamente útiles. Para la muestra, un botón:

Hay para Office 2010, SharePoint 2010 y Live Meeting 2007, entre otras de carácter genérico para tareas como compartir, colaborar, e-mail y protección.
Las pueden descargar desde aquí en Microsoft Download. Están en idioma inglés, pero seguro que sirven de punto de partida para que las personalicen para sus organizaciones e incluso las localicen en español.
Saludos.
El reconocido experto en SQL Server, Kevin Kline, nos ofrece un excelente documento sobre las diez cosas más importantes que hay que saber sobre el desempeño en SQL Server.
Lo comparto con ustedes, mientras sigo preparando algunas otras cosas para mi blog, como continuidad de esta serie y de la del Sandbox, además de afinar mi charla para el SQL Saturday #124 y de generar otro documento sobre instalación de SQL Server 2012 Express Edition.
Saludos.
Un pequeño post para indicarles que en Codeplex ya pueden descargar las bases de datos de ejemplo, conocidas como Adventure Works para SQL Server 2012. Antes de instalar, por favor, lean muy bien las instrucciones y descarguen lo que necesiten.
Hay ejemplos para OLTP, OLAP, el nuevo modo tabular y hasta algunos ejemplos para Power View y para Power Pivot.
Si quieren evaluar SQL Server 2012, pueden descargar una versión de prueba hasta por 180 días.
Saludos.
Seguimos con nuestra serie sobre aspectos esenciales para saber qué pasa en nuestro servidor. Y en este post vamos a hablar sobre la herramienta que ofrece SQL Server 2008 R2 para recolectar datos de desempeño.
Primero, hay que decir que esta herramienta está disponible desde SQL Server 2008 y no es compatible hacia atrás, es decir, no permite recolectar datos para SQL Server 2005 ni para SQL Server 2000. En éstas, si toca seguir con la combinación SQL Profiler y contadores de desempeño; sin embargo, uno de mis posts en esta serie tratará sobre una manera de recolectar datos de manera automática con estas dos herramientas, no se preocupen.
Segundo, el recolector de datos de desempeño almacena los datos relacionados con desempeño en cuanto a utilización de disco, estadísticas de queries y actividades del servidor que pueden generar impacto en estos aspectos. Si con éstos no es suficiente, se puede generar un conjunto de recolección de datos particulares.
Tercero, para los conjuntos de datos por omisión, hay unos reportes para analizar los datos recopilados y analizar en detalle, si se quiere, que puede estar sucediendo en el servidor de base de datos que afecta mi solución. De nuevo, si los reportes no son suficientes o se requiere algo más, se pueden generar reportes con el BIDS o cualquier herramienta que interactue con SQL Server Reporting Services.
Para configurar el recolector de datos de desempeño, el cual no se activa tan pronto instalamos y configuramos SQL Server 2008 R2, seguimos los siguientes pasos:
Recomendable tener una instancia separada para recolectar los datos sin que ésto afecte los servidores en producción. Para efectos de este post, yo lo configuraré en mi servidor Sandbox que he preparado para este tipo de laboratorios. Recuerden que una sola instancia de la base de datos que recolecta, puede almacenar información para varias bases de datos.
Luego, como les indicaba, hay que habilitar el recolector de datos de desempeño. Para esto, se usa el asistente de configuración de gestión para la bodega de datos. A éste llegamos dando clic derecho en la opción “Data Collection” bajo el conjunto “Management” en el SQL Server Management Studio y seleccionando la opción “Configure Data Management Warehouse”:

Debe aparecer esta ventana:

Presionar Next. Aparece esta ventana:

Presionar Next. Aparece esta ventana, con el nombre del servidor en el cual se creará la base de datos:

Presionar el botón “New” para crear la base de datos de configuración. Yo la llamé DW-RDD, pero ustedes pueden ponerle el nombre que deseen o que tengan definido de acuerdo con los estándares de su organización.

Presionar Next. Aparece una ventana en donde seleccionan los usuarios que administrarán y tendrán acceso a los diferentes reportes y acciones a realizar sobre esta base de datos. Mi sugerencia es que creen una cuenta que permita tanto leer como escribir en esta base de datos y que a la cuenta DBA le asignen el permiso de administrar. Para efectos de esta prueba, use la cuenta de administración que tengo creada para todos los roles.
Luego de lo anterior, sale esta ventana:

Presionar Finish para que genere la base de datos de recolección.
Si todo sale bien, deben tener una ventana como la que se muestra a continuación:

Presionar Close.
Luego hay que volver al SQL Server Management Studio y ejecutar el asistente de nuevo, pero esta vez seleccionando la opción “Set up a data collection”:

Presionar Next. La ventana que sale deben dejarla configurada de la siguiente manera:

Presionar Next. Aparece esta ventana:

Presionar Finish. Aparecerá esta ventana:

Presionar Close. El conjunto de recolección queda configurado de la siguiente manera:

Ahora bien, lo importante es que sobre cada conjunto de datos se recolecten datos y se haga la actualización de éstos. La opción se visualiza así:

Luego de dar clic en la opción, se ve esta ventana:

Presionar Close.
Luego de ésto, se da clic derecho en la opción Data Collection y se busca la opción de Reportes para empezar a consultar la bodega de datos.
Por ejemplo, el reporte de actividad en el servidor se vería así, entendiendo que como en mi Sandbox hay pocos datos pues por eso se ve de esta manera:

Así que ya con la herramienta configurada, pueden empezar a recolectar información sobre las bases de datos y ver en los reportes qué está pasando en éstas y corregir o modificar acorde.
Mayor información en los libros en línea, Recopilación de datos.
En próximas entregas, seguiremos con la recopilación de datos y como les indiqué anteriormente, como recopilar datos en SQL Server 2005 de manera automática.
Saludos.
Uno de los aspectos importantes que tiene que tener en cuenta todo DBA es el de saber que está pasando en su servidor, tanto proactivamente como reactivamente. Para ello, SQL Server 2008 R2 ofrece una serie de herramientas que le ayudan en su diario quehacer. Una de ellas, la primera en relacionar en una serie de posts bajo el título “SQL Server 2008 R2 troubleshooting essentials”, es el monitor de actividad.
El monitor de actividad está disponible desde SQL Server 2005 y por lo que he visto, también lo estará en SQL Server 2012. Para activarlo, solo necesitan dar clic derecho sobre el nombre del servidor en el SQL Server Management Studio o también ubicando un icono similar al del monitor de desempeño en la barra de herramientas del SQL Server Management Studio. Cuando lo activen, verán una ventana similar a ésta:

Incluso, para personalizar el SSMS y que se vea más “estilo DBA” pueden configurarlo al iniciar éste. Simplemente en Tools seleccionan Options y luego en General buscan la opción “At Startup” y seleccionan “Open Object Explorer and Activity Monitor” y listo.

Cada monitor se relaciona con la manera en la cual se comporta el procesador en el servidor, las tareas en una instancia en SQL Server en espera por un recurso , los aspectos de E/S de los archivos de datos y de log de las diferentes bases de datos y por último, aquellas consultas de bajo desempeño en una instancia de SQL Server.
Por ejemplo, si ustedes copian la consulta a continuación, verán un incremento en el consumo de la CPU:
– keeping CPU busy…
Use AdventureWorks2008R2
GO
DECLARE @Flag INT
SET @Flag = 1
WHILE (@Flag<1000)
BEGIN
ALTER INDEX [PK_SalesOrderDetail_SalesOrderID_SalesOrderDetailID]
ON [Sales].[SalesOrderDetail] REBUILD
SET @Flag = @Flag+1
END
GO
El anterior ejemplo permite ver cuando se sobrepasan niveles o umbrales establecidos o incluso definidos en cuanto a operaciones de la plataforma. Lo que siempre hay que tener presente es cuáles son esos niveles y qué hacer en caso de estar por encima o por debajo, depende del indicador. En otras entradas en esta serie hablaremos en profundidad de ésto.
Para el monitor de actividad, cada sección de éste puede complementarse con otras herramientas. Por ejemplo, si en la sección de consumo de CPU toman el ID de la sesión que parece que consume toda la CPU y la llevan al SQL Profiler, muy probablemente obtengan mayor y mejor detalle sobre lo que sucede. Incluso pueden ver los detalles de la sesión o “matar” un proceso.
Para identificar cuellos de botella, por ejemplo debido a que al sistema le hace falta memoria RAM y está paginando mucho, la sección de Resource Waits es ideal. Ahora bien, muchas veces la base de datos consume mucho recurso de disco y es ahí cuando la sección Data File I/O entra a jugar, particularmente el indicador de tiempo de respuesta. Por último, la sección de Recent Expensive Queries es en donde el DBA identifica cuáles consultas están desempeñándose muy mal. Además, como DBA, puede ver la consulta e incluso sacar un plan de ejecución. Chévere, no?
Pára terminar con esta primera entrega, el monitor de actividad toma muestras cada 10 segundos. Pero si ustedes dan clic derecho sobre Overview y seleccionan Refresh Interval, pueden escoger desde 1 segundo hasta 1 hora con valores pre-determinados de la opción.
Mayor información en los libros en línea, Monitor de actividad.
En las próximas entregas trataremos el tema de recolección de datos de desempeño.
Saludos.
Visio 2010 es una buena herramienta de la suite Microsoft Office que ayuda a diseñar, entre otras características, un modelo de base de datos. Sin embargo, en esta versión, no hay una herramienta que permita que ese modelo se lleve de alguna manera a SQL Server 2008 R2. Hay una que permite hacer “reverse engineering”, pero no la opuesta.
Sin embargo, en Codeplex, hay un AddIn que permite hacer “forward engineering” mediante la creación de un script en T-SQL para crear la base de datos, las tablas y sus relaciones. Esa herramienta se conoce como Visio Forward Engineer AddIn y está disponible de manera gratuita.
Yo la estoy usando para un proyecto que estoy trabajando actualmente y el script que generó funcionó sin problemas en SQL Server 2008 R2 SP1 Developer Edition.
Espero que les pueda ser de utilidad.
Saludos.
Hola. La herramienta Microsoft Assessment and Planning (MAP) Toolkit en su versión 6.5 está disponible para descargar y con ella, dentro de muchas de las funcionalidades que trae, pueden generar un inventario de los servidores en su organización con SQL Server. También pueden obtener inventario de servidores con MySQL, Oracle y Sybase.
Para inmersión rápida en MAP Toolkit 6.5, dediquen un tiempo a mirar los videos; cortos, buenos y muy instructivos.
En un post anterior, yo había generado un link a un documento en mi SkyDrive público, sobre cómo usar MAP Toolkit para generar este inventario, el cual vuelvo y relaciono aquí.
Por lo pronto, estoy documentándome sobre lo nuevo en MAP Toolkit 6.5 y más adelante haré otro post con mis impresiones sobre esta excelente y además gratuita herramienta del kit de Solutions Accelerators de Microsoft.
Saludos.
Leyendo la sección Toolbox: New Products for IT Professionals de la edición de diciembre de TechNet Magazine, me encuentro con esta herramienta gratuita para extender la funcionalidad de SQL Server Management Studio.
La herramienta es hecha y soportada por Mladen Prajdić, MVP en SQL Server y que se autodenomina como desarrollador en Eslovenia.
Según TechNet Magazine, SSMS Tools Pack ayuda en la escritura de queries T-SQL mejores, más claros, estandarizados y optimizados, además de una manera más rápida, integrando un buen número de características directamente en la interfaz de SSMS directamente.
Yo ya lo estoy descargando y lo probaré en un par de proyectos que estoy adelantando ultimamente. Funciona para versiones de SSMS 2005, 2008, 2008 R2 y 2012, cuando salga, además de las ediciones Express de SQL Server. Creo que me será de bastante utilidad, sobre todo por las funcionalidades SQL Snippets para tener a la mano pequeños pedazos de código, aunque algo de esto ya viene en SQL Server 2012 y Execution Plan Analyzer para troubleshooting de queries, entre todos los que tiene.
Saludos.

Mientras revisaba algunos temas de PowerPivot, que en otro post les contaré en detalle, me encontré con este conjunto de herramientas. En esencia, Microsoft® SQL Server® 2008 R2 Feature Pack es una colección de paquetes independientes que proporcionan un valor adicional a Microsoft® SQL Server® 2008 R2.
Dentro de éstos tenemos PowerPivot, SQL Server Report Builder 3.0 para SQL Server 2008 R2, el Add-In de SQL Server Reporting Services 2008 R2 para SharePoint Server 2010, los libros en pantalla de SQL Server 2008 R2 y el analizador de prácticas recomendadas, entre otros. Para revisarlos todos visiten la página de descarga en inglés o en español, de acuerdo con sus necesidades y preferencias. Se ofrecen descargas por herramienta y no hay algo que consolide la descarga de todas.
¿Cómo? ¿Qué estás en SQL Server 2008 y no SQL Server 2008 R2? Tranquilidad… También hay Feature Pack para SQL Server 2008.
Saludos.
Mientras escucho la ochentera pero maravillosa Livin’ on a prayer de Bon Jovi, me encuentro con este slideshow que CIO.com armó a partir de un artículo en IT World sobre dichas herramientas. Algunas las he utilizado, particularmente RichCopy para mantener mis backups al día y sincronizados.
Una que complementa la número 10 es PAL, Performance Analysis of Logs, en Codeplex. Ambas herramientas, cuando las he usado, me arrojan una buena imagen sobre el comportamiento y el desempeño de un sistema, incluso para algunos workloads como bases de datos, por mencionar alguno.
La mayoría de herramientas las deben encontrar en la página de descargas de Microsoft. Solo tienen que buscarlas y ahí estarán.
Si alguno de ustedes tiene una o más que considera que faltó en este listado, deje un comentario con el porqué y con el link de la o las herramientas.
Saludos.