Introduction
Les distributions de Microsoft SQL Server 2005 et 2008/2008 R2 proposent un conseiller de migration ou "Upgrade Advisor" qui permet de diagnostiquer au préalable les éventuels problèmes et incompatibilités pour une migration d’une instance Microsoft SQL Server depuis des versions antérieures.
Cet article présente l’installation et l’utilisation à distance en lignes de commande du conseiller de migration Microsoft SQL Server 2008 R2 en vue de préparer la migration d’une instance Microsoft SQL Server 2008 vers Microsoft SQL Server 2008 R2. Un autre exemple est donné pour préparer la migration d’une instance nommée SQL Server 2005 vers SQL Server 2008 R2. L’Upgrade Advisor MS SQL Server 2008 R2 est installé sur la machine SRVWINFR39.
Le conseiller de migration SQL 2008 R2 analyse la migration des composants moteur bases de données, Analysis Services, Reporting Services, Integration Services et Data Transformation Services (DTS) : ici seul le composant moteur base de données est évoqué.
L’Upgrade Advisor supporte l’analyse à distance de tous les composants supportés à l’exception de MS Reporting Services.
L’Upgrade Advisor n’analyse pas les procédures stockées encryptées ainsi que les procédures développées par exemple en .Net (fonctionnalité CLR - Common Language RunTime).
Dans la suite de cet article, %SETUPDIR%
correspond au répertoire ou au
partage réseau contenant la distribution d’installation de Microsoft SQL Server
2008 R2.
Installation de l’Upgrade Advisor MS SQL Server 2008 R2
Pré-requis
Les pré-requis pour installer et utiliser l’Upgrade Advisor MS SQL Server 2008 R2 sont les suivants :
- Windows XP SP2 minimum, Windows Vista, Windows Server 2003 SP2, Windows Server 2008 SP2, Windows 7 et Windows Server 2008 R2.
- Windows Installer 4.5.
- .NET Framework 2 minimum.
Installation
En fonction de l’architecture 32 bits/64bits du serveur sur lequel va être installé l’Upgrade Advisor MS SQL Server 2008 R2, l’installation est réalisée avec l’installateur sqlua.msi.
Plateforme | Répertoire de sqlua.msi |
---|---|
Windows 32 bits | %SETUPDIR%\1033_ENU_LP\x86\sqlua.msi |
Windows 64 bits x64 | %SETUPDIR%\1033_ENU_LP\x64\sqlua.msi |
Windows 64 bits IA64 | %SETUPDIR%\1033_ENU_LP\ia64\sqlua.msi |
Ces packages sont également disponibles unitairement en ligne : Microsoft SQL Server 2008 Upgrade Advisor download
Sur une architecture Windows 64 bits x64, le programme Upgrade Advisor MS
SQL Server 2008 R2 est installé par défaut dans le répertoire C:\Program Files
(x86)\Microsoft SQL Server 2008 R2 Upgrade Advisor
.
Utilisation de l’Upgrade Advisor MS SQL Server 2008 R2 en lignes de commandes
Le binaire UpgradeAdvisorWizardCmd.exe
dans le répertoire d’installation de
l’Upgrade Advisor MS SQL Server 2008 R2 permet de lancer le conseiller de
migration en lignes de commandes et sur des moteurs SQL Server éventuellement
distants, comme c’est le cas ici.
Syntaxe et usage
DOS> UpgradeAdvisorWizardCmd.exe -?
usage: UpgradeAdvisorWizardCmd.exe [ -? ] | [ -ConfigFile filename | <server_info> ] [ -SqlUser login_id -SqlPassword password ] [ -NsSqlUser login_id -NsSqlPassword password ] [ -CSV ] where <server_info> is any combination of the following: -Server server_name -Instance instance_name -NsInstance NS_instance_name -AsInstance AS_instance_name -RsInstance RS_instance_name
- Les options
-SqlUser
et-SqlPassword
spécifient respectivement le compte SQL et son mot de passe pour se connecter à l’instance SQL Server distante à analyser. Ce compte doit avoir le rôlesysadmin
. Par défaut, l’utilitaireUpgradeAdvisorWizardCmd
tente de se connecter en authentification intégrée dans le serveur de destination. - L’option
-CSV
produit un fichier au format CSV (Comma Separated Value) en plus du rapport produit au format XML. - Les options
-NsInstance
,-AsInstance
et-RsInstance
indiquent respectivement les composants Notification Services, Analysis Services et Reporting Services. Ces options ne sont pas abordées dans cet article.
Voici quelques exemples d’usage.
1. Analyse de l’instance distante par défaut sur SRVWINFR24 en authentification intégrée
UpgradeAdvisorWizardCmd.exe -Server SRVWINFR24 -Instance MSSQLSERVER
2. Analyse de l’instance distante par défaut sur SRVWINFR24 avec le compte SQL sa :
UpgradeAdvisorWizardCmd.exe -Server SRVWINFR24 -Instance MSSQLSERVER -Sqluser sa -SqlPassword *******
3. Analyse de l’instance distante par défaut sur SRVWINFR24 en authentification intégrée en forçant la production du rapport supplémentaire au format CSV :
UpgradeAdvisorWizardCmd.exe -Server SRVWINFR24 -Instance MSSQLSERVER -CSV
4. Analyse de l’instance nommée distante MOSS_SYS sur FRDMOS306 en authentification intégrée :
UpgradeAdvisorWizardCmd.exe -Server FRDMOS306 -Instance MOSS_SYS
5. Analyse d’une instance distante en authentification intégrée avec un fichier de configuration :
UpgradeAdvisorWizardCmd.exe -ConfigFile config.xml
Les fichiers de configuration sont au format XML. Deux exemples sont donnés ci-dessous :
Instance par défaut | Serveur SRVWINFR24 | Instance nommée MOSS_SYS | Serveur FRDMOS306 | |
---|---|---|
|
|
Grâce aux fichiers de configuration, l’utilitaire
UpgradeAdvisorWizardCmd.exe
s’avère donc très pratique pour industrialiser des
analyses en masse de pré-migration vers SQL Server 2008 R2 pour un parc de
serveurs.
DOS> UpgradeAdvisorWizardCmd.exe -ConfigFile serveur1.xml
DOS> UpgradeAdvisorWizardCmd.exe -ConfigFile serveur2.xml
DOS> UpgradeAdvisorWizardCmd.exe -ConfigFile serveur3.xml
…
Et voici un exemple de lancement :
UpgradeAdvisorWizardCmd.exe -Server FRDMOS306 -Instance MOSS_SYS -CSV
Analyze SQL Server Checking for SQL Connectivity... Starting analysis... Analyzing 0% Analyzing 0% … Analyzing 97% Analyzing 99% Creating report Creating report Analysis completed. Issues may be viewed using the SQL Server 2008 R2 Upgrade Advisor Report Viewer.
Rapports produits
Si l’Upgrade Advisor est lancé avec le compte
<mon-domain>\<user>
, les rapports du conseiller sont produits dans
le répertoire C:\Documents and Settings\<user>\My Documents\SQL Server
2008 R2 Upgrade Advisor Reports
. Ce répertoire est appelé %REPORTDIR%
dans la
suite.
La localisation des rapports diffère quelque peu entre une instance par défaut et une instance nommée :
Instance par défaut sur le serveur SERVER |
%REPORTDIR%\SERVER |
Instance nommée INSTANCE sur le serveur SERVER |
%REPORTDIR%\SERVER\INSTANCE |
Le rapport s’appelle DE.xml
pour la version XML. Lorsque l’option -CSV
est
spécifiée lors de l’analyse avec UpgradeAdvisorWizardCmd
, le rapport
supplémentaire au format csv s’appelle DE.xml.csv
.
Voici quelques exemples obtenus dans les rapports au format csv pour les 2
instances SRVWINFR24
et FRDMOS306\MOSS_SYS
. À exploiter pour notre plus grand bonheur !
"Database Server","PreOrPostUpgrade","Remove references to deprecated system stored procedures",
"Upgrade Advisor detected statements that reference undocumented system stored procedures
and extended stored procedures that are not available in SQL Server 2005 or later.
Statements that reference these objects will fail. Do not use undocumented system objects
or APIs as the functionality might change or be removed without notification
in a future release.",
"Source Type: database","Database: master",
"Object Name: sp_configure ''awe enabled''",
"Procedure type: Deprecated",
"Procedure name: sp_configure ''awe enabled''",
...
"Database Server","PreOrPostMigration","Column aliases in ORDER BY clause cannot be prefixed
by table alias",
"In SQL Server 2005 or later, column aliases in the ORDER BY clause cannot be prefixed
by the table alias.","Type: Database",
"Database name: WSS_Content_Facilities",
"Object name: proc_GetTpPageMetaData","Object type: P ",