The SQL Network Interface library was unable to register SPN.
Problem
In the SQL Server error log you got the following message:
The SQL Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service. Error: 0x2098, state: 15. Failure to register an SPN may cause integrated authentication to fall back to NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies.
To understand the error you can transcribe the error message 0x2098 in a more readable.
|
ERROR_DS_INSUFF_ACCESS_RIGHTS
8344 (0x2098) |
Insufficient access rights to perform the operation. |
This error message indicates that the service account SQL server does not have sufficient rights to register the SPN.
Cause
SPNs are used by the Kerberos authentication protocol. If the account of the proceeding is known, the Kerberos authentication can be used to provide mutual authentication by the client and server. If the account of the proceedings is not known, NTLM authentication, which provides only authentication of the client by the server is used.
If you run SQL Server under the LocalSystem account, the SPN is automatically registered as SQL registering with the machine account that has the right to create an SPN default. So Kerberos interacts successfully with the server running SQL Server.
However, if you run SQL Server under a domain account or a local account, the attempt to create the SPN may fail. When creating the service principal name fails, this means that no SPN is set for the service that is running SQL Server.
Solution
Therefore, you must implement a solution to that the SPN is created for your SQL Server instance where you want to use the Kerberos protocol.
Method 1 : The method recommended by Microsoft Support. You can give in Active Directory rights below to the service account of SQL Server:
- Read servicePrincipalName
- Write servicePrincipalName
Method 2 : You can also give him the rights manually using the tool SetSPN.(http://msdn.microsoft.com/fr-fr/library/cc280459.aspx )
For SQL server Standalone
SetSPN -A MSSQLSvc/<ComputerName>.<DomainName>:<port> <AccountName>
So for a multi-server instance you must configure the SPN for each instance, for each instance of SQL Server usefulness port TCP / IP only. For the port of the proceeding open SQL Server Configuration Manager>> Right click the instance>> TCP / IP protocol (default port)
Pour un cluster
SetSPN -A MSSQLSvc/<virtualName>.<DomainName>:<port> <AccountName>
SetSPN -A MSSQLSvc/<virtualName>.<DomainName> <AccountName>
For an instance of SQL Server cluster, you must use the FQDN of the virtual SQL server. You must also configure the SPN with a port and a second SPN without the port.
Verification
Then you can confirm that the operation went smoothly with the following command:
SetSPN -L <AccountName>
SQL server side to check, you can use the DMV sys.dm_exec_connections with the column auth_scheme :
select auth_scheme from sys.dm_exec_connections where session_id=@@spid
If kerberos is used, you should see "KERBEROS".
Documentation
The SQL Network Interface library was unable to register SPN.
Problème
Dans les Error Logs SQL serveur vous obtenez le message d'erreur suivant :
La bibliothèque SQL Network Interface Impossible d'inscrire le nom principal service (SPN) pour le service SQL Server. Erreur : 0x2098. Échec d'inscrire un nom principal de service peut entraîner intégrée l'authentification revenir à NTLM au lieu de Kerberos. Ceci est un message d'information. Action supplémentaire n'est obligatoire si Kerberos authentification est requise par les stratégies d'authentification.
Pour comprendre l'erreur vous devez transcrire le message d'erreur 0x2098. Vous pouvez :
|
ERROR_DS_INSUFF_ACCESS_RIGHTS
8344 (0x2098) |
Insufficient access rights to perform the operation. |
Ce message d'erreur indique que le compte de service SQL server n'a pas les droits suffisants pour enregistrer les SPN.
Cause
Les SPN sont utilisés par le protocole d'authentification Kerberos. Si le compte de l'instance est connu, l'authentification Kerberos peut être utilisée pour fournir une authentification mutuelle par le client et le serveur. Si le compte de l'instance n'est pas connu, l'authentification NTLM, qui fournit uniquement une authentification du client par le serveur, est utilisée.
Si vous exécutez le service SQL Server sous le compte LocalSystem, le nom principal de service est généralement enregistré car SQL s'enregistre avec le compte machine qui dispose du droit de créer un SPN par défaut. Kerberos interagit correctement avec le serveur qui exécute SQL Server.
Cependant, si vous exécutez le service SQL Server sous un compte de domaine ou un compte local au que le compte localsystem, la tentative de création du nom principal de service peut échouer. Lorsque la création du nom principal de service échoue, cela signifie qu'aucun nom principal de service n'est configuré pour le service qui exécute SQL Server.
Résolution
Par conséquent, vous devez mettre en œuvre une solution pour que le SPN soit créé pour votre instance SQL Server lorsque vous souhaitez utiliser le protocole Kerberos.
Méthode 1 : La méthode recommandée par le Support Microsoft. Vous pouvez donner dans Active Directory les droits ci-dessous au compte de service SQL Server :
- Read servicePrincipalName
- Write servicePrincipalName
Méthode 2 : Vous pouvez aussi créer le SPN manuellement avec l'outil SetSPN.(http://msdn.microsoft.com/fr-fr/library/cc280459.aspx )
Pour un SQL server Standalone
SetSPN -A MSSQLSvc/<ComputerName>.<DomainName>:<port> <AccountName>
Pour un serveur multi instance vous devez configurer le Server Principal Name (SPN) pour chaque instance, car chaque instance de SQL Server utilise un port TCP unique. Pour obtenir le port de l'instance ouvrez SQL Server Configuration Manager >> Clic droit sur l'instance >> TCP/IP protocole (default port)
Pour une instance virtuelle (cluster en cluster)
SetSPN -A MSSQLSvc/<virtualName>.<DomainName>:<port> <AccountName>
SetSPN -A MSSQLSvc/<virtualName>.<DomainName> <AccountName>
Pour une instance SQL server en cluster, vous devez utiliser le FQDN du server SQL virtuel. Vous devez configurer le Service Principal Name (SPN) premièrement en spécifiant un port puis un second SPN sans port.
Vérification
Ensuite vous pouvez confirmer que l'opération s'est bien déroulé avec la commande suivante :
SetSPN -L <AccountName>
Coté SQL server, vous pouvez utiliser la DMV sys.dm_exec_connections avec la colonne auth_scheme :
select auth_scheme from sys.dm_exec_connections where session_id=@@spid
Si kerberos est utilisé, vous devriez voir "KERBEROS".
Documentation
The SQL Network Interface library was unable to register SPN.
Problema
En las contrapartes de error de SQL Server recibe el mensaje de error siguiente:
La biblioteca SQL Network Interface no se pudo registrar el nombre principal de servicio (SPN) para el servicio de SQL Server. Error: 0x2098. Un error al registrar un SPN puede producir la autenticación integrada se retrocede a NTLM en lugar de Kerberos. Se trata de un mensaje informativo. Acción más sólo es necesario si se requiere autenticación por directivas de autenticación de Kerberos.
Para entender el error que transcribir el mensaje de error 0x2098 de una forma más legible. Usted puede:
|
ERROR_DS_INSUFF_ACCESS_RIGHTS
8344 (0x2098) |
Insufficient access rights to perform the operation. |
Este mensaje de error indica que el servidor de cuenta de servicio de SQL no tiene suficientes derechos para registrar el SPN.
Causa
SPN son utilizados por el protocolo de autenticación Kerberos. Si se sabe que la cuenta del procedimiento, la autenticación Kerberos puede ser utilizado para proporcionar autenticación mutua entre el cliente y el servidor. Si la cuenta de las actuaciones no se conoce, la autenticación NTLM, que proporciona sólo la autenticación del cliente por el servidor, se utiliza.
Si ejecuta SQL Server en la cuenta LocalSystem, el SPN se registra automáticamente como SQL registrarse en la cuenta de equipo que tiene el derecho a crear un defecto de SPN. Así Kerberos interactúa correctamente con el servidor que ejecuta SQL Server.
Sin embargo, si ejecuta SQL Server bajo una cuenta de dominio o una cuenta local, el intento de crear el SPN puede fallar. Al crear el nombre principal de servicio falla, esto significa que no SPN se establece para el servicio que se ejecuta SQL Server.
Resolución
Por lo tanto, debe implementar una solución para que el SPN se crea para la instancia de SQL Server donde desea utilizar el protocolo Kerberos.
Método 1 : El método recomendado por el Soporte Microsoft. Usted puede dar en el Directorio Activo de derechos por debajo de la cuenta de servicio de SQL Server :
- Read servicePrincipalName
- Write servicePrincipalName
Método 2 : También puede darle los derechos de forma manual utilizando la herramienta de
SetSPN.(http://msdn.microsoft.com/fr-fr/library/cc280459.aspx )
Para un SQL server Standalone
SetSPN -A MSSQLSvc/<ComputerName>.<DomainName>:<port> <AccountName>
Así que para una instancia de servidor de múltiples debe configurar el SPN para cada instancia, para cada instancia de SQL Server utilidad uno port TCP / IP. Para obtener el puerto del instancia abierto SQL Server Configuration Manager>> Haga clic en la instancia>> protocolo TCP / IP (puerto por defecto)
Para un clúster
SetSPN -A MSSQLSvc/<virtualName>.<DomainName>:<port> <AccountName>
SetSPN -A MSSQLSvc/<virtualName>.<DomainName> <AccountName>
De una instancia de clúster de SQL Server, debe utilizar el nombre completo del servidor virtual SQL. También debe configurar el SPN con un puerto y un SPN segundo sin el puerto.
Verificación
Entonces usted puede confirmar que la operación se desarrolló sin problemas con el siguiente comando:
SetSPN -L <AccountName>
Del lado del servidor SQL para la verificación, puede utilizar el DMV sys.dm_exec_connections con la columna auth_scheme :
select auth_scheme from sys.dm_exec_connections where session_id=@@spid
Si se utiliza Kerberos, debería ver "KERBEROS".
Documentación
How to: Enable Kerberos Authentication on a SQL Server Failover Cluster
http://msdn.microsoft.com/en-us/library/ms189585(SQL.90).aspx
Registering a Service Principal Name
http://msdn.microsoft.com/en-us/library/ms191153.aspx
How to configure SQL Server 2005 Analysis Services to use Kerberos authentication
http://support.microsoft.com/kb/917409
How to make sure that you are using Kerberos authentication when you create a remote connection to an instance of SQL Server 2005
http://support.microsoft.com/kb/909801
You cannot start the SQL Server Agent service of a failover cluster of SQL Server 2005 if the build of SQL Server is 3179 or a later build
http://support.microsoft.com/kb/943525
Registering Kerberos Service Principal Names
http://msdn2.microsoft.com/en-us/library/ms178119.aspx
How to Configure the Service Principal Name
http://msdn.microsoft.com/en-us/library/ms942980.aspx
How to troubleshoot the "Cannot generate SSPI context" error message
http://support.microsoft.com/kb/811889
Enable Kerberos authentication for virtual servers
http://technet.microsoft.com/en-us/library/cc780918.aspx
How to: Enable Kerberos Authentication on a SQL Server Failover Cluster
http://msdn.microsoft.com/en-us/library/ms189585(SQL.90).aspx
Best practices for configuring and operating server clusters
http://technet.microsoft.com/en-us/library/cc785714.aspx
How to use Kerberos authentication in SQL Server
http://support.microsoft.com/kb/319723/en-us
Determining SQL Server Table Size
There a few days, I had to identify areas of my database that were taking up the most physical storage space.
The process that the stored procedure goes through is very simple. I create a temporary table to store the individual data elements for each table.
The Script has been tested and used on a SQL Server 2005 and 2008 instance to display the sizes of SQL Server's Database's Tables.
Déterminer la taille des tables de votre base de données SQL Server
Il y a quelques jours, j'ai dû identifier les zones de ma base de données qui consommaient le plus d'espace physiques.
Ce script est assez simple. Je vais simplement créer une table temporaire et stocker le résultat de chaque table.
Le script a été testé et utilisé sur une instance SQL Server 2005 et 2008 pour afficher la taille des tables de ma base de données de SQL Server.
Determinar el tamaño de las tablas de base de datos de SQL Server
Hace unos días, tuve que identificar las áreas de mi base de datos que más espacio de almacenamiento consumían.
Este script es bastante simple. Se crea una tabla temporal para almacenar los elementos de datos individuales para cada tabla.
Este script ha sido probado y utilizado en una instancia SQL Server 2005 y 2008 para mostrar los tamaños de las tablas de mi base de datos de SQL Server.
CREATE PROCEDURE getAllTablesSize
AS
BEGIN
DBCC UPDATEUSAGE (0) WITH NO_INFOMSGS;
CREATE TABLE
#temp (
[name] varchar(250),
[rows] varchar(50),
[reserved] varchar(50),
[data] varchar(50),
[index_size] varchar(50),
[unused] varchar(50)
);
INSERT #temp EXEC ('sp_msforeachtable ''sp_spaceused ''''?''''''');
UPDATE
#temp
SET
[rows] = LTRIM(RTRIM(REPLACE(t.rows,'KB',''))),
[reserved] = LTRIM(RTRIM(REPLACE(t.reserved,'KB',''))),
[data] = LTRIM(RTRIM(REPLACE(t.data,'KB',''))),
[index_size] = LTRIM(RTRIM(REPLACE(t.index_size,'KB',''))),
[unused] = LTRIM(RTRIM(REPLACE(t.unused,'KB','')))
FROM #temp AS t
SELECT
SUM(CAST([reserved] as decimal))/1024 AS 'Total reserved MB',
SUM(CAST([data] as decimal))/1024 AS 'Total data MB',
SUM(CAST([index_size] as decimal))/1024 AS 'Total index_size MB',
SUM(CAST([unused] as decimal))/1024 AS 'Total unused MB'
FROM
#temp
SELECT
[name] ,
CAST([rows] as INT)'rows' ,CAST([reserved] as INT)/1024 'reserved MB',
CAST([data] as INT)/1024 'data MB' ,
CAST([index_size]/1024 as INT)'index_size MB',
CAST([unused] as INT)/1024 'unused MB'
FROM
#temp
ORDER BY
CAST(reserved as INT) DESC
DROP TABLE #temp;
-- rows : Number of rows existing in the table. If the object specified is a Service Broker queue, this column indicates the number of messages in the queue.
-- reserved : Total amount of reserved space for objname.
-- data : Total amount of space used by data in objname.
-- index_size : Total amount of space used by indexes in objname.
-- unused : Total amount of space reserved for objname but not yet used.
-- unused : Total amount of space reserved for objname but not yet used.
-- More detail here : http://msdn.microsoft.com/en-us/library/ms188776.aspx
END
GO
EXECUTE getAllTablesSize
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Problem descriptionSQL Server Management Studio spends over 10 seconds to load.
CauseIn general, this behavior is due to 2 things:
1. The host computer not has access. By default "SQL Server Management Studio" is configured to use online help resources.
2. The host computer not has access. SSMS tries to go on internet to check for server certificate revocation until "SQL Server Management Studio" got a timeout, is like hanging.
ResolutionTo fix the issue, you can follow the 3 steps below :
Step 1 : Following the article : When running "SQL Server Management Studio" the application may load slowly.
http://support.microsoft.com/kb/555686/ Step 2 : Disable "Check for publishers certificate revocation" and "check for server certificate revocation" option under the Internet Explorer -> "Internet Options" -> Advanced".
Step 3 : Add a switch to the Management Studio shortcut by using /nosplash :
Start > Programs > SQL Server 2005 program group > 'SQL Server Management Studio' program.
Then, right-clicking and open the General tab, then select shortcut tab to add 'nosplash' switch.
Sample : "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" /nosplash
These tree steps combined should improve the load time of SQL Server Management Studio.
Enjoy SQL Server :-)
DescriptionSQL Server Management Studio prend plus de 10 secondes pour s'ouvrir.
CauseCe comportement peut être dû à deux paramètres :
1. Le serveur n'a pas internet. Et par défaut "SQL Server Management Studio" est configuré pour utiliser l'aide en ligne.
2. Le serveur n'a pas internet. Et SSMS essaye de vérifier sur internet les certificats jusqu'à obtenir un délai d'expiration
ResolutionVous pouvez résoudre ces délais d'attentes en suivant les 3 étapes ci-dessous :
Etape 1 : Suivre les indications de l'article KB suivant : Lorsqu' exécuter "SQL Server" Management Studio, il se peut que l'application soit lentement en cours de chargement..
http://support.microsoft.com/kb/555686/ Etape 2 : Désactiver "Check for publishers certificate revocation" et "check for server certificate revocation" dans les options d'Internet Explorer -> "Options Internet" -> Paramètres avancés".
Etape 3 : Ajouter dans le raccourci Management Studio l'option /nosplash :
Démarrer > Tous les programmes > SQL Server 2005 > 'SQL Server Management Studio' .
Puis faites un clic droit dans l'onglet Général, ajoutez à la fin 'nosplash' switch.
Exemple : "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" /nosplash
Ces différentes étapes combinées devrait améliorer grandement l'ouverture de SQL Server Management Studio.
Enjoy SQL Server :-)
Descripción del problema SQL Server Management Studio gasta más de 10 segundos en cargar.
CausaEn general, este comportamiento se debe a dos cosas:
1.El equipo anfitrión no tiene acceso. Por defecto "de SQL Server Management Studio" está configurado para utilizar la ayuda en línea de recursos.
2. El equipo anfitrión no tiene acceso. SSMS trata de ir en internet para comprobar la revocación de certificados del servidor hasta que "SQL Server Management Studio" tiene un tiempo de espera, es como colgantes.
ResoluciónPara solucionar el problema, puede seguir los 3 pasos a continuación:
Paso 1 : Tras el artículo: Cuando ejecuta "SQL Server Management Studio", la aplicación se puede cargar lentamente.
http://support.microsoft.com/kb/555686/ Paso 2 : desactivar "Comprobar la revocación de certificados del editor" y "Comprobar la revocación de certificados del servidor (requiere iniciar)" en el opciones de Internet Explorer -> "Internet Options" -> Avanzadas ".
Paso 3 : Agregue un interruptor a la gestión de accesos mediante el uso de Studio /nosplash :
Inicio> Programas> SQL Server 2005 el grupo de programas> 'SQL Server Management Studio "del programa.
A continuación, clic derecho y abra la pestaña General, seleccione la pestaña de acceso directo añadir 'nosplash' .
Muestra : "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" /nosplash
Estas medidas combinadas árbol debería mejorar el tiempo de carga de SQL Server Management Studio.
Disfrutar SQL Server :-)
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Moving Database Files on the secondary server in Log Shipping You are using Microsoft SQL Server Logshipping for one of your VLDB (very large database). You would like to move data files on another disk on the secondary server without reconfiguring log shipping.
As you cannot use the detach/attach database, you could follow the way below :
This solution is inspired of the documentation "Moving Database Files"
http://technet.microsoft.com/en-us/library/ms345483.aspxStep 1 : If your secondary is with the option "Standby Mode", you must change by "no recovery mode". And perform a transaction (insert, delete or update)
After, you have to manually run the job of backup, Then the jog of copy and the restore job.
Step 2 : Collect the logical name :
SELECT name
as logicalname
, physical_name
as filename FROM sys.master_files WHERE database_id
= DB_ID('yourDatabaseName');Step 3 : Move the file on the path expected :
ALTER DATABASE yourDatabaseName
MODIFY FILE( NAME = logicalname, FILENAME = 'M:\newpath.mdf')
Step 4 : Stop SQL server service, move the database file and start SQL server Service
Step 5 : Check that the update is ok with the query below :
SELECT name
as logicalname
, physical_name
as filename FROM sys.master_files WHERE database_id
= DB_ID('yourDatabaseName');You can follow the same way to add a file to a log shipped database.
Déplacer les fichiers de données d'une base de données en Log Shipping Vous utilisez Microsoft SQL server Logshipping pour une de vos bases de données VLDB (very large database). Vous souhaiteriez déplacer les fichiers de données SQL Server sur un autre disque du serveur secondaire sans avoir à reconfigurer le Log Shipping.
Comme vous ne pouvez pas utiliser la méthode attache/détache, you pouvez suivre le scénario ci-dessous :
Cette solution s'inspire de la documentation "Déplacement des bases de données utilisateur"
http://technet.microsoft.com/fr-fr/library/ms345483.aspxEtape 1 : Si vous êtes en mode "Stand By", vous devez repasser en mode "no recovery mode". Pour que le modification soit prise en compte, vous devez lancer une transaction (insert, delete ou update).
Ensuite, vous devez manuellement lancer le job de backup, copy et restaure afin que la modification soit prise en compte sur le serveur secondaire.
Etape 2 : Collecter le nom logique du fichier :
SELECT
name as logicalname, physical_name as filename
FROM
sys.master_files
WHERE
database_id = DB_ID('NomDeVotreBaseDeDonnées');Etape 3 : Modifier l'emplacement du fichier. Vous devez mettre le nom logique et le nom du nouveau chemin :
ALTER DATABASE votreDatabase
MODIFY FILE( NAME = logicalname, FILENAME = 'M:\newpath.mdf')
Etape 4 : Arrêter le service SQL, déplacer le fichier et démarrer le service
Etape 5 : Vérifier le résultat avec la requête suivante
SELECT
name as logicalname, physical_name as filename
FROM
sys.master_files
WHERE
database_id = DB_ID('NomDeVotreBaseDeDonnées');
Vous pouvez suivre le même chemin pour ajouter un fichier à votre base de données en log shipping.
Mover archivos de base de datos en el servidor secundario en Log Shipping Puede utilizar Microsoft SQL Server Logshipping para una de sus bases de datos VLDB (very large database). Que desea mover los archivos de datos de SQL Server a otro disco en el servidor secundario sin tener que reconfigurar el Log Shipping.
Puesto que usted no puede utilizar la adjunto / separados, puede seguir el siguiente escenario:
Esta solución se basa en la documentación "Mover bases de datos de usuario"
http://technet.microsoft.com/es-es/library/ms345483.aspxPaso 1 : Si el secundario es con la opción "Stand By", debe cambiar por "no recovery mode". Y realizar una transacción (insert, delete ou update).
Entonces usted debe iniciar manualmente el trabajo de copia de seguridad, copiar y restaurar de manera que el cambio surta efecto en el servidor secundario.
Paso 2 : Encontrar el nombre lógico del archivo :
SELECT name
as logicalname
, physical_name
as filename FROM sys.master_files WHERE database_id
= DB_ID('suBaseDeDatos');Paso 3 : Cambiar la ubicación del archivo. Se necesita el nombre lógico y el nombre de la nueva ruta :
ALTER DATABASE suBaseDeDatos
MODIFY FILE( NAME
= logicalname
, FILENAME = 'M:\newpath.mdf') Paso 4 : Detenga el servicio de SQL, mover el archivo y iniciar el servicio
Paso 5 : Comprobar el resultado con la siguiente consulta :
SELECT name
as logicalname
, physical_name
as filename FROM sys.master_files WHERE database_id
= DB_ID('suBaseDeDatos');Usted puede seguir el mismo camino para agregar un archivo a su base de datos en el Log Shipping
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
How to insert data from one table to another table by using SQL Server There are various ways to insert data from one table to another table. I will present you the most efficently.
Using INSERT INTOThis method is used when the table is already existing in the database. The datas will be inserted into this table from another table.
You don't have to list the columns If columns listed in insert clause and select clause are egual and with the same type. But to avoid any mistake, I recommand you to list each column.
You can create an Insert From query, when you specify:
- The database table to copy rows to (the destination table).
- The table or tables to copy rows from (the source table).
- The source table or tables become part of a subquery.
- Sort order, if you want to copy the rows in a particular order.
- Group By options, if you want to copy only summary information.
Sample:
CREATE TABLE [tempdb].[dbo].[myTempTable](
[backup_set_id] [int] NOT NULL,
[name] [nvarchar](128) NOT NULL,
[filegroup_id] [int] NOT NULL,
[filegroup_guid] [uniqueidentifier] NULL,
[type] [char](2) NOT NULL,
[type_desc] [nvarchar](60) NOT NULL,
[is_default] [bit] NOT NULL,
[is_readonly] [bit] NOT NULL,
[log_filegroup_guid] [uniqueidentifier] NULL
) ON [PRIMARY]
GO
INSERT INTO [tempdb].[dbo].[myTempTable] (
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid])
SELECT
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
Inserting Rows by Using SELECT INTO With this method you don't need to create the table before the insert. Table will be created when data from one table will be inserted from another table. This new table will be created with same data types as selected columns. SELECT INTO can be used to combine data from several tables or views into one table. It can also be used to create a new table that contains data selected from a linked server.
Sample:
SELECT [backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
INTO
[tempdb].[dbo].[myTempTable]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
SELECT INTO is non-logged operation when the db is in bulk_logged mode.You can use BCP too... Read the the following article for more info.
http://support.microsoft.com/?scid=kb;en-us;Q272093 INSERT INTO is recommended over SELECT INTO since the later requires more lock resources.
Don't ask you which one is the best. You have to keep in mine that this both solution are different and adapted to a specific value.
Comment insérer des données d'une table vers une autre table en utilisant SQL Server Il existe différentes façons d'insérer des données d'une table vers une autre table. Je vais vous présenter le plus efficacement possible.
Utiliser INSERT INTOCette méthode est utilisée lorsque la table est déjà existantes dans la base de données. Les datas seront insérées d'une table à l'autre table.
Vous n'avez pas d'énumérer les colonnes si les colonnes figurant dans la clause INSERT et la clause SELECT sont éguales et avec le même type.Pero para evitar el error, te recomiendo la lista de cada columna.
Vous pouvez créer un INSERT depuis une requête, lorsque vous spécifiez :
- Le tableau base de données à copier des lignes (la table de destination).
- La ou les tables à copier depuis la table source
- La table source ou les tables qui font partie d'une sous-requête.
- L'ordre de trie, si vous souhaitez copier les lignes dans un ordre particulier.
- Group By option, si vous souhaitez copier une synthèse des informations.
Exemple:
CREATE TABLE [tempdb].[dbo].[myTempTable](
[backup_set_id] [int] NOT NULL,
[name] [nvarchar](128) NOT NULL,
[filegroup_id] [int] NOT NULL,
[filegroup_guid] [uniqueidentifier] NULL,
[type] [char](2) NOT NULL,
[type_desc] [nvarchar](60) NOT NULL,
[is_default] [bit] NOT NULL,
[is_readonly] [bit] NOT NULL,
[log_filegroup_guid] [uniqueidentifier] NULL
) ON [PRIMARY]
GO
INSERT INTO [tempdb].[dbo].[myTempTable] (
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid])
SELECT
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
Insérer des lignes en utilisant SELECT INTO Avec cette méthode, vous n'avez pas besoin de créer la table avant l'insertion de données. La table sera créée lorsque les données d'un tableau seront insérées d'une autre table. Cette nouvelle table sera créée avec les mêmes types de données que les colonnes sélectionnées. SELECT INTO peut être utilisé pour combiner les données provenant de plusieurs tables ou vues en une seule table. Il peut également être utilisé pour créer une nouvelle table qui contient des données sélectionnées à partir d'un serveur lié. rechercher
Exemple:
SELECT [backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
INTO
[tempdb].[dbo].[myTempTable]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
SELECT INTO logue moins d'opération, lorsque la DB est en mode BULK_LOGGED. Vous pouvez aussi utiliser BCP ... Lire l'article suivant pour plus d'info.
http://support.microsoft.com/?scid=kb;fr;Q272093 Ne vous demandez pas quelle est la meilleur solution. Vous devez garder à l'esprit que se sont deux solutions différentes et adaptées à des cas spécifiques. Don't ask you which one is the best. You have to keep in mine that this both solution are different and adapted to a specific value.
¿Cómo insertar los datos de una tabla a otra tabla con SQL Server? Existen diferentes formas de insertar los datos de una tabla a otra tabla. Te enseñaré la manera más eficiente posible.
Usar INSERT INTOEste método se utiliza cuando la tabla está ya existentes en la base de datos. El datas se insertan de una tabla a otra tabla.
Usted no necesita a la lista de columnas si las columnas en la cláusula de INSERT y cláusula SELECT son egual y con el mismo tipo
Usted puede crear uno de una consulta INSERT cuando se especifica:
- La tabla de base de datos para copiar filas (la tabla de destino).
- El cuadro o cuadros para copiar de la tabla de origen
- La tabla de origen o las tablas que forman parte de una subconsulta.
- El orden de las clases, si desea copiar las filas en un orden determinado.
- Group By opción, si desea copiar una síntesis de la información.
Ejemplo:
CREATE TABLE [tempdb].[dbo].[myTempTable](
[backup_set_id] [int] NOT NULL,
[name] [nvarchar](128) NOT NULL,
[filegroup_id] [int] NOT NULL,
[filegroup_guid] [uniqueidentifier] NULL,
[type] [char](2) NOT NULL,
[type_desc] [nvarchar](60) NOT NULL,
[is_default] [bit] NOT NULL,
[is_readonly] [bit] NOT NULL,
[log_filegroup_guid] [uniqueidentifier] NULL
) ON [PRIMARY]
GO
INSERT INTO [tempdb].[dbo].[myTempTable] (
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid])
SELECT
[backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
Insertar filas mediante SELECT INTO Con este método no es necesario para crear la mesa antes de la inserción. Tabla se crea cuando los datos de una tabla se inserta de otra tabla. Esta nueva tabla se creará con el mismo tipo de datos como las columnas seleccionadas. SELECT INTO se puede utilizar para combinar datos de varias tablas o vistas en una sola mesa. También puede ser utilizado para crear una nueva tabla que contiene los datos seleccionados de un servidor vinculado.
Muestra:
SELECT [backup_set_id]
,[name]
,[filegroup_id]
,[filegroup_guid]
,[type]
,[type_desc]
,[is_default]
,[is_readonly]
,[log_filegroup_guid]
INTO
[tempdb].[dbo].[myTempTable]
FROM
[msdb].[dbo].[backupfilegroup]
GO
SELECT * FROM [tempdb].[dbo].[myTempTable] ;
GO
DROP TABLE [tempdb].[dbo].[myTempTable] ;
SELECT INTO no se registra operación cuando el DB está en el modo BULK_LOGGED. Usted puede utilizar BCP también ... Lea el artículo siguiente para más información.
http://support.microsoft.com/?scid=kb;es;Q272093 No pida usted que es el mejor. Tienes que mantener en la mina que esta solución son diferentes y adaptadas a un valor específico.
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Many of you wondered if it is necessary to use an antivirus on the server hosting your SQL Server Database. Some DBAs will say to not run anti-virus software on a server hosting SQL Server and the other say that you have to do.
In general, Antivirus are to protect file systems, SQL database services are not file services. So, there is not reason to do scans. My 2 cents, if malware gets into the DB, that means it is already past your primary environment anyway and in a far greater position to cause damage.
For this reason, the article KBs below denoting why certain files, folders, DB’s locations must be excluded. The official exceptions in the KB are:
- SQL Server data files (*.mdf, *.ldf, *.ndf)
- Backup files (*.trn, *.tuf, *.bak usually)
- Full text catalog files. This is the FTData folder in SQL Server
- The directory that holds Analysis Services data
- Trace files (*.trc)
- The Log Folder. Something like "MSSQL\Log
Antivirus Software May Cause Problems with Cluster Services
http://support.microsoft.com/kb/250355/en-us Guidelines for choosing antivirus software to run on the computers that are running SQL Server
http://support.microsoft.com/kb/309422/en-us However, with the introduction of file streams and remote blob storage on SQL server 2008 there may be situations where the data could be or should be scanned. I invite you to read the article KB below :
Virus scanning recommendations for computers that are running Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows 2000, Windows XP, or Windows Vista
http://support.microsoft.com/kb/822158/en-us Another important point, some Antivirus are intrusive and are injected into the SQL Server process. This kind of feature can cause serious problems in SQL Server: particular problems of IO, the Hang of Acces_violation. In addition, it's formally not supported see the article KB below. So, take care, when you enable a special option
:-)
The use of third-party detours or similar techniques is not supported in SQL Server
http://support.microsoft.com/kb/920925/en-us
Beaucoup d'entre vous se demande s'il est nécessaire de mettre un antivirus sur le serveur qui héberge vos bases de données SQL Server. Certains administrateurs de bases de données vous diront de ne pas mettre de logiciel antivirus sur un serveur qui héberge SQL Server et d'autres diront d'en mettre un.
En général, les antivirus protégent les systèmes de fichiers, les services de bases de données SQL Server ne sont pas des services de fichiers. Donc, il n'y a pas de raison de faire des scans. Mon avis personnel, si malware est présent sur votre serveur SQL Server, ça qui signifie qu'il est déjà passé vos serveurs frontaux de toute façon et qu'il a causé bien plus de dommages.
Pour ces raisons, l'article KB ci-dessous indique les raisons pour lesquelles certains fichiers ou dossiers doivent être exclus. Les exceptions suivantes sont à paramétrer sur votre antivirus :
- Fichiers de données SQL Server (*.mdf, *.ldf, *.ndf)
- Fichiers de sauvegardes habituels (*.trn, *.tuf, *.bak)
- Fichiers Full text catalog. Le répertoire FTData dans SQL Server
- Les répertoires qui hébergent les données de Analysis Services
- Fichiers de traces (*.trc)
- Fichier de logues : "MSSQL\Log
Un logiciel antivirus n'est pas à clusters peut provoquer des problèmes avec les services de cluster
http://support.microsoft.com/kb/250355/fr Instructions pour choisir le logiciel antivirus pour s'exécuter sur les ordinateurs qui exécutent SQL Server
http://support.microsoft.com/kb/309422/fr Toutefois, avec l'introduction du file streams et de remote blob storage dans SQL serveur 2008, il peut y avoir des situations où les données devraient scannées par un antivirus. Je vous invite à lire l'article ci-dessous KB:
Recommandations d'analyse antivirus pour les ordinateurs qui exécutent Windows Server 2003, Windows 2000 ou Windows XP
http://support.microsoft.com/kb/822158/fr Un autre point important, certains antivirus sont intrusifs et sont injectés dans le Processus SQL Server. Ce type de fonctionnalité peut provoquer de graves problèmes dans SQL Server: problèmes d'IO, de Hang, d'Acces_violation. De plus, ce n'est pas officiellement supporté voir l'article KB ci-dessous. Alors, attention, lorsque vous activez une option spéciale de votre antivirus :-)
L'utilisation de détours tiers ou des techniques similaires n'est pas prise en charge dans SQL Server
http://support.microsoft.com/kb/920925/fr
Muchos de ustedes se preguntan si es necesario usar un antivirus en el servidor que alberga su base de datos SQL Server. Algunos DBAS dirán que no se ejecute el software antivirus en un servidor SQL Server y los demás dicen que usted tiene que hacer.
En general, los antivirus son para proteger a los sistemas de archivos, servicios de bases de datos SQL no son servicios de archivos. Por lo tanto, no hay razón para hacer exploraciones. En mi opinión, si el malware entra en el DB, que significa que ya está más allá de su principal medio de todos modos y en una posición mucho mayor para causar daños.
Por esta razón, el artículo KBs que indica a continuación por qué determinados archivos, carpetas, los lugares del DB deben ser excluido. Las excepciones son las siguientes:
- SQL Server archivos de datos (*.mdf, *.ldf, *.ndf)
- Archivos de copia de seguridad (*.trn, *.tuf, *.bak )
- Full text catalog archivos. Esta es la carpeta FTData en SQL Server
- El directorio que contiene los datos de Analysis Services
- Archivos de traza (*.trc)
- El Registro de la carpeta. Algo como "MSSQL\Log
Software antivirus que no es compatible con clúster puede causar problemas con servicios de Cluster Server
http://support.microsoft.com/kb/250355/es Directrices para elegir software antivirus se ejecute en los equipos que ejecutan SQL Server
http://support.microsoft.com/kb/309422/es Sin embargo, con la introducción de los arroyos y el archivo de almacenamiento remoto BLOB en SQL Server 2008 puede haber situaciones en las que los datos podrían o deberían ser escaneados. Les invito a leer el artículo KB a continuación:
Recomendaciones para la detección de virus en equipos que ejecutan Windows Server 2003, Windows 2000 o Windows XP
http://support.microsoft.com/kb/822158/es Otro punto importante, algunos antivirus son intrusivos y se inyecta en el proceso de SQL Server. Este tipo de función puede provocar problemas graves en SQL Server: problemas de IO, bajada, de Acces_violation. Además, no se admite oficialmente la consulte el artículo KB continuación. Por lo tanto, tenga cuidado, cuando se habilita una opción especial
:-)
SQL Server no admite el uso de desvíos de otros fabricantes o técnicas similares
http://support.microsoft.com/kb/920925/es
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Logshipping secondary server is out of sync and transaction log restore job failing. ProblemYou can see that your logshipping is broken. In the SQL Error log, the message below is displayed :
Error: 14421, Severity: 16, State: 1.
The log shipping secondary database myDB.logshippingPrimary has restore threshold of 45 minutes and is out of sync. No restore was performed for 6258 minutes.
Description of error message 14420 and error message 14421 that occur when you use log shipping in SQL Server
http://support.microsoft.com/default.aspx?scid=329133 CauseInside the LSRestore job history, you can find out two kind of messages :
- Restore job skipping the logs on secondary server
Skipped log backup file. Secondary DB: 'logshippingSecondary', File: '\\myDB\logshipping\logshippingPrimary_20090808173803.trn'
- Backup log older is missing
*** Error 4305: The file '\\myDB\logshipping\logshippingPrimary_20090808174201.trn' is too recent to apply to the secondary database 'logshippingSecondary'.
**** Error : The log in this backup set begins at LSN 18000000005000001, which is too recent to apply to the database. An earlier log backup that includes LSN 18000000004900001 can be restored.
Transaction Log backups can only be restored if they are in a sequence. If the LastLSN field and the FirstLSN field do not display the same number on consecutive transaction log backups, they are not restorable in that sequence. There may be several reasons for transaction log backups to be out of sequence. Some of the most common reasons are a redundant transaction log backup jobs on the primary server that are causing the sequence to be broken or the recovery model of the database was probably toggled between transaction log backups.
ResolutionAt this time, to check if there are a gaps in the Restore Process. You can run the query below to try to find out whether a redundant Backup Log was performed :
SELECT s.database_name
,s
.backup_finish_date
,y
.physical_device_name
FROM msdb..backupset
AS s
INNER JOIN
msdb
..backupfile
AS f
ON f
.backup_set_id
= s
.backup_set_id
INNER JOIN
msdb
..backupmediaset
AS m
ON s
.media_set_id
= m
.media_set_id
INNER JOIN
msdb
..backupmediafamily
AS y
ON m
.media_set_id
= y
.media_set_id
WHERE (s
.database_name
= 'databaseNamePrimaryServer')
ORDER BY s.backup_finish_date
DESC;
You can see that another Backup Log was running out of logshipping process. Now, you have just to restore this backup on the secondary and run the LSRestore Job.
Logshipping le serveur secondaire n'est plus synchroninsé et le job de restauration des fichiers de transaction est en échec. ProblèmeVous avez constaté que le logshipping ne fonctionne plus. Dans l'erreur log SQL server, vous avez les messages suivant affiché :
Error: 14421, Severity: 16, State: 1.
The log shipping secondary database myDB.logshippingPrimary has restore threshold of 45 minutes and is out of sync. No restore was performed for 6258 minutes.
Description de message d'erreur 14420 et message d'erreur 14421 se produire lorsque vous utilisez l'envoi de journaux dans SQL Server
http://support.microsoft.com/default.aspx?scid=329133 CauseDans l'historique du Job LSRestore vous pouvez observer les deux types de message suivant :
- Le job de restauration Restore ne restaure plus les derniers backup de transaction sur le serveur secondaire.
Skipped log backup file. Secondary DB: 'logshippingSecondary', File: '\\myDB\logshipping\logshippingPrimary_20090808173803.trn'
- Un message indique qu'il manque un fichier plus ancien qui brise la chaine des LSN
*** Error 4305: The file '\\myDB\logshipping\logshippingPrimary_20090808174201.trn' is too recent to apply to the secondary database 'logshippingSecondary'.
**** Error : The log in this backup set begins at LSN 18000000005000001, which is too recent to apply to the database. An earlier log backup that includes LSN 18000000004900001 can be restored.
Les sauvegardes du journal de transactions peuvent être restaurés seulement si elles se trouvent dans une séquence. Si le champ LastLSN et le champ FirstLSN n'affichent pas le même numéro de sauvegardes de journaux de transactions consécutifs, ils ne sont pas restorable dans cet ordre. Il peut y avoir plusieurs raisons pour que les sauvegardes de journaux transactions soient hors de la séquence. Les causes les plus courantes sont par exemple un backup du journal de transaction redondant sur le serveur principal qui rompe la séquence ou que mode de récupération de la base de données a probablement été changé en cours de route.
RésolutionPour vérifier s'il y a un trou dans le processus de restauration. Je vous invite à lancer la requête ci-dessous :
SELECT s.database_name
,s
.backup_finish_date
,y
.physical_device_name
FROM msdb..backupset
AS s
INNER JOIN
msdb
..backupfile
AS f
ON f
.backup_set_id
= s
.backup_set_id
INNER JOIN
msdb
..backupmediaset
AS m
ON s
.media_set_id
= m
.media_set_id
INNER JOIN
msdb
..backupmediafamily
AS y
ON m
.media_set_id
= y
.media_set_id
WHERE (s
.database_name
= 'databaseNamePrimaryServer')
ORDER BY s.backup_finish_date
DESC;
Comme vous pouvez le voir, il y a une un backup de log qui n'est pas du au logshipping. Vous devez le restaurer sur le serveur secondaire et relancer le job LSRestore.
Logshipping el servidor secundario está fuera de sincronización y el trabajo de restauracion de transacción de registro de transacciones falla. ProblemaUsted puede ver que su logshipping está roto. En el registro de errores de SQL, el mensaje se muestra a continuación:
Error: 14421, gravedad: 16, estado: 1.
La base de datos secundaria de trasvase de registros myDB tiene un umbral de restauración de 45 minutos y no está sincronizada. No se ha realizado ninguna operación de restauración durante 6258 minutos. La latencia restaurada es de %5! minutos.
Descripción de mensajes de error 14420 y mensaje de error 14421 que producen cuando utiliza el trasvase de registros en SQL Server
http://support.microsoft.com/default.aspx?scid=329133 CausaDentro del historial de trabajo de LSRestore, usted puede encontrar dos tipos de mensajes:
- El trabajo de restauración se salta los registros en el servidor secundario
Registro de archivo de copia de seguridad saltado. Secondary DB: 'logshippingSecondary', File: '\\myDB\logshipping\logshippingPrimary_20090808173803.trn'
- La copia de seguridad más antigua de registro falta:
*** Error : The file '\\myDB\logshipping\logshippingPrimary_20090808174201.trn' es demasiado reciente para aplicarlo a la base de datos secundaria 'logshippingSecondary'.
**** Error : El registro de este conjunto de copia de seguridad empieza en el LSN 18000000005000001, demasiado reciente para aplicarlo a la base de datos. Se puede restaurar una copia de seguridad de registros anterior, que incluye el LSN 18000000004900001.
Sólo se pueden restaurar copias de seguridad del registro de transacciones si están en una secuencia. Si el campo LastLSN y el campo FirstLSN no muestran el mismo número de copias de seguridad del registro de transacción, No son restaurables en esa secuencia. Existen varios motivos por los cuales las copias de seguridad de registro de transacciones están fuera de secuencia. Algunas de las razones más comunes son trabajos redundantes de copias de seguridad de log de transacciones en el servidor principal que están provocando que la secuencia se rompa o cuando el modelo de recuperación de la base de datos haya cambiado entre las copias de seguridad del registro de transacciones.
ResoluciónEn este momento, para comprobar si hay deficiencias en el proceso de restauración puede ejecutar la consulta siguiente para tratar de averiguar si una copia de seguridad redundante se realizó:
SELECT s.database_name
,s
.backup_finish_date
,y
.physical_device_name
FROM msdb..backupset
AS s
INNER JOIN
msdb
..backupfile
AS f
ON f
.backup_set_id
= s
.backup_set_id
INNER JOIN
msdb
..backupmediaset
AS m
ON s
.media_set_id
= m
.media_set_id
INNER JOIN
msdb
..backupmediafamily
AS y
ON m
.media_set_id
= y
.media_set_id
WHERE (s
.database_name
= 'databaseNamePrimaryServer')
ORDER BY s.backup_finish_date
DESC;
Usted puede ver que otro registro de copia de seguridad se ejecuta fuera de proceso logshipping. Ahora, sólo tienes que restaurar esta copia de seguridad en la secundaria y ejecutar el trabajo LSRestore.
Understanding Logging and Recovery in SQL Server
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Disaster Recovery Plan using Microsoft SQL Server Logshipping
The purpose of this post is to give you a quick view of Logshipping with Microsoft SQL Server 2005/2008 for a scenario Disaster Recovery Plan.
Description The log shipping is a SQL Server to maintain a backup server to date by applying to regular transaction logs of a database on a secondary database An optional third server instance, known as the monitor server, records the history and status of backup and restore operations and, optionally, raises alerts if these operations fail to occur as scheduled.
The principle is simple:
1. Backup of Transaction Log on the primary server
2. Copy of Transaction Log on the primary to the secondary server
3. Restore Transaction Log on the machine secondary
The method of recovery must be in FULL or Bulk-Logged.
Log Shipping Overview
http://msdn.microsoft.com/en-us/library/ms187103.aspx
Benefits• No need for specialized equipment
• Possibility to have multiple secondary servers
• Ability to access the database in read-only secondary
• Possibility to have a cluster on the production site and a simple machine on the backup site
Constraints• Operating base by base (not server)
• Need to keep the OS on both machines in parallel
• Need to retain both SQL (options, logins, ...)
• Large network bandwidth to copy the databases and logs.
• More input / output discs due to copy transaction logs from one machine to another. It is recommended to stagger the various backup jobs each database.
• Asynchronous operation can thus shift between primary and secondary server. In the case of failover on the secondary site, may be the last transaction logs were not copied, the data from the backup site would then not be in phase with the production site.
• Both machines must be on the same network to communicate and make copies of files. They will have different names.
• Failover and clients connection string must be manually .
• Plan and monitor the capacity directories backup and restore to ensure that storage space is sufficient for newspapers sent.
If you want a solution without data loss synchronous and automatic failover you must choose SQL Server Mirroring instead of Logshipping
Maintenance • Maintenance must be duplicated on the main server and all secondary servers .
• Any changes to SQL Server such as a configuration change, adding login ... must be made on different servers
Managing Metadata When Making a Database Available on Another Server Instance
http://msdn.microsoft.com/en-us/library/ms187580.aspx Applying patch or hotfix• Applying a service pack or hotfix on a SQL Server must be on each machine.SQL Server logshiping allows for rolling patches an upgrades :
- You have to upgrade secondary first
- Then perform a failover
- And upgrade the original primary (now secondary)
Test server backup• Possible without affecting the production.
• Need to resynchronize the databases on the server after the backup test
• Manual Switches
Failing Over to a Log Shipping Secondary
http://msdn.microsoft.com/en-us/library/ms191233.aspx
Changing Roles Between Primary and Secondary Servers
http://msdn.microsoft.com/en-us/library/ms178117.aspx
Plan de reprise d'activité avec Microsoft SQL Server Logshipping
L'objectif de ce post est de vous donner une vue rapide du Logshipping avec Microsoft SQL Server 2005/2008 pour un scénario de Plan de Reprise d'Activité.
Description Le log shipping est une technologie SQL Server permettant de maintenir un serveur de secours à jour en appliquant à intervalle régulier les journaux de transactions d’une base de données sur une base de données secondaire. Une troisième instance de serveur facultatif, appelée serveur moniteur, enregistre l'historique et l'état des opérations de sauvegarde ainsi que de restauration, puis déclenche éventuellement des alertes si ces opérations ne sont pas effectuées selon la planification établie.
Le principe est simple :
1. Backup du Transaction Log sur l’instance Primaire
2. Copie du Transaction Log de la machine primaire vers la machine secondaire
3. Restauration du Transaction Log sur la machine secondaire
Le mode de recovery doit être en mode FULL ou Bulk-Logged.
Vue d'ensemble de la copie des journaux de transaction
http://msdn.microsoft.com/fr-fr/library/ms187103.aspx
Avantages• Pas de nécessité d’avoir un matériel spécialisé
• Possibilité d’avoir plusieurs serveurs secondaires
• Possibilité d’accéder à la base secondaire en lecture seule
• Possibilité d’avoir un cluster sur le site de production et une machine simple sur le site de secours
Contraintes• Fonctionnement base par base (et non serveur)
• Nécessité de maintenir les OS sur les deux machines en parallèle
• Nécessité de maintenir les deux SQL (options, logins, …)
• Bande passante réseau importante pour la copie des bases et des logs.
• Davantage d’entrées/sorties disques du fait de la copie des journaux de transaction d’une machine à l’autre. Il est recommandé d'étaler dans le temps les différentes jobs de backup de chacune des bases de données.
• Fonctionnement asynchrone donc décalage possible entre primaire et secondaire. Dans le cas d’un passage sur le site de secours il se peut que les derniers journaux de transaction n’aient pas été copiés, les données du site de secours ne seraient alors pas en phase avec celles du site de production.
• Les deux machines doivent être sur le même réseau pour communiquer et réaliser les copies de fichiers. Elles auront donc des noms différents.
• Basculement et changement des chaines de connexion clientes manuellement.
• Planifier et surveiller la capacité des répertoires de sauvegarde et de restauration pour garantir que l'espace de stockage est suffisant pour les journaux envoyés.
Si vous souhaitez une solution synchrone sans perte de données avec un basculement automatique vous devez vous orienter vers une solution SQL Server Mirroring
Maintenance • La maintenance doit être dupliquée sur le serveur principal et tous les serveurs secondaires.
• Toute modification de SQL Server telle qu’un changement de configuration, ajout de login, … doit être faite sur les différents serveurs
Gestion des métadonnées lors de la mise à disposition d'une base de données sur une autre instance de serveur
http://msdn.microsoft.com/fr-fr/library/ms187580.aspx
Application de correctif• L’application d’un service pack ou d’un correctif sur SQL Server doit se faire sur chaque machine.SQL Server Logshipping autorise l'application de correctif de manière différée :
- Vous devez mettre à jours le serveur secondaire
- Puis faire une bascule
- Et mettre à jours le principal (qui est maintenant le serveur secondaire)
Test du secours• Possible sans affecter la production.
• Nécessite de resynchroniser les bases sur le serveur de secours après le test
• Bascule Manuelle
Basculement vers une base de données secondaire de copie des journaux de transactions
http://msdn.microsoft.com/fr-fr/library/ms191233.aspx
Changement des rôles entre les serveurs primaire et secondaire
http://msdn.microsoft.com/fr-fr/library/ms178117.aspx
Plan de Recuperación de Desastres con Microsoft SQL Server Logshipping
El propósito de este post es para darle una vista rápida de Logshipping con Microsoft SQL Server 2005/2008 para un Plan de Recuperación de Desastres Informáticos.
Descripción El Logshipping es un tecnología de SQL Server para mantener un servidor de copia de seguridad hasta la fecha mediante la aplicación regular de los registros de transacciones de una base de datos en una base de datos secundaria. En una tercera instancia de servidor opcional, denominado servidor de supervisión, se registra el historial y el estado de las operaciones de copias de seguridad y restauración y, opcionalmente, se activan alertas si estas operaciones no se producen según lo programado.
El principio es simple :
1. Copia de seguridad del log de transacciones de la Instancia Primaria
2. Copia del registro de transacciones de la máquina primaria a la máquina secundaria
3. Restaurar registro de transacciones en la máquina secundaria
El modelo de recuperación de la base debe estar en FULL o Bulk-Logged.
Información general de trasvase de registros
http://msdn.microsoft.com/es-es/library/ms187103.aspx
Beneficios• No hay necesidad de equipo especializado
• Posibilidad de tener múltiples servidores secundarios
• Capacidad de acceso a la base de datos de sólo lectura en el servidor secundario
• Posibilidad de tener un Cluster MSCS en el lugar de producción y una simple máquina en el sitio de la copia de seguridad
Limitaciones• Opera a través de una copia de base por base (y no del servidor)
• Necesidad de mantener el sistema operativo en ambas máquinas en paralelo
• Necesidad de mantener ambos servidores SQL (opciones, accesos, ...)
• Importante ancho de banda de red para copiar las bases de datos y registros.
• Incremento de operaciones de entrada/salida de los discos debido a la copia de los registros de transacciones de una máquina a otra. Se recomienda escalonar las diversas tareas de copia de seguridad para cada base de datos.
• La operación asíncrona puede alternar entre el servidor primario y secundario. En el caso de un cambio en el sitio de seguridad , es posible que los recientes registros de transacciones no se copien, los datos de la copia de seguridad del sitio no estarán en fase con el lugar de producción.
• Ambas máquinas deben estar en la misma red para comunicar y hacer copias de archivos. Deben tener nombres distintos.
• El failover y las cadenas de conexión de cliente son manuales
• Planificar y supervisar la capacidad de los directorios de copia de seguridad y restaurar para garantizar que el espacio de almacenamiento es suficiente para los periódicos enviados.
Si desea una solución sin pérdida de datos síncrona con failover automático, debe referirse on una solución SQL Server Mirroring .
Mantenimiento • EL mantenimiento debe ser duplicado en el servidor principal y todos los servidores secundarios.
• Cualquier cambio a SQL Server como un cambio de configuración, añadir login ... debe hacerse en distintos servidores
Administrar los metadatos cuando una base de datos pasa a estar disponible en otra instancia de servidor
http://msdn.microsoft.com/es-es/library/ms187580.aspx
Aplicar un parche•La aplicación de un Service Pack o hotfix en un servidor SQL Server debe ser en cada máquina.SQL Server Logshipping permite la aplicación de parche en diferido :
- Tiene que actualizar primero secundaria
- A continuación, realiza una conmutación en la máquina secundario
- Y actualizar la primaria (ahora secundaria)
Prueba del Socorro• Posible sin afectar la producción.
• Necesidad de resincronizar las bases de datos en el servidor de copia de seguridad después de la prueba
• Conmutación manual
Realizar una conmutación por error a una base de datos secundaria de trasvase de registros
http://msdn.microsoft.com/es-es/library/ms191233.aspx
Cambiar las funciones entre el servidor primario y secundario
http://msdn.microsoft.com/es-es/library/ms178117.aspx
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
The purpose of this post is to explain the minimum required for the migration of Microsoft SQL Server 2000 to Microsoft SQL Server 2008. You can use the same principles to migrate a Microsoft SQL Server 2005 to Microsoft SQL Server 2008.
1. SQL server 2008 upgrade advisor1.1. Before migratingMicrosoft provides a tool called "Microsoft SQL Server 2008 Upgrade Advisor" to alert you of any changes in design between Microsoft SQL Server 2000/2005 and SQL Server 2008. It is strongly recommended to run this software before migration.
1.2. DownloadYou can download this tool from the link below:
“Download the Microsoft SQL Server 2008 Upgrade Advisor. Upgrade Advisor analyzes instances of SQL Server 2000 and SQL Server 2005 to help you prepare for upgrades to SQL Server 2008.”
http://www.microsoft.com/downloads/details.aspx?familyid=F5A6C5E9-4CD9-4E42-A21C-7291E7F0F852&displaylang=en After installation, a new tab appears in: Start>> All Programs >> Microsoft SQL server 2008 >> SQL Server 2008 Upgrade Advisor
1.3. Report before migrationRun “SQL Server 2008 Upgrade Advisor”.
Then click on “Launch Upgrade Advisor Analysis Wizard”.
Then click on "Detect". The tool will automatically select the components installed on your platform.
It is also interesting to give a trace profiler tool containing a representative of your business so that it detects all the elements that would longer supported or recommended in Microsoft SQL Server 2008.

