SQL Server, ideas y experiencias

Como transferir los roles de servidor entre instancias de SQL Server 2005 o 2008

por Jose Mariano Alvarez 13. agosto 2010

Recientemente escribí un post que habla de cómo transferir los Logins entre instancias de SQL Server utilizando scripts documentados en la base de conocimiento de Microsoft.  Pueden encontrar este post en:

Cómo transferir los inicios de sesión y las contraseñas entre instancias de SQL Server

Además de transferir la contraseña, normalmente queremos que el nuevo Login tenga el mismo SID para evitar que los usuarios queden huérfanos dentro de las bases de datos migradas o transferidas. Esto lo realizan los script  documentados en la base de conocimiento que hago referencia en el post.

Sin embargo uno de los lectores me hizo notar que no había explicado que los scripts generados por estos documentos no generan los scripts correspondientes a los roles (funciones) de servidor que tenían en la instancia de origen.  Solo el método 2 del documento en inglés que transfiere los Logins desde el SQL Server 2000 al SQL Server 2005/2008 tiene la posibilidad de generar el script para transferir los roles de servidor entre las instancias. Las otras versiones del script no lo hacen.

Si ya hemos creado los Login con el script de estos documentos de la base de conocimiento y debemos  además, transferir los roles de servidor a esta nueva instancia, y nuestro origen es un SQL Server 2005 o un SQL Server 2008, podemos usar el siguiente script para generar el script de transferencia:

