Limitations de SQL Server Express

135

Mon fournisseur d'hébergement (Rackspace) propose un serveur dédié entièrement géré avec la version Web de SQL Server () installée. Mon entreprise gère le développement Web et compte plus de 20 clients utilisant ASP.Net + SQL Server 2005.

Je pense à réduire les coûts en installant à la place le SQL Server 2008 Express gratuit. Je connais les limitations de 1 Go de RAM et de 4 Go / base de données (est-ce correct?). Ce que j'aimerais savoir c'est:

  1. Y a-t-il une limite au NOMBRE de bases de données que je peux installer avec l'édition express?
  2. Y a-t-il d'autres limitations dont je devrais me méfier? Je suis un peu inquiet d'avoir à configurer la sauvegarde de la base de données - avec l'édition express, cela pourrait être beaucoup plus difficile.
  3. Un autre conseil?
Vertexwahn
la source
Y a-t-il une limitation du nombre de connexions, n'importe qui?
codeulike
5
@codeulike: non, il n'y a jamais eu de limite sur le nombre de connexions dans MSDE / SQL Express, et le "Workload Governor" qui limitait le nombre de connexions ACTIVE à 5 dans MSDE a été supprimé dans SQL Express: blogs.msdn.com /b/euanga/archive/2006/03/09/545576.aspx
Tao

Réponses:

147

Il existe un certain nombre de limitations, notamment:

  • Contraint à un seul processeur (en 2012, cette limitation a été modifiée en "Le moindre d'un socket ou de quatre cœurs", le multi-threading est donc possible)
  • 1 Go de RAM (identique en 2008/2012)
  • Taille de base de données de 4 Go (portée à 10 Go dans SQL 2008 R2 et SQL 2012) par base de données

http://www.dotnetspider.com/tutorials/SqlServer-Tutorial-158.aspx http://www.microsoft.com/sqlserver/2008/en/us/editions.aspx

En ce qui concerne le nombre de bases de données, cet article MSDN dit qu'il n'y a pas de limite:

La limite de taille de base de données de 4 Go s'applique uniquement aux fichiers de données et non aux fichiers journaux. Cependant, il n'y a aucune limite au nombre de bases de données pouvant être attachées au serveur.

Cependant, comme mentionné dans les commentaires et ci-dessus, la limite de taille de la base de données a été augmentée à 10 Go en 2008 R2 et 2012. En outre, cette limite de 10 Go s'applique uniquement aux données relationnelles, et les données Filestream ne sont pas prises en compte dans cette limite ( http: // msdn .microsoft.com / fr-fr / library / bb895334.aspx ).

SqlRyan
la source
Salut, Comme mentionné ci-dessus, je suis d'accord avec ces limitations - je ne m'inquiète que du non. des bases de données - une idée à ce sujet?
4
@David Brunelle: La limitation de 4 Go est par base de données, pour autant que je sache . Dans l'article MSDN, il est dit: "Les bases de données ont une taille maximale de 4 Go". Voir aussi cette question: stackoverflow.com/questions/955926/sql-server-express-4gb-limit
Sub-Star
6
Cette réponse pourrait être mise à jour, SQL Server 2008 R2 autorise jusqu'à 10 Go par base de données.
Tao
3
@RudolfDvoracek Selon msdn.microsoft.com/en-us/library/bb895334.aspx , Filestream ne compte pas dans cette limite: «SQL Server Express prend en charge FILESTREAM. La limite de taille de base de données de 10 Go n'inclut pas le conteneur de données FILESTREAM . "
SqlRyan
1
Les limites de CPU et de RAM sont par instance tandis qu'Express prend en charge 50 instances par serveur.
Hans Malherbe
14

Une autre limitation à prendre en compte est que les éditions SQL Server Express passent en mode inactif après une période d'inutilisation.

Comprendre le comportement de SQL Express: utilisation des ressources en temps d'inactivité, AUTO_CLOSE et instances utilisateur :

Lorsque SQL Express est inactif, il réduit de manière agressive la mémoire de travail définie en réécrivant les données mises en cache sur le disque et en libérant la mémoire.

Mais cela est facile à contourner: existe-t-il un moyen d'empêcher SQL Express 2008 de tourner au ralenti?

agentnega
la source
12

Vous pouvez créer des instances utilisateur et faire en sorte que chaque application communique avec son propre SQL Express.

Il n'y a pas de limite sur le nombre de bases de données.

Remus Rusanu
la source
Comme dans nous pouvons créer 100 bases de données tant que la taille totale ne dépasse pas 4 Go, ou nous pouvons créer 100 bases de données, chacune jusqu'à 4 Go?
PRINCESS FLUFF
7
Chaque base de données individuelle doit être inférieure à 4 Go.
Remus Rusanu
Bonne idée, comme pour les instances séparées, chaque instance doit pouvoir utiliser son propre 1 Go de mémoire et 1 processeur.
Treasurychf
Si deux instances utilisateur sont connectées au même fichier .mdf, cela ne posera-t-il pas de problèmes?
ingrédient_15939
SQL Express permettra-t-il l'installation de plusieurs instances? Ne sera-t-il pas atteint par les limites de ressources? C'est-à-dire que les 5 instances SQL réunies ne seront toujours autorisées à utiliser que 1 Go de RAM?
Zapnologica
4

Si vous passez du Web à Express, vous ne pourrez plus utiliser le service SQL Server Agent. Vous devez donc configurer un autre planificateur pour la maintenance et les sauvegardes.

Jason Cumberland
la source
4

Vous ne pouvez pas installer Integration Services avec. Express ne prend pas en charge les services d'intégration. Donc, si vous voulez construire des packages SSIS, vous aurez besoin d'au moins Standard Edition.

En savoir plus ici .

Niklasolsn
la source