Then configure the connection to your SQL server 2000 instance. After a few minutes a report will be generated with warning or points on which you must bring your attention. These items may include Full Text Search, replication, objects that no longer exist or have been modified in the new version, plans to maintain ...
The tool will provide two other types of information:
1. Objects affected
2. Advice you can find a workaround or fix the problem.
Sample report provided by the tool:
3. Migration with the database restore method3.1. Restoring a database SQL server 2000On your new instance Microsoft SQL Server 2008, connect to Management Studio 2008. Then click on the "Restore Database". Then follow the instructions.
RESTORE (Transact-SQL)
http://msdn.microsoft.com/en-us/library/ms186858.aspx How to: Restore a Database Backup (SQL Server Management Studio)
http://msdn.microsoft.com/en-us/library/ms177429.aspx 3.2. Compatibility Level SQL 2000/ SQL 2008If you restore your database in SQL Server 2000 SQL Server 2008, the level of compatibility will default mode "SQL Server 2000 (80).
To know the level of compatibility, Make a right click on the name of the database>> "Property"
Then in the dialog "Database Properties", click "Options"

To enjoy all the new features in the new engine SQL server 2008, you must change the compatibility level to 100.
To know the differences between compatibility 80, 90 or 100, I invite you to read the following article
http://msdn.microsoft.com/en-us/library/bb510680.aspx sp_dbcmptlevel (Transact-SQL)
http://msdn.microsoft.com/en-us/library/ms178653.aspx 3.3. Transferring SQL Server logins and WindowsThere are different ways to migrate your users
- SQL Server Intégration Services, with component « "transfer Login task ».
- SQL Server Management Studio, with “Copy Database Wizard”
- You can also draw on examples of script between SQL Server 2000 and 2005 KB Article
http://support.microsoft.com/kb/246133 3.4. SQL Server Agent jobsYou can migrate your SQL Server Agent jobs using Enterprise Manager 2000. You can find more detail in the documentation below:
How to script jobs using Transact-SQL (Enterprise Manager)
http://msdn.microsoft.com/en-us/library/aa177024(SQL.80).aspx3.5. Other components You must also reconfigure the components such as SQL database Mail extended stored procedures, linked servers...
3.6. Update statisticsIt is recommended that, after having committed or changed the compatibility mode to 100, execute the stored procedure: sp_updatestats
The procedure allows sp_updatestats system to recalculate the statistics and make an update for all the statistics on each table in your base data. To avoid errors related to the statistics of the previous version.
sp_updatestats (Transact-SQL)
http://msdn.microsoft.com/en-us/library/ms173804.aspx
L'objectif de ce post est de vous expliquer les minimums requis pour la migration de Microsoft SQL Server 2000 vers Microsoft SQL Server 2008. Vous pouvez utiliser les mêmes principes pour migrer une base de données Microsoft SQL Server 2005 vers Microsoft SQL Server 2008.
1. SQL server 2008 upgrade advisor1.1. Avant de migrerMicrosoft met à votre disposition un outil nommé «Microsoft SQL Server 2008 Upgrade Advisor » pour vous alerter de toutes les modifications de design entre Microsoft SQL Server 2000/2005 et SQL Server 2008. Il est vivement recommandé de lancer cet outil avant toute migration.
1.2. TéléchargementVous pouvez télécharger cet outil depuis le lien ci-dessous :
“Download the Microsoft SQL Server 2008 Upgrade Advisor. Upgrade Advisor analyzes instances of SQL Server 2000 and SQL Server 2005 to help you prepare for upgrades to SQL Server 2008.”
http://www.microsoft.com/downloads/details.aspx?familyid=F5A6C5E9-4CD9-4E42-A21C-7291E7F0F852&displaylang=en Après l’installation, un nouvel onglet apparaitra dans : Démarrer >> Tous les programmes >> Microsoft SQL server 2008 >> SQL Server 2008 Upgrade Advisor
1.3. Rapport avant migrationLancez “SQL Server 2008 Upgrade Advisor”.
Puis cliquez sur “Launch Upgrade Advisor Analysis Wizard”.
Ensuite cliquez sur “Detect”. L’outil sélectionnera automatiquement les composants installés sur votre plateforme.
Il est aussi intéressant de donner à l’outil une trace profiler contenant une période représentative de votre activité afin qu’il détecte tous les éléments qui ne seraient plus supportés ou recommandés sous Microsoft SQL server 2008.

