Alias ​​de SQLEXPRESS


17

J'ai une édition développeur de SQL Server 2008, mais j'ai maintenant un logiciel avec une chaîne de connexion codée en dur:

Data Source=.\SQLEXPRESS;Initial Catalog=db;User Id=sa;Password=1234;

Maintenant, j'ai essayé d'ajouter un alias dans l'outil de configuration à SQLEXPRESS, mais il ne veut tout simplement pas utiliser ce nouvel alias.

J'ai activé TCP / IP et redémarré le service.


Savez-vous de quel type d'application il s'agit? S'agit-il d'une application .NET, auquel cas vous avez un fichier app.config ou web.config?
squillman

Codage en dur de la chaîne de connexion (y compris le nom d'utilisateur et le mot de passe)? POURQUOI les gens continuent-ils à faire des choses aussi horribles?!?
Massimo

Réponses:


27

Suivez ces étapes pour ajouter un alias:

  1. Ouvrez le Gestionnaire de configuration SQL Server
  2. Développer la configuration du client natif SQL
  3. Cliquez avec le bouton droit sur Alias ​​et sélectionnez New Alias...
  4. Dans la fenêtre Nouvel alias:
    • Entrez .\SQLEXPRESSpour le nom d'alias.
    • Sélectionnez le protocole approprié (par exemple, canaux nommés)
    • Entrez .pour le nom du serveur (qui est équivalent à localhost).
  5. Cliquez sur OK pour effectuer le changement.

La modification du fichier HOSTS pour inclure un paramètre pour SQLEXPRESS redirige uniquement les recherches DNS pour une machine appelée SQLEXPRESS vers l'adresse IP spécifiée. Cela ne provoquera .\SQLEXPRESSpas la résolution de l'instance SQL localhost.


1
Très bonne réponse! J'étais sur le point de commencer à utiliser des numéros de port explicites et ainsi de suite lorsque je suis tombé sur cette réponse. Cela a parfaitement résolu mes problèmes. Je vous remercie! :)
wasatz

6
Si vous utilisez Windows 64 bits, vous devrez peut-être créer l'alias dans la configuration du client natif SQL 32 bits et 64 bits.
Tod Thomson

J'ai trouvé que mon problème était d'essayer d'utiliser TCP, changer l'alias pour utiliser des canaux nommés l'a fait fonctionner.
BlackICE

2
Si cela aide quelqu'un d'autre, j'ai dû utiliser le nom de .\SQLEXPRESS\\.\pipe\MSSQL$STOLLEDEV\sql\query
canal

En plus des conseils ci-dessus, j'ai également ajouté localhost \ SQLEXPRESS car un alias est traité explicitement. J'ai également ajouté les deux alias à ma configuration 32 bits et 64 bits uniquement pour la ceinture et les accolades.
Le sénateur
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.