SQL Server

Changer la Collation de votre SQL Server (après installation)

Changer la Collation de votre SQL Server (après installation)

Configurer la collation ou jeux de caractères est une tâche importante lorsque vous déployez des bases de données ou une nouvelle instance SQL Server. En effet, selon que vous disposez d’un ISO en français ou en anglais (ou autre), la Collation par défaut ne sera pas la même. Et cela peut avoir un impact sur votre application ou l’outil qui utilisera ce SQL Server.

Malheureusement, cette option se configure au moment de la création de l’instance SQL. Sauf que l’option n’est pas très visible et il est facile de passer à côté.

Lors de l’installation, lorsque vous arrivez à l’étape Server Configuration, vous aurez une fenêtre avec 2 onglets : Services Accounts et Collation. C’est sans cette section que vous pourrez changer la Collation.

Le problème avec ce réglage c’est qu’il se configure au moment de la création de l’instance. De ce fait, si vous vous trompez, il y a de forte chance que vous deviez supprimer / recréer l’instance.

En tout cas, c’était le cas dans les précédentes versions de SQL Server. Mais heureusement dans les versions les plus récentes, il est possible de corriger ce réglage sans avoir à tout réinstaller.

Faisons le test. J’ai créé une instance ayant pour Collation : French_CI_AI (un grand classique). Mais imaginons que nous souhaitions plutôt la collation suivante : SQL_Latin1_General_CP1_CI_AI (recommandée dans bien des cas).

Avant de procéder, pensez à désactiver l’ensemble des services liés à votre instance SQL Server.

Si vous disposez d’une VM ou serveur ne comptant qu’une seule instance SQL (avec le nom classique par défaut MSSQLSERVER), vous pouvez changer la Collation en utilisant la ligne de commande suivante depuis le dossier Binn de votre instance SQL. 

Par défaut : 

C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn

sqlservr -m -T4022 -T3659 -q"SQL_Latin1_General_CP1_CI_AI"

Si vous disposez d’un serveur composé de plusieurs instances ; vous pouvez choisir de changer la Collation pour une instance spécifique avec un paramètre en plus :

sqlservr -m -T4022 -T3659 -s"MSSQLSERVER" -q"SQL_Latin1_General_CP1_CI_AI"

L’opération devrait prendre que quelques secondes mais affichera plein de choses à l’écran (je ne peux pas tout screenshoter) et ça devrait ressembler à quelque-chose comme suit :

A la fin, vous devriez lire un message : Recovery is complete. This is an informational message only. No user action is required… Il ne vous restera alors plus qu’à relancer vos services et vérifier le résultat dans SQL Management Studio.

Le changement a bien été pris en compte. 🙂

Plus d’informations en visitant ces liens :

Share
Published by
thibault

Recent Posts

Google Chrome bloque uBlock Origin : Quand la sécurité masque des intérêts commerciaux

Google Chrome bloque uBlock Origin : Quand la sécurité masque des intérêts commerciaux Depuis début…

18 heures ago

Vie privée préservée : l’Assemblée rejette les portes dérobées

Vie privée préservée : l'Assemblée rejette les portes dérobées L'Assemblée nationale française rejette la mise…

2 jours ago

Microsoft abandonne Remote Desktop Connection au profit de la Windows App

Microsoft abandonne Remote Desktop Connection au profit de la Windows App Microsoft a récemment annoncé…

1 semaine ago

Google contraint de vendre Chrome après une décision antitrust

Google contraint de vendre Chrome après une décision antitrust Le département américain de la Justice…

1 semaine ago

L’évolution de la technologie et le déclin des plateformes numériques

Illustration - Image générée par IA L'avancement technologique a radicalement transformé notre façon de communiquer,…

2 semaines ago

Discord prépare son entrée en Bourse : une nouvelle ère pour la plateforme des gamers

Depuis sa création en 2015, Discord est devenue une plateforme incontournable dans le monde du…

2 semaines ago