Puis configurez la connexion à votre instance SQL server 2000. Après quelques minutes un rapport sera généré avec des warning ou des points sur lesquels vous devez porter votre attention. Ces points peuvent porter sur Full Text Search, la réplication, des objets qui n’existent plus ou qui ont été modifiés dans la nouvelle version, les plans de maintenances…
L’outil vous fournira deux autres types d’informations importantes :
1. Les objets impactés
2. Des conseils vous permettant de trouver une solution de contournement ou de corriger le problème.
Exemple de rapport fourni par l’outil :
3. Migration avec la méthode restore database3.1. Restaurer une base de données SQL server 2000Sur votre nouvelle instance Microsoft SQL server 2008, connectez-vous à management Studio 2008. Puis cliquez sur la fonctionnalité « Restore Database ». Puis suivez les instructions.
RESTORE (Transact-SQL)
http://msdn.microsoft.com/fr-fr/library/ms186858.aspx Procédure : restaurer une sauvegarde de base de données (SQL Server Management Studio)
http://msdn.microsoft.com/fr-fr/library/ms177429.aspx 3.2. Niveau de Compatibilité SQL 2000/ SQL 2008Si vous restaurez votre base de données SQL Server 2000 sous SQL server 2008, le niveau de compatibilité restera par défaut en mode "SQL Server 2000(80)". Pour connaitre le niveau de compatibilité, Faites un clique droit sur le nom de la base de donnée >> "Propriété" Puis dans la fenêtre de dialogue "Database Properties", cliquez sur l'onglet "Options"

