0

Je ne suis pas habitué à travailler avec SQL Server (d'habitude je viens d'utiliser express). Je l'exécute sur Windows Server 2008, iis7.de travail avec SQL Server 2008

J'ai joint la base de données à mon serveur sql. J'ai fait un site web dans iis7 mais j'ai reçu ce message d'erreur.

Impossible d'ouvrir la base de données "Phaeton.mdf" demandée par le login. La connexion a échoué. La connexion a échoué pour l'utilisateur 'NT AUTHORITY \ NETWORK SERVICE'.

connectionString J'utilise

<add key="PhaetonConnectionString" value="Data Source=.;Initial Catalog=Phaeton.mdf;Integrated Security=True"/> 

Merci

+0

Quel est le nom de votre base de données, est-ce que c'est Phaeton.mdf? ou juste Phaeton? –

+0

Phaeton puis le .mdf pour le fichier. Qu'est-ce que cela pourrait être le problème? Je vais vérifier dès que possible lorsque je suis à l'ordinateur –

Répondre

0

problème est que la base de données que j'ai essayé de joindre était sql exprimer

+0

Vous pouvez attacher une base de données SQL Express à une version plus récente de SQL Server. Vous ne pouvez pas le rattacher à l'ancien serveur SQL Express par la suite. – Aaronaught

1

Puisque vous utilisez la sécurité intégrée de la connexion SQL utilisera l'identité Windows qui est passé d'ASP.NET.

Vous pouvez soit modifier votre sécurité en mode mixte, ce qui implique la suppression de la sécurité intégrée. Ou utilisez l'emprunt d'identité (vérifiez IIS et votre web.config) et accordez à cet utilisateur l'accès à la base de données.

espoir qui aide

1

Vous devez configurer votre application dans IIS pour désactiver l'accès anonyme et activez l'authentification Windows (Si en glissement annuel veulent utiliser la sécurité intégrée).

Access SQL Server Using Windows Integrated Security

L'autre façon, vous pouvez utiliser une chaîne de connexion avec l'utilisateur/mot de passe ... avec la connexion appropriée

+0

Je ne veux pas utiliser l'authentification Windows. J'utilise plutôt un type d'utilisateur/mot de passe.Où puis-je configurer cela? Je vais avoir environ 5 sites sur mon serveur maintenant est-il donc un moyen de faire un utilisateur séparé pour chaque site? –

+0

Eh bien, vous pouvez créer une connexion SQL (à partir de Sql Management Studio par exemple) et vous pouvez assigner des droits à la base de données et aux objets de bases de données auxquels il a accès. –

0

le problème est ici:

initial Catalog = Phaeton.mdf

Dans SQL Server Express, vous pouvez attacher un nom de fichier en tant que base de données locale. Ce n'est pas comme ça que ça marche sur une production SQL Server. Dans les versions non Express, vous attachez une base de données en permanence, ce que vous avez déjà fait, et vous lui attribuez un nom logique, ce qui est différent du nom de fichier principal.

Je suppose que si le nom de fichier était "Phaeton.mdf" alors vous avez probablement nommé la base de données "Phaeton". Dans ce cas, cette partie de la chaîne de connexion doit être simplement:

Initial Catalog = Phaeton

Si ce n'est pas le bon nom, vous pouvez obtenir une liste de noms de base de données à partir du serveur en utilisant les éléments suivants script:

USE master; 
SELECT name FROM sys.databases