Question

Je développe actuellement une application devant stocker des données dans une base de données. J'utilise SQL Server Express 2005 avec services avancés (car nous avons besoin de fonctionnalités de recherche en texte intégral).

La tradition locale des entreprises indique qu'il y a eu toutes sortes de problèmes étranges il y a quelques années lorsque deux produits utilisaient MS SQL Server avec l'instance par défaut et qu'ils avaient eu des moments intéressants à nettoyer pour que chaque application utilise une instance nommée.

Comme je ne me souviens pas de leurs problèmes exacts ... est-il conseillé pour une application qui doit s'exécuter de manière stable sans intervention d'une autre application d'avoir sa base de données dans sa propre instance nommée? Si oui, pourquoi? Quelle isolation supplémentaire me donne-t-il par opposition à la liaison de la base de données à l’instance par défaut (ou même à l’utilisation d’une instance watchacallit - utilisateur? - où vous spécifiez l’emplacement du fichier mdb dans la chaîne de connexion).

Mise à jour:

Ce qui me préoccupe le plus, ce n’est pas la performance / le processeur: je parle d’une application qui gère les personnes / invités à la réception des grandes organisations, par exemple un hôtel. Je pense que même SQLite pourrait facilement gérer la quantité de données dont j'avais besoin (indépendamment de certaines fonctionnalités telles que la recherche en texte intégral).

Ma principale préoccupation concerne les clients qui installent des éléments qui interfèrent. D'après la réponse de Mitchell et le commentaire de John, je pense qu'il est conseillé de rester dans une instance nommée - mais si vous avez d'autres raisons à cela, énoncez-les.

Était-ce utile?

La solution

Quelques petites choses.

  1. L'utilisation de bases de données attachées (User instance dbs) est un PITA royal que les administrateurs doivent gérer, car elles doivent être attachées pour être accessibles à partir de SSMS, entre autres.

  2. Le fait de placer des applications individuelles sur leurs propres instances nommées de SQL Server créera des processus individuels pour chaque application, en isolant les ressources et les espaces mémoire pour chacune.

Est-il vraiment nécessaire que chaque application dispose de sa propre instance de SQL Server? Non, je dirais que ce n’est généralement pas le cas, à moins que ce soit vraiment critique à 100%. Cependant, si c’est aussi critique, je serais surpris qu’il utilise SQL Express.

Je recommanderais toutefois un maint. perspective que vous utilisez une base de données standard, plutôt qu'une instance d'utilisateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top