Posts

Showing posts from April, 2009

Paquete de Integration Services en x64

Si ejecutan en x64 y reciben este error The 'Microsoft.ACE.OLEDB.12.0' provider is not registered error Para solucionar este error lo que tienen que hacer es lo siguiente -Abren el paquete en BIDS (Business Intelligence Developement Studio) -Hacen click en el Configuration Manager -En la opción Active Solution Platform eligen New -En tipo de plataforma eligen x86 -Cuando compilan asegúrense de que están escogiendo x86   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Cómo transferir una BD en SQL 2008 hacia SQL 2005

Image
Si se desea transferir una base de datos que está en SQL Server 2008 hacia SQL Server 2005 no existe una forma fácil y natural de hacerlo, por ejemplo no se puede restaurar un respaldo de SQL 2008 en SQL 2005. La opción que podemos seguir es la que sugiere Chris Goddard. La idea de Chris consiste en utilizar el Managemente Studio, en esta herramienta se elige el Wizard de Generación de Scripts y se le indica la versión de SQL Server 2005 y que incluya los datos. Puede ver los detalles en esta dirección http://www.devx.com/dbzone/Article/40531         Se debe tener cuidado con esta opción ya que si la BD tiene muchos datos se va requerir mucho espacio, si los datos son sensitivos hay que tomar en cuenta que estos no están encriptados. En el script generado se debe comentar la siguiente línea: --EXEC sys.sp_db_vardecimal_storage_format N'Northwind', N'ON' --GO Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows

SQL Server Working Set Trim Problems