Pour bénéficier de toutes les nouvelles fonctionnalités du nouveau moteur SQL server 2008, vous devez changer le niveau de compatibilité à 100.
Pour connaitre les différences de compatibilités entre 80, 90 ou 100, je vous invite à lire l’article suivant
http://msdn.microsoft.com/fr-fr/library/bb510680.aspx sp_dbcmptlevel (Transact-SQL)
http://msdn.microsoft.com/fr-fr/library/ms178653.aspx 3.3. Transférer les logins SQL Server et WindowsIl existe différentes méthodes pour migrer vos utilisateurs
- SQL Server Intégration Services, avec le composant « "transfer Login task ».
- SQL Server Management Studio, avec “Copy Database Wizard”
- Vous pouvez aussi vous inspirer des exemples de script entre SQL Server 2000 et 2005 de l’article KB
http://support.microsoft.com/kb/246133 3.4. SQL Server Agent jobsVous pouvez migrer vos jobs SQL Server Agent en utilisant Entreprise Manager 2000. Vous trouverez plus de détail dans la documentation ci-dessous :
How to script jobs using Transact-SQL (Enterprise Manager)
http://msdn.microsoft.com/fr-fr/library/aa177024(SQL.80).aspx3.5. Autres composants Vous devez aussi reconfigurer les composants comme SQL database Mail, les procédures stockées étendues, les serveurs liés…
3.6. Mise à jour des statistiquesIl est recommandé, après avoir attaché ou changé le mode compatibilité en 100, d'exécuter la procédure stockées : sp_updatestats
La procédure système sp_updatestats permet de recalculer les STATISTIQUES et de faire une MISE À JOUR pour toutes les statistiques sur chaque table dans votre base de données. Vous éviterez ainsi des erreurs liées aux statistiques de la précédente version.
sp_updatestats (Transact-SQL)
http://msdn.microsoft.com/fr-fr/library/ms173804.aspx
El propósito de este post es explicar el mínimo necesario para la migración de Microsoft SQL Server 2000 a Microsoft SQL Server 2008. Puede utilizar los mismos principios para migrar de Microsoft SQL Server 2005 a Microsoft SQL Server 2008.
1. SQL server 2008 upgrade advisor1.1. Antes de migrarMicrosoft proporciona una herramienta llamada «Microsoft SQL Server 2008 Upgrade Advisor » para que le avise de cualquier cambio en el diseño de Microsoft SQL Server 2000/2005 y SQL Server 2008. Se recomienda encarecidamente ejecutar este programa antes de la migración.
1.2. DescargarPuede descargar esta herramienta desde el siguiente vínculo:
“Download the Microsoft SQL Server 2008 Upgrade Advisor. Upgrade Advisor analyzes instances of SQL Server 2000 and SQL Server 2005 to help you prepare for upgrades to SQL Server 2008.”
http://www.microsoft.com/downloads/details.aspx?familyid=F5A6C5E9-4CD9-4E42-A21C-7291E7F0F852&displaylang=es Después de la instalación, aparece una nueva pestaña en: Inicio>> Todos los programas >> Microsoft SQL server 2008 >> SQL Server 2008 Upgrade Advisor
1.3. Informe antes de la migraciónIniciar “SQL Server 2008 Upgrade Advisor”. A continuación, haga clic en “Launch Upgrade Advisor Analysis Wizard”.
A continuación, haga clic en “Detect”. La herramienta selecciona automáticamente los componentes instalados en su plataforma.
También es interesante dar a la herramienta trazas profiler que contenga un representaci
ón de la actividad en su empresa de manera que detecte todos los elementos que ya no estén soportados o recomendado en Microsoft SQL Server 2008.

