Monday, April 26, 2010

Nuevas características en SQL Azure

A partir de hoy existen nuevas características en la Plataforma de SQL Azure (http://blogs.msdn.com/sqlazure/archive/2010/04/16/9997517.aspx):

  • MARS (Multiple Active Results Sets), lo cual simplifica el diseño de las aplicaciones y permite trabajar con múltiples conjuntos de datos
  • ALTER rename permite renombrar las bases de datos en la nube 
  • Application and Multi-server management mejoras en las Data-tier Applications lo cual que permite hacer el despliegue de base de datos en SQL Azure de forma más flexible desde SQL Server 2008 R2 y Visual Studio 2010

También puede empezar a probar las bases de 50GB en SQL Azure, para hacerlo envíe un correo a EngageSA@microsoft.com 

 

Saludos,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

SQL Azure Improvements

There are new improvements in the SQL Azure Platform (http://blogs.msdn.com/sqlazure/archive/2010/04/16/9997517.aspx):

  • MARS (Multiple Active Results Sets), which simplifies the application design process
  • ALTER rename process for symmetry in renaming databases
  • Application and Multi-server management for Data-tier Applications which further streamlines application design and enables deployments of database applications directly from SQL Server 2008 R2 and Visual Studio 2010 to SQL Azure for database deployment flexibility

Also you can take advantage of the new 50GB Databases en SQL Azure, you can become an early adopter of this new feature by sending an email to EngageSA@microsoft.com  then you must fill out a survey and nominate your application.

 

Regards,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

SQL Azure ahora implementa el Open Data Protocol

Ahora SQL Azure implementa el Open Data Protocol, el Open Data Protocol (OData) es un estándar emergente para consultar y actualizar datos a través de la web. El OData es un protocolo basado en REST que se enfoca en maximizar la interoperabilidad entre servicios de datos y clientes. Dentro de estos clientes se pueden citar varias plataformas tales como ASP.NET, PHP, y Java, así como Microsoft Excel y aplicaciones móbiles. Más información puede encontrarse en  www.odata.org

Si desea probar esta nueva característica se puede inscribir en https://www.sqlazurelabs.com

También en este blog http://oakleafblog.blogspot.com/2010/03/odataorgs-sql-azure-northwind-sample.html puede ver un ejemplo de utilizar ODATA con SQL Azure.

 

Saludos,

 

Saludos,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

SQL Azure implements Open Data Protocol

SQL Azure now implements the Open Data Protocol, the Open Data Protocol (OData) is an emerging standard for querying and updating data over the Web. OData is a REST-based protocol whose core focus is to maximize the interoperability between data services and clients that wish to access that data. It is thus being used to expose data from a variety of sources, from relational databases and file systems to content management systems and traditional websites. In addition, clients across many platforms, ranging from ASP.NET, PHP, and Java websites to Microsoft Excel and applications on mobile devices, are finding it easy to access those vast data stores through OData as well. Full information about OData can be found on its dedicated website. www.odata.org

You can subscribe to be an early tester of SQL Azure Open Data Protocol here https://www.sqlazurelabs.com

You can also read a full sample here http://oakleafblog.blogspot.com/2010/03/odataorgs-sql-azure-northwind-sample.html

Regards,

 

Saludos,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Friday, April 23, 2010

Microsoft Café SQL Azure

Esta es nuestra participación en el Episodio 3 de Microsoft Café, en el cual hablamos sobre SQL Azure.

 

 

Saludos,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Sharding de base de datos en SQL Azure

SQL Azure permite crear múltiples bases de datos de forma sencilla y rápida. Para poder aumentar la escalabilidad de las aplicaciones es necesario poder aumentar la capacidad de manejo de datos de forma casi lineal. Para poder lograr esto podemos recurir a la capacidad de creación dinámica de base de datos en SQL Azure y de esa forma poder distribuir los datos de una única base de datos en múltiples bases de datos, esta técnica es conocida como Database Sharding.

Existen diferentes técnicas para hacer Database Sharding entre estas están:

  • Particionamiento basado en rangos. En esta técnica se divide una única tabla en varios servidores, para esto se debe utilizar un algoritmo que permita dividir los datos de forma uniforme y predicible. El criterio para dividir debe procurar que la división de los datos sea balanceada, por ejemplo si se divide por estado entonces podría que un estado tenga más datos que otro y la división no será balanceada.
  • Particionamiento vertical. Esta técnica implica asignar o almacenar tablas grandes en base de datos distintas, por ejemplo, una BD tiene la tabla de clientes, otra BD tiene la tabla de órdenes y otra BD la tabla de imágenes. En esta técnica el problema surge si la tabla de clientes crece mucho, entonces en este caso deberemos utilizar particionamiento por rangos.
  • Particionamiento basados en llaves artificiales o hash. En este caso uno o más atributos o columnas de la tabla son utilizados en una función de hash que permite asignar una llave con base de la cual se hace la división de los datos. El único detalle a considerar con esta técnica es que tenemos que saber de antemano la cantidad de base de datos que deseamos crear ya que es un parámetro utilizado en la función de hash.
  • Pariticionamiento dinámico. Esta técnica también conocida como particionamiento por directorios implica la creación de una función del tipo ObtenerServidorDe, esto significa que en la capa de acceso a datos se llama a esta función para determinar en cual base de datos se encuentra el registro que deseamos obtener. Esta técnica es la más dinámica de todas puesto que podemos agregar o quitar bases de datos sin que se afecte al resto de la arquitectura de la aplicación.
  • Particionamiento aleatorio. Similar al particionamiento dinámico con la única diferencia de que utiliza algoritmos aleatorios para asignar un registro a una base de datos determinada.

Un ejemplo de pseudocódigo de particionamiento dinámico sería el siguiente:

 

string connectionString = ObtenerServidorDe(idOrden);

SqlConnection conn = new SqlConnection (connectionString);

conn.Open();

SqlCommand cmd = new SqlCommand("….”);

 

Algunas consideraciones al utilizar el Sharding son las siguientes:

 

  • Cómo manejar la integridad referencial. Debido a que no se soporta integridad referencial entre servidores, es necesario que la capa de acceso a datos realice las verificaciones de integridad referencial, aunque esto implica más código y tiempo de desarrollo, nos asegura la integridad de los datos.
  • Rebalanceo de particionamiento. Se puede dar el caso de que en primera instancia se utiliza un modelo de particionamiento pero después hay que cambiarlo, en este caso la técnica de particionamiento dinámico es la más factible, aunque es un punto único de fallo, lo más recomendado es utilizar un Azure Worker Role para implementar este tipo de particionamiento.
  • Consultas entre tablas relacionados. Al momento de utilizar sharding ya no será posible realizar consultas que unan tablas en distintas base de datos, para hacer esto se pueden utilizar tres técnicas: la primera implica que todas las consultas complejas deben eliminarse por consultas simples que accesan una única tabla y los joins se hacen a nivel lógico en la capa de acceso a datos, la segunda implica desnormalizar las tablas para que se puedan hacer consultas desde una sola tabla, la tercer técnica es utilizar tablas de consolidación. En las tablas de consolidación todas las tablas individuales están en una BD distinta, pero para aquellas consultas que necesitan hacer búsquedas sobre todos los registros, se crea una tabla resumen en otra bd que contine todos los registros de todos los shards, aunque esta técnica permite hacer búsquedas sobre todos los registros, implica moficar la capa de acceso a datos para que le de mantenimiento a las talbas individuales y las tablas consolidadas lo cual aumenta la complejidad de la aplicación.

 

Saludos,

Ing. Eduardo Castro Martinez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

Error Unable to use SQL Server because ASP.NET version 2.0 Session State is not installed on the SQL server

If you are configuring a SQL Server to be used as an Session State for ASP.NET you need to configure the proper security to allow the application pool to access the SQL Server, you can use the following script to configure the security, remember to configure the proper identity (the one that is configured in the application pool)

 

use ASPState

go

grant EXECUTE on GetHashCode to [ApplicationPoolIdentity]

grant EXECUTE on GetMajorVersion to [ApplicationPoolIdentity]

grant EXECUTE on TempGetAppID to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem2 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem3 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive2 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive3 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetVersion to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertStateItemLong to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertStateItemShort to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertUninitializedItem to [ApplicationPoolIdentity]

grant EXECUTE on TempReleaseStateItemExclusive to [ApplicationPoolIdentity]

grant EXECUTE on TempRemoveStateItem to [ApplicationPoolIdentity]

grant EXECUTE on TempResetTimeout to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemLong to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemLongNullShort to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemShort to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemShortNullLong to [ApplicationPoolIdentity]

go

 

<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" stateNetworkTimeout="10" sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI" sqlCommandTimeout="30" customProvider="" cookieless="UseCookies" cookieName="ASP.NET_SessionId" timeout="20" allowCustomSqlDatabase="false" regenerateExpiredSessionId="true" partitionResolverType="" useHostingIdentity="true" > <providers> <clear /> </providers> </sessionState>

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/Note: Cross posted from Eduardo Castro.

Permalink

Error cuando utiliza SQL como repositorio de Session State de ASP.NET

Si ha configurado SQL Server como repositorio para las sesiones de ASP.NET puede que se le despliegue este error Unable to use SQL Server because ASP.NET version 2.0 Session State is not installed on the SQL server, esto se debe a que la cuenta con la cual está ejecutando el Application Pool del sitio en ASP.NET no tiene derechos sobre la base de datos en SQL Server, para configurarlo ejecute las siguientes instrucciones, recuerde cambiar la identidad del usuario por el usuario que tiene configurado en su IIS.

 

use ASPState

go

grant EXECUTE on GetHashCode to [ApplicationPoolIdentity]

grant EXECUTE on GetMajorVersion to [ApplicationPoolIdentity]

grant EXECUTE on TempGetAppID to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem2 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItem3 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive2 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetStateItemExclusive3 to [ApplicationPoolIdentity]

grant EXECUTE on TempGetVersion to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertStateItemLong to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertStateItemShort to [ApplicationPoolIdentity]

grant EXECUTE on TempInsertUninitializedItem to [ApplicationPoolIdentity]

grant EXECUTE on TempReleaseStateItemExclusive to [ApplicationPoolIdentity]

grant EXECUTE on TempRemoveStateItem to [ApplicationPoolIdentity]

grant EXECUTE on TempResetTimeout to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemLong to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemLongNullShort to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemShort to [ApplicationPoolIdentity]

grant EXECUTE on TempUpdateStateItemShortNullLong to [ApplicationPoolIdentity]

go

 

<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" stateNetworkTimeout="10" sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI" sqlCommandTimeout="30" customProvider="" cookieless="UseCookies" cookieName="ASP.NET_SessionId" timeout="20" allowCustomSqlDatabase="false" regenerateExpiredSessionId="true" partitionResolverType="" useHostingIdentity="true" > <providers> <clear /> </providers> </sessionState>

 

Saludos,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

Tuesday, April 20, 2010

Base de Datos SQL Server DB en la nube con SQL Data Sync

Si desea sincronizar su base de datos de SQL Server local con una base de datos en la nube de SQL Azure, puede empezar utilizando el SQL Data Sync, el cual le permite implementar una sincronización de datos bidreccional. Primero baje e instale el Microsoft Synch Framework 2.0 Software Development Kit (SDK) desde esta dirección

http://www.microsoft.com/downloads/details.aspx?FamilyID=89adbb1e-53ff-41b5-ba17-8e43a2e66254&displaylang=en

Después hay que bajar e instalar el SQL Data Sync CTP desde http://www.microsoft.com/downloads/details.aspx?FamilyID=bce4ad61-5b76-4101-8311-e928e7250b9a&displaylang=en

Una vez que haya instalado estos utilitarios podrá ejecutar el SQL Data Sync Wizard tal y como se muestra a continuación:

 

1. Primero necesita la dirección y contraseña de su servidor en SQL Azure, también necesita especificar el nombre de la base de datos en la cual usted desea replicar los datos, en este caso es AdventureWorks que está creada en SQL Azure. Si necesita información sobre el nombre del servidor puede acceder el portal de administración de Azure en esta dirección http://www.microsoft.com/windowsazure/sqlazure/ recuerde que debe configurar el firewall en el portal de SQL Azure para permitir el tráfico desde su servidor local hacia la nube.

image

2. Ahora debe especificar la información de la base de datos local

image

3. En el siguiente paso se debe especificar las tablas que van sincronizarse, además debe establecer la forma en que se van a administrar los conflictos.

image

4. El siguiente paso es especificar el orden en que se replican las tablas y finalmente se muestra la pantalla resumen:

image

5. Ahora puede dar click en Process para ejecutar la sincronización.

 

Saludos,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

SQL Server DB to the Cloud with SQL Data Sync

If you want to syncronize your local SQL Server Database with a Database in the SQL Azure Cloud, you can start using the SQL Data Sync that allows you to implement bi-directional data synchronization. First you need to download the Microsoft Synch Framework 2.0 Software Development Kit (SDK) from this address

http://www.microsoft.com/downloads/details.aspx?FamilyID=89adbb1e-53ff-41b5-ba17-8e43a2e66254&displaylang=en

Then you need to download the actual SQL Data Sync CTP from http://www.microsoft.com/downloads/details.aspx?FamilyID=bce4ad61-5b76-4101-8311-e928e7250b9a&displaylang=en

One you have installed both applications you will be able to run the SQL Data Sync Wizard as shown in the following steps:

 

1. First you need your SQL Azure server Address and Password, also you need to specify the name of the database that you want to replicate the data to, in this case is AdventureWorks that resides in SQL Azure. If you need you SQL Azure information you can access your account in the SQL Azure Portal in this address http://www.microsoft.com/windowsazure/sqlazure/ remenber that you need to configure the firewall in the SQL Azure Portal Page to allow the traffic beetween you local server and the cloud.

image

2. Next you need to specify you local database information

image

3. In the next step you will need to specify which tables will be syncronized, review the Conflict Resolution Policy, this allows you to specify how the the conflicts will be handled.

image

4. After that you can specify the order of the tables, and in the final step the summary will be shown:

image

5. Now you can click on Process to run the syncronization.

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Note: Cross posted from Eduardo Castro.

Permalink

Monday, April 19, 2010

Crear una imagen de SysPrep que incluya SQL Server 2008 R2

Con la introducción de SQL Server 2008 R2 Microsoft agregó la posibilidad de crear imágenes con Sysprep que incluyan una instalación de SQL Server 2008 R2, de esta forma ahora puede tener una imágen de estación de trabajo o servidor que ya posea SQL Server instalado. Para crear la imagen debe copiar los archivos de instalación al disco local de la máquina y cuando ejecute el instalador verá una nueva opción, tal y como se muestra a continuación:

image

Ahora continúe con el asistente de instalación y después ejecute la herramienta sysprep. Cuando ya se haya realizado la clonación del servidor o máquinas y ejecutado el Sysprep Mini Setup, usted verá una nueva opción para finalizar la instalación de este nuevo SQL clonado:

 

image

Existen algunas limitaciones, tal y como lo anota peteras (http://blogs.msdn.com/petersad/archive/2009/12/17/sql-server-2008-r2-sysprep-step-by-step.aspx) :

 

  1. Solo la base de datos y reporting services soportan sysprep
  2. No se puede utilizar en escenarios que incluyan cluster
  3. No hay soporte para IA64 o WOW64
  4. Los discos de instalación deben estar disponibles cuando se prepara y termina de configurar la imagen. Si va a instalar SQL Express debe extraer los archivos de instalación al disco local

 

Más información la pueden encontrar en  http://msdn.microsoft.com/en-us/library/ee210754(SQL.105).aspx

 

Saludos,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Creating a SQL Server 2008 SysPrep Image

Starting with SQL Server 2008 R2 Microsoft has added the SysPrep feature to the SQL Server setup, in this way you can now have a server or workstation image with SQL already installed, to create the image you must copy the setup files into the local disk, then when you run the setup you will see a new option among the already known ones:

image

What you need to do now is follow the setup wizard and at the end execute the sysprep utility. After you have cloned you machine and ran the sysprep mini setup you will see an option to finish the SQL Server configuration, as shown in the following image:

 

image

There are some limitations as peteras pointed (http://blogs.msdn.com/petersad/archive/2009/12/17/sql-server-2008-r2-sysprep-step-by-step.aspx) out on his blog:

 

  1. Only the database engine and reporting services supports Sysprep
  2. Cannot be used for clustering scenarios
  3. Not supported on IA64 system or supported in WOW64
  4. The installation media need to be available when preparing an image and configuring the image. When Sysprepping a SQL Server Express, you need to extract the files to the local machine before preparing the image.

 

More detailed step can be found here http://msdn.microsoft.com/en-us/library/ee210754(SQL.105).aspx

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Tuesday, April 13, 2010

Evento Cloud Computing Bases de Datos y Aplicaciones

El 10 de abril realizamos el Evento Cloud Computing y Aplicaciones, en esta charla se trataron temas sobre SQL Server Azure y Windows Azure, la presentación la puede descargar desde la siguiente dirección http://comunidadwindows.org/files/folders/20100410/default.aspx

 

 

Error Could not load package "XXXXX" because of error 0xC00160AA. Description: Connect to SSIS Service on machine "XXXXX" failed: The RPC server is unavailableConnect to SSIS Service on machine “XXXXX" failed: The RPC server is unavailable

If you have two servers one running SQL Server Agent (SERVER A) and the other Integration Services (SERVER B) and you want to be able to run the SSIS packages on SERVER B from the Agent on SERVER A, you need to properly configure the firewall on SERVER B, if you don’t do it, you will run into the following error:

 

Error Could not load package "XXXXX" because of error 0xC00160AA.  Description: Connect to SSIS Service on machine "XXXXX" failed:   The RPC server is unavailableConnect to SSIS Service on machine “XXXXX" failed: The RPC server is unavailable

 

To configure the firewall follow these steps:

  • Allow the C:\Program Files\Microsoft SQL Server\100\DTS\Binn\MsDtsSrvr.exe to go though the firewall, you can do it with an exeption in Windows 2003 or an Access Rule in Windows 2008.
  • Allow the traffic for TCP port 135

 

**********************************************************************************

Si tienes que ejecutar paquetes que están en un servidor remoto tienes que asegurarte que el firewall del servidor remoto está correctamente configurado, para eso debes permitir trafico por el puerto TCP 135 y crear una excepción para el archivo C:\Program Files\Microsoft SQL Server\100\DTS\Binn\MsDtsSrvr.exe

 

 

Saludos,

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Error SocketException getaddrinfo no data of the requested type was found when creating a new Report Server Database

When you are trying to create a new database for your Report Server through the Reporting Services Configuration Manager and the database server is not local but a remote server and in the remote server you have changed the default port and the SQL Browser is not running, you will run in the following error SocketException getaddrinfo no data of the requested type was found , and the configuration tool will show the following error in the Generating rights scripts section.

 

image

 

 

When you click on the Error link, you will saw the following detail:

System.Net.Sockets.SocketException: No such host is known
   at System.Net.Dns.GetAddrInfo(String name)
   at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6)
   at System.Net.Dns.GetHostEntry(String hostNameOrAddress)
   at ReportServicesConfigUI.RSDatabase.IsLocalDbServer(String dbServer)
   at ReportServicesConfigUI.RSDatabase.GrantRSConnectionRights()
   at ReportServicesConfigUI.RSDatabase.CreateNewDatabase()

This happens because the configuration tools is trying to resolve the server name you have specified, for example if your remote server is called DBServerA and you have created an alias whose name is DB you will run into this error. To solve it, you need to create an alias with the same name of the remote server and you have to specify the remote port, as shown in the following screenshot:

 

image

If you are running in a 64 bits machines you will also have to create the alias for the 32 bits clients, I had to create the alias twice for this in order to work.

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/

Monday, April 05, 2010

Need to wait to execute a TSQL in SQL Server?

If you are running tests on a SQL Server database using scripts, usually you may have to create a batch of TSQL and they must be executed in a certain order and in a certain time, to achive this you can use the WAITFOR DELAY statament, it allows your script to wait N seconds before being executed. In the following script we wait 30 seconds before executing the getdate command.

 

WAITFOR DELAY '00:00:30' ---- 30 Seconds Delay
SELECT GETDATE() CurrentTime

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/




SQL Distributed Transaction fired by a COM+ not working

If you have some COM+ object that connects to SQL Server and opens a transaction, sometimes it stops working at all, you may be facing a COM+ Corrupted Database, to “repair” this database you must follow the following steps:

 

  1. Find the file %WinDir%\System32\Clbcatq.dll and rename it to ~Clbcatq.dll
  2. Reboot the computer in Recovery Mode.
  3. Open the Registry and delete the key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3.
  4. Find in the %WinDir% directory and look for a subdirectory named Registration. Delete Registration folder.
  5. Reboot the machine normally.
  6. Open Control Panel | Add/Remove Programs | Add/Remove Windows Components.
  7. Click Next to reinstall COM+.
  8. Now your transactions should work

 

Regards,

 

Ing. Eduardo Castro Martínez, PhD – Microsoft SQL Server MVP

http://mswindowscr.org

http://comunidadwindows.org

Costa Rica

Technorati Tags: SQL Server

LiveJournal Tags: SQL Server

del.icio.us Tags: SQL Server

http://ecastrom.blogspot.com

http://ecastrom.wordpress.com

http://ecastrom.spaces.live.com

http://universosql.blogspot.com

http://todosobresql.blogspot.com

http://todosobresqlserver.wordpress.com

http://mswindowscr.org/blogs/sql/default.aspx

http://citicr.org/blogs/noticias/default.aspx

http://sqlserverpedia.blogspot.com/




Note: Cross posted from Eduardo Castro.

Permalink

SQL Server 2016 Stretch Databases

El SQL Server Stretch Database permite que los datos históricos o de bitácoras puedan ser movidos hacia Azure, específicamente permite mover...