L'installation automatique de SQL 2008 échoue avec l'erreur des caractères illégaux dans le chemin d'accès
Description du problème : La semaine dernière, j'étais avec mon client effectuant plusieurs installations sans assistance de SQL Server 2008 : Setup.exe /q /configurationfile=c:\myconfiguationfile.ini
Dans le fichier myconfiguationfile.ini, le paramètre INSTANCEDIR positionné avec la valeur "E:\"
Mais le programme d'installation a échoué avec le message: « Caractères illégaux dans le chemin d'accès » comme ci-dessous dans details.txt :
Slp: Exception type: Microsoft.SqlServer.Chainer.Infrastructure.InputSettingValidationException
Slp: Message:
Slp: The path E: MSSQL10.X\MSSQL\DATA is malformed or not absolute.
Nous pouvons voir qu'après E: il manque le \
Cause : Le programme d'installation de SQL Server 2008 semble ne pas interprèter INSTANCEDIR correctement. Il considère "\"" comme un caractère d'échappement de guillemets, ce qui est mauvais.
Solution de contournement : Utilisez "E: \\ " au lieu de "E:\" si vous voulez installer SQL dans le dossier racine.
Dédicace à Paulo. A, qui a découvert une autre solution de contournement. Il suffit de supprimer les guillemets, comme INSTANCEDIR=E:\ au lieu de INSTANCEDIR="E:\"
Update : Depuis, la documentation a été mise à jours
Procédure : installer SQL Server 2008 R2 à partir de l'invite de commandes :
"Notez l'utilisation des caractères d'échappement :
/INSTANCEDIR=c:\PathName est pris en charge.
/INSTANCEDIR=c:\PathName\ est pris en charge.
/INSTANCEDIR="c:\PathName\\" est pris en charge.
/INSTANCEDIR="c:\PathName\" n'est pas pris en charge."
Michel Degremont | Premier Field Engineer - SQL Server Core Engineer |