Luego configure la conexión a su instancia de SQL Server 2000. Después de unos minutos un informe se generará con advertencias o puntos en los que usted debe su atención. Estos elementos pueden incluir Búsqueda de texto completo, replicación, objetos que ya no existen o se han modificado en la nueva versión, planes de mantenimiento ...
La herramienta proporcionará otros dos tipos de información:
1. Los objetos Afectados
2. Asesoramiento para encontrar una solución o resolver el problema.
Ejemplo de informe presentado por la herramienta:
3. La migración con el método de restaurar la base de datos3.1. Restauración de una base de datos SQL Server 2000En su nueva instancia de Microsoft SQL Server 2008, conecté a Management Studio 2008. A continuación, haga clic en la funcionalidad « Restore Database ». A continuación, siga las instrucciones.
RESTORE (Transact-SQL)
http://msdn.microsoft.com/es-es/library/ms186858.aspx Cómo restaurar una copia de seguridad de base de datos (SQL Server Management Studio)
http://msdn.microsoft.com/es-es/library/ms177429.aspx 3.2. Nivel de compatibilidad SQL 2000/ SQL 2005 / SQL 2008Si restaura la base de datos SQL Server 2000 en SQL Server 2008, el nivel de compatibilidad seguirá siendo "SQL Server 2000(80)".
Para saber el nivel de compatibilidad, haga un clic derecho sobre el nombre de la base de datos>> "Propiedades"
Luego, en el cuadro de diálogo "Propiedades de la base de datos", haga clic en "Opciones"