En un artículo anterior se mención los problemas de rendimiento que se pueden presentar en SQL Server debido al manejo de memoria, o más bien cuando el sistema operativo no le asigna toda la memoria a SQL Server, para resolver estos problemas el CSS Team tiene una serie de reocmendaciones que incluyo a continuación: Windows 2003 We can use a combination of memory sizing and locked pages to avoid the issue in the vast majority of cases.   What you want to do is monitor your memory counter a peak load.    Doing this with locked pages disabled will let you see all the counters in one place.   Using the values captured you can establish the max and min server memory settings of SQL Server to accommodate the peak work load.   Once you have these targets you can enabled locked pages again. Take for example a 64GB machine and when run peak load the OS and other applications require 10GB.   You might configures SQL Server max server memory around 53GB (bit of overhead for thread stacks a

SQL Server y Locked Pages

Microsoft ha anunciado que la versión estándar de SQL Server va a soportar Locked Pages http://blogs.msdn.com/psssql/archive/2009/04/24/sql-server-locked-pages-and-standard-sku.aspx Esta es una característica muy útil que estaba únicamente presente en la versión Enterprise, cuando se presentan problemas de rendimiento relacionados con el uso de memoria y la paginación. En inglés este problemas es conocido como "working set trim problems" unas formas de evitar este problema las pueden consultar en la siguiente dirección http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Evento Windows Vista Adoption Day

Image
Registrate en http://windowsvistaadoptionday.eventbrite.com/ Deseamos invitarlo a la sesión que tendremos sobre Windows Vista este mes de mayo. En esta sesión veremos informacion acerca de las ventajas de Windows Vista desde la perspectiva de administración de TI. Al final de la actividad entre los presentes se rifarán los siguientes premios: una notebook Toshiba con capacidad hasta 4GB de RAM, doble procesador, DVD writer, multilector de tarjeta, wireless.  Además un disco duro externo de 500GB, una impresora multifuncional EPSON (impresora, fax, fotocopiadora y escaner), licencias de Windows y más. Cada asistente recibirá un DVD de la Comunidad Windows con recursos útiles en la administración de la infraestructura de TI. El evento tiene un costo de $20, sin embargo hemos llegado a un acuerdo con los patrocinadores y contamos con una cantidad limitada de cupones de descuento para aquellas personas registradas como miembros de la comunidad, el cupón de descuento es de un 100%

Cómo listar los trabajos (jobs) fallidos en SQL Server

Muchas veces es necesario determinar cuáles han sido los jobs cuya ejecución ha fallado en SQL Server, para hacer esto se pueden utilizar los scripts creados por Drew Salem, los cuales incluyo a continuación:   USE [DBA_Admin] GO /****** Part 3a: The Failed Jobs Report Object Creation: Table Failed_Jobs Purpose: To create the table Failed_Jobs Date : 01/02/2009 Author: Drew Salem - www.thebuddingdba.com For : SQLServerCentral.com ******/ CREATE TABLE [dbo].[Failed_Jobs] ( [originating_server] [ varchar ](255) NULL , [job_name] [ varchar ](255) NULL , [job_description] [ varchar ](1023) NULL , [last_outcome_message] [ varchar ](255) NULL , [last_run_date] [ varchar ](63) NULL , [job_id] [ varchar ](255) NULL ) Después de creada esa tabla se debe crear  el procedimiento almancenado para llenar la tabla anterior: USE [DBA_Admin] GO /****** Part 3a: The Failed Jobs Report Object Creation: The usp_GetFailedJob store

Error en Reporting Server en SQL Server 2008

Cuando se configurar Reporting Services un website que no es default, o sea diferente al 80. Se puede presentar el siguiente error:   " An error occurred while parsing the configuration file. The ReportServerVirtualDirectory element is missing. "   Para resolverlo tienes que abrir el archivo de configuración RSWebApplication.config el cual se encuentra en el directorio virtual de Reports o en la siguiente ruta C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager. Tienes que buscar la siguiente entrada.   < UI > < ReportServerUrl ></ ReportServerUrl > < ReportServerVirtualDirectory > </ ReportServerVirtualDirectory > < ReportBuilderTrustLevel > FullTrust </ ReportBuilderTrustLevel > </ UI > En la entrada ReportServerVirtualDirectory debes agregar el nombre del directorio virtual del report server.   < UI > < ReportServerUrl ></ R

Consideraciones de SQL Server para instalar DPM 2007

Si se desea instalar el Data Protection Manager 2007 utilizando un repositorio remoto es necesario ejecutar el siguiente utilitario, de lo contrario la instalación podría generar errores. sqlprep.msi Este archivo lo pueden encontrar en el DVD de instalación del DPM en el directorio \DPM2007\MSI   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Consideraciones de SQL Server para instalar DPM 2007

Si se desea instalar el Data Protection Manager 2007 utilizando un repositorio remoto es necesario ejecutar el siguiente utilitario, de lo contrario la instalación podría generar errores. sqlprep.msi Este archivo lo pueden encontrar en el DVD de instalación del DPM en el directorio \DPM2007\MSI   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Monitorear el desempeño de SQL Server - 03

La optimización de las consultas puede influir en el desempeño del servidor, debido a que esta tarea consume mucho CPU, con el siguiente script se puede tener una idea global sobre cómo la optimización de consultas influye en el uso de CPU.   select * from sys.dm_exec_query_optimizer_info   Más información en http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Monitorear el desempeño de SQL Server - 02

Con el siguiente query se puede determinar los batches en cache o procedimientos que están utilizando más CPU. El estatuto agrega todos las consultas que estpa en el mismo plan_handle. select top 50 sum (qs.total_worker_time) as total_cpu_time, sum (qs.execution_count) as total_execution_count, count (*) as number_of_statements,qs.plan_handle from sys.dm_exec_query_stats qs group by qs.plan_handle order by sum (qs.total_worker_time) desc Más información en http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Monitorear el Desempeño de SQL Server - 01

Con el siguiente query se puede determinar si existen tareas que están esperando por CPU para ser ejecutadas, un número alto de runnable tasks es alto indica un cuello de botella en el CPU y debe ser investigado. select scheduler_id,current_tasks_count,runnable_tasks_count from sys.dm_os_schedulers where scheduler_id < 255 Más información en http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Aspectos clave para determinar problemas de desempeño en SQL Server

Cuando se está tratando de mejorar el desempeño de una consulta en SQL Server se deben analizar los siguientes aspectos:   - Elementos que son accedidos por la consulta, entre ellos: objectos accesados (tablas, columnas), bloqueos que se presentan durante la ejecución. Por ejemplo, las transacciones provocan que se bloqueen recursos tales como tablas.   - Tiempo de ejecución de las consultas, por ejemplo si la consulta dura mucho entonces es posible que genere más bloqueos, los cuales generan problemas de concurrencia.   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Desempeño en SQL 2008: herramientas disponibles

Muchas veces se deben elegir las herramientas adecuadas para monitorear el desempeño de SQL Server, entre ellas existen algunas de Windows y otras propias de SQL Server. Por ejemplo, el plan de ejecución sirve para determinar el uso de los índices en una consulta en particular. Sin embargo, es necesario utilizar otras herramientas de monitoreo con el fin de determinar el problema de desempeño, entre esas herramientas están: SQL Server Profiler, Performance Monitor y el Activity Monitor. Un heurístico para la selección de la herramienta son las siguientes: - SQL Server Profiler, se utiliza para monitorear y solucionar problemas relacionados con Transact-SQL y aquellos relacionados con las aplicaciones. - El Performance Monitor ayuda a determinar problemas de desempeño de hardware - El Activity Monitor son útiles para obtener información sobre las conexiones de los usuarios en el servidor y los bloqueos existentes.   Saludos, Eduardo Castro – Microsoft SQL Server http://c

El futuro de SQL Server

  Dentro de los planes futuros de SQL Server se perfila lo siguiente:   Kilimanjaro, programado para la segunda mitad del 2010, proveerá nuevas herramientas de BI en SQL basado en un servicio autoadministrado de inteligencia de negocios. Madison, que saldrá al mismo tiempo que Kilimanjaro. Integra la tecnología de Data Allegro dentro de SQL para lograr alta escalabilidad en los data warehouses. SQL Server Services, son el pilar de la Azure Platform de cloud computing.   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

SQL Server Consolidation at Microsoft

Image
Hace poco Microsoft publicó un excelente artículo sobre las técnicas de consolidación de SQL Server aplicadas en Microsost, pueden bajar ese documento en esta dirección http://download.microsoft.com/download/3/0/6/3068EC2F-FA39-4879-BD50-6F67843BFC92/SQLServerConsolidationTWP.doc La presentación PPT y webcast puede ser accedidos en esta otra dirección http://technet.microsoft.com/en-us/library/dd557540.aspx En este paper se presenta el SQL Utility utilizado por Microsoft para proveer instancias de SQL Server utilizando virtualización con Hyper-V con el fin de utilizar mejor los recursos. Tal y como se muestra en la siguiente imagen.   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Error instalando SQL Server 2008 SP1

Cuando se instala SQL Server 2008 SP1 en una máquina que tiene instalado Visual Studio 2008, se puede presentar el siguiente problema:   Rule "Previous releases of Microsoft Visual Studio 2008" failed. A previous release of Microsoft Visual Studio 2008 is installed on this computer. Upgrade Microsoft Visual Studio 2008 to the SP1 before installing SQL Server 2008.   Esto se debe a ciertas incompatibilidades que existen entre los productos, para arreglarlo hay que desintalar cualquier versión de SQL Server que se tenga instalado, instalar el SP1 de VS2008 y volver a instalar SQL Server. Para mayores detalles y escenarios pueden consultar el siguiente artículo http://support.microsoft.com/kb/956139   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

SQL Server 2008 SP1

El primer service pack para SQL 2008 ya está disponible, puedes bajarlo desde la siguiente dirección:  http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19 Este service pack contiene los Roll-up of Cumulative Update 1 al 3, los Quick Fix Engineering (QFE) updates y demás errores reportados, también brinda las siguientes ventajas: - Se puede realizar slipstream, para detalles ver http://blogs.msdn.com/petersad/archive/2009/02/25/sql-server-2008-creating-a-merged-slisptream-drop.aspx - Permite desinstalar el SP sin necesidad de desinstalar la instancia completa.   Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica   Technorati Tags: SQL Server   LiveJournal Tags: SQL Server del.icio.us Tags: SQL Server

Cambiar el default collation de SQL Server

Si por alguna razón durante la instalación de SQL Server se especificó un collation que no era el adecuado, se puede ejecutar el siguiente comando para cambiarlo, el único requisito es que no existan BD de usuario existentes en la instancia de SQL Server. setup.exe /qb INSTANCENAME=nombreDeLaInstancia REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=Contrasena SQLCOLLATION=SQL_Latin1_General_CP1_CS_AS   Saludos,   Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica   Technorati Tags: SQL Server   LiveJournal Tags: SQL Server

Configurar SQL Server con MSDTC y Firewall

Image
Cuando se tienen transacciones distribuidas en SQL Server con Component Services es necesario configurar el Firewall para que las transacciones puedan ser enlistadas en SQL Server.     Saludos, Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org LiveJournal Tags: SQL Server Technorati Tags: SQL Server

Configurar SQL Server y MSDTC

Image
Para configurar transcacciones distribuidas en SQL y Enterprise Services se tienen que seguir los siguientes pasos: - En el MSDTC hay que poner la configuración de autentication en No Requerida - El Servicio de SQL Server tienen que iniciarse despues que se ha iniciado el MSDTC - Hay que ir al Firewall de Windows habilitarlo, despues deshahbilitarlo y crear dos excepcones: una para el programa c:\windows\system32\msdtc.exe y otra para el puerto 135 - Esto se tiene que hacer tanto en la maquina donde está corriendo el cliente, por ejemplo el IIS tanto como en el SQL Server El MSDTC tiene que estar configurado asi tanto en el server como en el cliente   Saludos,   Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica Technorati Tags: SQL Server   LiveJournal Tags: SQL Server

Oferta de Red Gate

La empresa RedGate está distribuyendo gratuitamente el libro Mastering SQL Server Profiler, lo pueden bajar de la siguiente dirección: http://www.red-gate.com/products/SQL_Response/offers/mastering_sql_profiler_ebook.htm?utm_source=ssc&utm_medium=email&utm_content=profiler20090413&utm_campaign=sqlresponse Revisé el libro y está excelente, lo recomiendo!   Saludos, Eduardo Castro - Microsoft SQL Server Costa Rica http://comunidadwindows.org Technorati Tags: SQL Server

Determinar el uso de los índices en SQL Server

Muchas veces se definen índices en las base de datos y estos no son utilizados, entonces más bien generan overhead debido a que hay que darles mantenimiento si deseas saber cuáles índices se están utilizando o cuales no, puedes utilizar la siguiente consulta(*):   USE AdventureWorks; go SELECT o.name Object_Name,        SCHEMA_NAME(o.schema_id) Schema_name,        i.name Index_name,        i.Type_Desc,        s.user_seeks,        s.user_scans,        s.user_lookups,        s.user_updates  FROM sys.objects AS o      JOIN sys.indexes AS i ON o.object_id = i.object_id      JOIN   sys.dm_db_index_usage_stats AS s    ON i.object_id = s.object_id     AND i.index_id = s.index_id WHERE  o.type = 'u' -- Clustered and Non-Clustered indexes   AND i.type IN (1, 2) -- Indexes that have been updated by not used   AND(s.user_seeks >= 0 or s.user_scans >= 0 or s.user_lookups >= 0 ); Las columnas user_seeks, users_scans y

Herramienta de diagnóstico de SQL Server

He bajado y puesto a prueba la herramienta SQL Diagnostic Manager de Idera ( http://www.idera.com/Content/Show17.aspx ) la cual es una herramienta que permite idenficar de forma proactiva posibles problemas de rendimiento en los servidores SQL Server, esta herramienta identifica de forma automática problemas tales como procedimientos almacenados lentos, long running queries, consultas más frecuentes, fragementación de índices y tablas, entre otros. Si deseas puedes probarlo tú mismo y dar tu opinión.   Saludos,   Eduardo Castro – Microsoft SQL Server http://comunidadwindows.org Costa Rica   Technorati Tags: SQL Server   LiveJournal Tags: SQL Server

Configuración de paralelismo en SQL Server

Uno de los parámetros que usualmente se modifica en SQL Server es el MAXDOP o Maximum Degree of Paralelism, este indica a SQL Server la cantidad de máxima de CPUs que pueden utilizarse en una tarea. Por ejemplo si una consulta puede dividirse en varios subconsultas entonces se puede asignar un CPU distinto a cada una de estas consultas. Según Rod College* en un sistema OLTP con muchas transacciones cortas se necesitan muchos CPUs que atiendan muchas tareas de usuarios de forma simultánea, lo contrario a un sistema OLAP donde se requiere que múltiples CPUs atiendan a una única consulta que se puede ser dividida en muchas subconsultas pequeñas. Por defecto MAXDOP es certo, o sea, que SQL Server decide la cantidad de procesadores a utilizar, puede ser 1 entonces se deshabilita el paralelismo o un número fijo que determine la cantidad máxima de CPUs a utilizar. Un heurístico utilizado es que en sistemas OLTP el valor de MAXDOP debe ser 8 aunque el servidor tenga más procesadores ya que

SQL Server Entendiendo Hyper-V

Image
Para ejecutar SQL Server en Hyper-V primero hay que entender Hyper-V, existe un blog que nos explica esto y es de Virtual PC Guy, pueden consultarlo en esta dirección http://blogs.msdn.com/virtual_pc_guy/archive/2008/01/08/understanding-networking-with-hyper-v.aspx   Saludos, Eduardo Castro - Microsoft SQL Server http://comunidadwindows.org   Technorati Tags: SQL Server   With Hyper-V the world of networking is quite different than it was with Virtual Server. First to set the scene, with Windows Server 2008 installed on a system with one network adapter you will see this under Network Connections: And your system is operating like this: Once you install Hyper-V and create a virtual network your system now operates like this: As you can see the parent partition (host operating system in Virtual Server lingo) is now using a virtual network adapter to connect to the physical network.  If you look at network connections on the parent you will now see the