-- Genera el script con los Roles para los Logins
Select 
 'exec master.dbo.sp_addsrvrolemember @loginame=''' 
 + sp.name + ''', @rolename='''+sp2.name +''';' 
from 
master.sys.server_principals as sp 
join master.sys.server_role_members as srm 
on sp.principal_id = srm.member_principal_id 
join master.sys.server_principals as sp2 
on srm.role_principal_id=sp2.principal_id
where sp.type in ('S','U','G')


-- Genera el script con la base de datos por default (omision) para los Logins
Select 
 'ALTER LOGIN ['+ sp.name 
 +'] WITH DEFAULT_DATABASE = [' 
 + sp.default_database_name +'];'
from 
master.sys.server_principals as sp 
where sp.type in ('S','U','G')
and sp.default_database_name is not null

Tags: , ,

Artículos

Cómo transferir los inicios de sesión y las contraseñas entre instancias de SQL Server

por Jose Mariano Alvarez 9. agosto 2010

Una de las tareas fundamentales a la hora de hacer las migraciones o mover las bases de datos de una instancia a otra es transferir los logins. Cuando queremos transferir un login entre instancias de SQL Server, además de transferir la contraseña, normalmente queremos que el nuevo login tenga el mismo SID para evitar que los usuarios queden huérfanos dentro de las bases de datos migradas o transferidas.

En la base de conocimiento de Microsoft existen dos artículos que describen los pasos y los detalles a tener en cuenta para realizar esta tarea. Se deberá seleccionar el que corresponda dependiendo de la versión de SQL Server de origen como de destino.

El método usado es el de crear dos procedimientos almacenados que luego al ser invocados generan una secuencias de comandos T-SQL que permiten crean los inicios de sesión con el mismo SID y la contraseñas original cuando se los ejecutan en la nueva instancia.

 

How to transfer logins and passwords between instances of SQL Server

En este artículo (en inglés) se describe cómo transferir los inicios de sesión y las contraseñas a un nuevo servidor. El método explicado en el documento se aplica cuando:

  • Transfiere inicios de sesión y contraseñas de SQL Server 7.0 a SQL Server 7.0.
  • Transfiere inicios de sesión y contraseñas de SQL Server 7.0 a SQL Server 2000.
  • Transfiere inicios de sesión y contraseñas de SQL Server 7.0 a SQL Server 2005.
  • Transfiere inicios de sesión y contraseñas entre servidores que ejecutan SQL Server 2000.
  • Transfiere inicios de sesión y contraseñas de SQL Server 2000 a SQL Server 2005.

http://support.microsoft.com/?scid=kb;en-us;246133&x=13&y=12

IMPORTANTE: Existen diferencias entre el artículo de la versión en inglés que contiene dos scripts diferentes, un script para transferir los logins entre versiones SQL Server 7.0/2000 y SQL Server 7.0/2000 y otro script para transferirlos entre SQL Server 7.0/2000 y SQL Server 2005/8.  En el mismo artículo en español solo está documentado el procedimiento entre versiones SQL Server 7.0/2000 a SQL Server 7.0/2000.

Cómo transferir inicios de sesión y contraseñas entre servidores SQL Server

Versión en español (incompleto)

http://support.microsoft.com/kb/246133/es

 

Cómo transferir los inicios de sesión y las contraseñas entre instancias de SQL Server 2005 y SQL Server 2008

Este artículo describe cómo transferir los inicios de sesión y las contraseñas entre instancias de Microsoft SQL Server 2005 y Microsoft SQL Server 2008.

http://support.microsoft.com/kb/918992/es

Tags: , ,

Documentos

Cifrado, Blackberry, Cloud Computing y Seguridad Nacional

por Jose Mariano Alvarez 3. agosto 2010

 

ClodComp Los algoritmos de cifrado y la seguridad nacional.

Hace unos años hubo una gran controversia acerca de la exportación de software y hardware que contenía algoritmos de cifrado “duros” debido a que los “enemigos” los podían usar para intercambiar información.

 

La controversia del AES y la seguridad nacional


Lo mismo ocurrió acerca de la selección del sucesor del DES como el algoritmo de cifrado, el cual iban a utilizar las agencias no militares y los contratistas del gobierno. La elección del AES como el algoritmo estándar de cifrado, una variación limitada en cuanto a sus prestaciones del algoritmo original Rijndael, fue anunciada por el Instituto Nacional de Estándares y Tecnología (NIST) como el estándar federal de procesamiento de la información. Esta controversia se basaba en el hecho de que se temía, de que los cambios introducidos al algoritmo ganador del concurso, permitían realizar un criptoanálisis a la información cifrada. Esto era algo que se sospechaba pero que oficialmente no se discutía, por temas de seguridad nacional.


Blackberry y la seguridad nacional


Recientemente dos países anunciaron restricciones a los servicios de e-mail y mensajería instantánea del Blackberry, utilizando como pretexto el que los servicios centralizan el manejo de los datos en servidores alojados en el extranjero. Esto puede ser verdad, pero sin embargo a veces puede haber sospechas de que en realidad son escusas que utilizan los gobiernos para prohibir la utilización de la tecnología por otros motivos, como por ejemplo los culturales, políticos o religiosos. Hay quienes dicen que la iniciativa más que buscar la protección de la seguridad nacional esconde un intento por controlar la información de la población.

Research In Motion (RIM), la creadora del Blackberry, hace que cierta información pase por sus servidores que están ubicados principalmente en Canadá. Si bien los datos viajan cifrados, el algoritmo usado no es conocido lo cual aumenta las sospechas.

Otro detalle no menor para los gobiernos es que puede alegarse que la información intercambiada constituye un peligro para la seguridad nacional, porque puede ser de terroristas y otros criminales y de esta forma puede ser intercambiada sin que puedan ser supervisadas por las autoridades.

Si bien las razones exactas del impedimento no están muy claras, el número de usuarios afectados podría ser mucho mayor si la represión se aplica también a extranjeros en viaje. Otro detalle no menor es que como la mayoría de los equipos pertenecen a empleados de áreas de las finanzas, y los bancos que los emplean dicen que están más preocupados por la seguridad de los datos frente a sus rivales que por la censura estatal.

El regulador de telecomunicaciones dice que el impedimento es el resultado del fracaso de que RIM se ajuste a las normas locales desde el año 2007. La prohibición se parece más un paso táctico para negociar con la empresa. En India pasó algo similar y alcanzaron un acuerdo.


Cloud Computing y seguridad nacional


La idea de Cloud Computing (informática en nube) ha ido ganando impulso en los últimos tiempos. La globalización ha llegado también a los servicios ofrecidos en internet. Sus promesas de reducción de costos y de mejora de la flexibilidad de TI han conseguido despertar el interés de las empresas. Pero el uso de modelos Cloud Computing también conlleva algunos riesgos relacionados con la conformidad, la disponibilidad y la integridad de los datos corporativos que deben superarse.

Debe tenerse en cuenta sobre todo que en última instancia, frente a las autoridades y clientes, el consumidor de los servicios es el responsable de mantener la confidencialidad, integridad y disponibilidad de los datos.

Esta nueva ola tecnológica trae también controversias de seguridad, que si bien son diferentes, en algunos aspectos pueden parecerse a lo que le está ocurriendo al Blackberry. El almacenamiento de la información fuera de las fronteras, o fuera del alcance de la justicia local, pero si al alcance de la justicia o medidas de los gobiernos extranjeros donde residen los Datacenters, pueden ser vistas como riesgos a la seguridad nacional.


Conclusión


Si no se elabora un acuerdo internacional en cuanto a la gestión global de la información, equivalente a lo que ocurre en el área de las transacciones comerciales con los acuerdos de la Organización Mundial de Comercio (OMC), esto puede retrasar el avance de la nube principalmente en países que no son económicamente “convenientes” para tener los Datacenters locales.

Tags: , ,

Artículos

Herramientas y enfoques para la actualización a SQL Server 2008

por Jose Mariano Alvarez 26. julio 2010


En mayo de 2010 Dmitry Artemov y Alexei Khalyako han publicado un documento (en inglés) que han escrito acerca de las herramientas y los posibles enfoques para la actualización a SQL Server 2008 y SQL Server 2008 R2 desde versiones anteriores.

Realizar una actualización suele ser un proyecto complejo y en ocasiones arriesgado. Si en dicho proceso de actualización tenemos problemas corremos el riesgo de que se pueda causar la pérdida de tiempo y dinero e inclusive de datos. Cualquiera que sea el problema  se puede crear una mala percepción tanto del producto como del futuro de las aplicaciones a medida que avanza la tecnología y surgen nuevas versiones del SQL Server.

Una actualización correcta por el contrario, puede proporcionar a la organización una moderna plataforma de base de datos, actualizada, más segura y con capacidades mejoradas tanto para el desarrollo como para el soporte a los sistemas en ambiente productivo.

Este documento reseña tanto los documentos disponibles como las herramientas que pueden ser utilizadas para ayudar a los administradores (DBA) y a los desarrolladores a lograr exitosamente y sobre todo sin mayores inconvenientes, la actualización desde bases de datos SQL Server 2000 o SQL Server 2005 a SQL Server 2008 (tanto R2 o SQL Server 2008).

En el documento se explica la utilización de una carga de trabajo de SQL Server capturada en el entorno de producción, y luego como esta carga de trabajo se puede ejecutar en las versiones antiguas y nuevas de SQL Server en un entorno de prueba para comparar el rendimiento y aislar los problemas de la migración. Entre las herramientas usadas para esta tarea están RML para SQL Server y el Upgrade Advisor.

Pueden descargar este document desde el sitio de Microsoft:

Database Upgrade to SQL Server 2008, Tools and Approaches

Tags: , , ,

Documentos

Relación entre el log de transacciones (Transaction Log) y la captura de datos modificados (Change Data Capture)

por Jose Mariano Alvarez 25. julio 2010

Pequeño aumento de I/O en el Log de Transacciones.

En primer lugar, debemos tener en cuenta que, existe un pequeño aumento del I/O en los archivos del Log de Transacciones si la captura de datos modificados o Change Data Capture (CDC)  está habilitado en la base de datos. Esto ocurre debido a que se deben leer los datos de los cambios desde estos archivos del log de transacciones para poder identificar los cambios e incorporarlos en las tablas de captura. Además cuando corre el proceso o job de limpieza, se eliminan registros de las tablas de captura relacionadas y el log de transacciones también debe ser actualizado para respetar las reglas de las transacciones de las bases de datos.

Consecuencias de la captura de datos modificados o Change Data Capture en la reutilización de las entradas en el log de transacciones.

Cuando usamos una base de datos, una de las cosas que debiéramos tomar en cuenta es el tamaño que va a tener nuestro  registro o log de transacciones (Transaction Log). Para el correcto control del tamaño de los archivos que lo componen, si el modelo de recuperación es full, se realizan periódicamente tareas administrativas como el backup (o copia de seguridad) del log de transacciones. Esta tarea permite que en condiciones normales el mismo no crezca sin control ya que al completar la copia se pueden reutilizar las entradas y no hace falta que siga creciendo. Otra de las alternativas usadas es el modelo de recuperación simple que marca las transacciones completadas y grabadas en los archivos de datos como reutilizables lo que minimiza el uso del mismo a expensas de tener más posibilidades de recuperar datos en caso de una falla.

Es importante señalar que la captura de datos modificados o Change Data Capture (CDC) funciona correctamente en todos los modelos de recuperación. Cuando el CDC está habilitado en los modelos de recuperación simple o bulk-logged, los cambios realizados por las operaciones que normalmente se registran mínimamente, pasan a ser totalmente registrados en el log de transacciones para permitir la captura de todos los datos modificados. Además, cuando usamos la Captura de Datos Modificados o Change Data Capture se producen cambios en cómo se marcan las entradas que pueden reutilizarse en el log de transacciones. 

Si vemos con más detalle lo que ocurre, veremos que  los registros del log de transacciones permanecen activos hasta que el CDC los ha procesado. Esto significa, que en entornos en los que hay una gran tasa de cambios o la latencia de captura es grande, cuando el CDC no procesa frecuentemente las entradas de log de transacciones,  se acumulan entradas no reutilizables en el archivo del log de transacciones y por lo tanto este debe crecer porque el espacio no se puede reutilizar . Esto puede ocurrir tanto en el modelo de recuperación simple como después de un backuo o copia de seguridad de log de transacciones en el modelo de recuperación full (completa).

Consecuencias del log de transacciones lleno

Cuando un disco donde está el registro de transacciones se llena, no se puede reducir el tamaño del archivo del log de transacciones usando el comando shrink, hasta que la Captura de Datos Modificados o Change Data Capture (CDC) ha procesado todas las transacciones involucradas.  El problema es que el CDC no puede procesar las transacciones cuando los discos donde está el log de transacciones está lleno (o no puede crecer), porque el CDC inserta registros en las tablas de captura y estas operaciones también deben registrarse en el LOG de transacciones.

Si el problema es el espacio en el disco, la forma más fácil de recuperarse de esta situación es añadir otro archivo al log de transacciones,al menos de manera temporal, en un disco diferente donde haya espacio.

Tags: ,

Artículos

Actualización acumulativa 9 CU9 del Service Pack 1 del SQL Server 2008

por Jose Mariano Alvarez 22. julio 2010

Microsoft ha liberado el 21 de Julio del 2010 la actualización acumulativa 9 del Service Pack 1 del SQL Server 2008 (CU9 o BUILD 10.00.2789.00). Esta actualización contiene varios parches entre los incluidos en el motor relacional, Analysis Services, Reporting Services y búsquedas de texto completo (FullText). Debido a que las compilaciones son acumulativas, cada nueva actualización contiene todas las mejoras anteriores incluidas en las actualizaciones que se han liberado desde el lanzamiento del Service Pack 1 del SQL Server 2008.

Es importante recordar que Microsoft ha "retirado" la rama de desarrollo RTM del SQL Server 2008, lo que significa que no habrá más actualizaciones acumulativas de esa rama de desarrollo, y que sólo proporcionará un soporte limitado y solución de problemas si se llama a soporte a clientes (CSS).  Por lo tanto es recomendable obtener y actualizar al menos al Service Pack 1.

NOTA: Siempre es recomendable que pruebe las actualizaciones antes de implementarlas en un entorno de producción.

En el SQL Server 2008 las actualizaciones son multilenguaje. Por lo tanto, sólo hay un paquete de actualización acumulativo para todos los idiomas. Además incluye todos los paquetes de actualización de todos los componentes que requieren ser actualizados, pero solo se instalarán los correspondientes a los componentes que ya están instalados en el sistema.

Para obtener más información, puede ver los siguientes artículos en la base de conocimiento de Microsoft:

The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
http://support.microsoft.com/kb/970365/en-us

Cumulative update package 9 for SQL Server 2008 Service Pack 1
http://support.microsoft.com/kb/2083921/en-us

Tags: , , , , ,

Actualizaciones

Kit de entrenamiento para desarrolladores. Actualización a SQL Server 2008 R2

por Jose Mariano Alvarez 16. julio 2010

SqlServer2008R2

El SQL Server 2008 R2 ofrece una impresionante gama de capacidades para los desarrolladores basadas en las innovaciones que empezaron a introducirse en el SQL Server 2008. El kit de entrenamiento para desarrolladores del SQL Server 2008 R2 está actualizado y es ideal para los que quieren entender cómo tomar ventaja de las mejoras introducidas tanto en el SQL Server 2008 como en el SQL Server 2008 R2. No solo contiene novedades sino que además tiene contenidos para los desarrolladores que son nuevos en SQL Server.

Dentro del material podemos encontrar como crear aplicaciones que aprovechan las características y capacidades de SQL Server 2008 y SQL Server 2008 R2, mediante 55 videos, 32 presentaciones, 39 demostraciones y 24 prácticas de laboratorio.   Además de las novedades contiene todo el contenido existente del Kit de capacitación de desarrollo de SQL Server 2008.

El kit está diseñado para los desarrolladores que construyen aplicaciones para la plataforma Microsoft como también para los especialistas técnicos y consultores.

Pueden ver más detalles y descargarlo desde:

http://www.microsoft.com/downloads/details.aspx?familyid=FFFAAD6A-0153-4D41-B289-A3ED1D637C0D&displaylang=en

NOTA: EL contenido esta en inglés

Tags: , , ,

Actualizaciones | Documentos

Powered by SQL Total Consulting


View Jose Mariano Alvarez's profile on LinkedIn

 Add to Technorati Favorites 

Calendar

<<  octubre 2017  >>
lumamijuvido
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

View posts in large calendar

Locations of visitors to this page

Widget Twitter not found.

Root element is missing.X


Valid XHTML 1.0 Transitional

Valid CSS!