Para disfrutar de todas las nuevas características del nuevo motor de SQL Server 2008, debe cambiar el nivel de compatibilidad a 100.
Para conocer las diferencias entre la compatibilidad 80, 90 o 100, le invito a que lea el siguiente artículo
http://msdn.microsoft.com/es-es/library/bb510680.aspx sp_dbcmptlevel (Transact-SQL)
http://msdn.microsoft.com/es-es/library/ms178653.aspx 3.3. Transferir inicios de sesión y contraseñasExisten diferentes formas de migrar a sus usuarios
- SQL Server Integration Services, con el componente « transfer Login task ».
- SQL Server Management Studio, con “Copy Database Wizard”
- También puede recurrir a ejemplos de secuencia de comandos de SQL Server entre 2000 y 2005 de artículo de KB
http://support.microsoft.com/kb/246133 3.4. SQL Server Agent jobsPuede migrar sus puestos de trabajo del Agente SQL Server utilizando el Administrador corporativo de 2000. Usted puede encontrar más detalles en la documentación a continuación:
How to script jobs using Transact-SQL (Enterprise Manager)
http://msdn.microsoft.com/es-es/library/aa177024(SQL.80).aspx3.5. Otros componentes También debe volver a configurar los componentes SQL database Mail, Procedimientos almacenados extendidos, Vincular servidores…
3.6. Actualización de las estadísticas Se recomienda que, después de haber (hecho un attach) o haber cambiado el modo de compatibilidad a 100, ejecute el procedimiento almacenado : sp_updatestats
El procedimiento de sistem sp_updatestats sistema para volver a calcular las estadísticas y hacer una actualización de todas las estadísticas en cada tabla de su base datos. Evitará de esa manera errores relacionados con las estadísticas de la versión anterior.
sp_updatestats (Transact-SQL)
http://msdn.microsoft.com/es-es/library/ms173804.aspx
Related Resources
Resources for Upgrading to SQL Server 2008
http://msdn.microsoft.com/en-us/library/cc936623.aspx
SQL Server 2008 Upgrade Technical Reference Guide
http://www.microsoft.com/downloads/details.aspx?FamilyID=66d3e6f5-6902-4fdd-af75-9975aea5bea7&displaylang=en
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |
Le modèle de livraison de correctif pour Microsoft SQL server suit un processus très précis qui est décrit dans l'article suivant :
http://support.microsoft.com/kb/935897/ Nous recommandons toujours d'appliquer le dernier Service Pack(SP) disponible pour SQL. Cependant vous devez l'appliquer seulement après validation sur votre plateforme de test.
Comment faire pour obtenir le dernier Service Pack pour SQL Server 2000 :
http://support.microsoft.com/kb/290211/fr Comment faire pour obtenir le dernier Service Pack pour SQL Server 2005 :
http://support.microsoft.com/kb/913089/frComment faire pour obtenir le dernier Service Pack pour SQL Server 2008 :
http://support.microsoft.com/kb/968382/fr Quelle est la politique de publication des Cumulative updates ? Les Cumulative updates (CU) ne doivent être appliqués qu’en connaissance de cause, pour adresser une problématique spécifique (pro-activement ou ré-activement). L’application systématique du dernier CU interne lors d’installation peut conduire à des changements de comportements non-désirés de SQL Server.
Lifecycle Supported Service Packs
http://support.microsoft.com/gp/lifesupsps
El modelo de la entrega de parches de Microsoft SQL Server sigue un proceso muy preciso que se describe en el siguiente artículo:
http://support.microsoft.com/kb/935897/ Siempre recomendamos la aplicación de la versión más reciente del Service Pack(SP) para SQL. Sin embargo, usted sólo debe aplicarlo después de la validación en su plataforma de prueba.
Cómo obtener el service pack más reciente para SQL Server 2000 :
http://support.microsoft.com/kb/290211/es Cómo obtener el service pack más reciente para SQL Server 2005 :
http://support.microsoft.com/kb/913089/esCómo obtener el service pack más reciente para SQL Server 2008 :
http://support.microsoft.com/kb/968382/es ¿Cuál es la política de publicación los Cumulative updates ? Los Cumulative updates(CU) que se deben aplicar con conocimientos de causa, para hacer frente a un tema específico (pro-activo o re-activo). La aplicación sistemática del último CU puede llevar a cambios no deseados en el comportamiento de SQL Server.
Lifecycle Supported Service Packs
http://support.microsoft.com/gp/lifesupsps
Microsoft Security Bulletin Search : http://www.microsoft.com/technet/security/current.aspx
The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
http://support.microsoft.com/kb/956909
The SQL Server 2008 builds that were released after SQL Server 2008 was released
http://support.microsoft.com/kb/956909/
The SQL Server 2005 builds that were released after SQL Server 2005 Service Pack 2 was released
http://support.microsoft.com/kb/937137/en-us
Michel Degremont | Microsoft EMEA | Product Support Services Developer - SQL Server Core Engineer |