Ograniczenia SQL Server Express

135

Mój dostawca usług hostingowych (Rackspace) oferuje w pełni zarządzany serwer dedykowany z zainstalowaną wersją SQL Server Web (). Moja firma zajmuje się tworzeniem stron internetowych i ma ponad 20 klientów korzystających z ASP.Net + SQL Server 2005.

Myślę o obniżeniu kosztów, instalując zamiast tego darmowy SQL Server 2008 Express. Znam ograniczenia 1 GB pamięci RAM i 4 GB / bazę danych (czy to prawda?). Chciałbym wiedzieć:

  1. Czy istnieje ograniczenie LICZBY baz danych, które mogę zainstalować w wersji ekspresowej?
  2. Czy są jakieś inne ograniczenia, na które powinienem uważać? Obawiam się, że muszę skonfigurować kopię zapasową bazy danych - w przypadku edycji ekspresowej może to być znacznie trudniejsze.
  3. Jakaś inna rada?
Vertexwahn
źródło
Czy jest jakieś ograniczenie liczby połączeń?
codeulike
5
@codeulike: nie, nigdy nie było ograniczenia liczby połączeń w MSDE / SQL Express, a „Workload Governor”, ​​który ograniczył liczbę aktywnych
Tao

Odpowiedzi:

147

Istnieje szereg ograniczeń, w szczególności:

  • Ograniczony do pojedynczego procesora (w 2012 r. To ograniczenie zostało zmienione na „Mniejsze z jednego gniazda lub czterech rdzeni”, więc możliwa jest wielowątkowość)
  • 1 GB pamięci RAM (tak samo w latach 2008/2012)
  • Rozmiar bazy danych 4 GB (zwiększony do 10 GB w programach SQL 2008 R2 i SQL 2012) na bazę danych

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

Jeśli chodzi o liczbę baz danych, ten artykuł MSDN mówi, że nie ma ograniczeń:

Limit rozmiaru bazy danych 4 GB dotyczy tylko plików danych, a nie plików dziennika. Nie ma jednak ograniczeń co do liczby baz danych, które można podłączyć do serwera.

Jednak, jak wspomniano w komentarzach i powyżej, limit rozmiaru bazy danych został podniesiony do 10 GB w 2008 R2 i 2012. Ponadto ten limit 10 GB dotyczy tylko danych relacyjnych, a dane Filestream nie wliczają się do tego limitu ( http: // msdn .microsoft.com / en-us / library / bb895334.aspx ).

SqlRyan
źródło
Cześć, Jak wspomniano powyżej, nie przeszkadzają mi te ograniczenia - martwię się tylko faktycznym nie. baz danych - masz pomysł na ten temat?
4
@David Brunelle: O ile rozumiem, ograniczenie do 4 GB dotyczy jednej bazy danych. W artykule MSDN jest napisane: „Bazy danych mają maksymalny rozmiar 4 GB”. Zobacz także to pytanie: stackoverflow.com/questions/955926/sql-server-express-4gb-limit
Sub-Star
6
Ta odpowiedź mogłaby zostać zaktualizowana, SQL Server 2008 R2 dopuszcza do 10 GB na bazę danych.
Tao,
3
@RudolfDvoracek Według msdn.microsoft.com/en-us/library/bb895334.aspx , Filestream nie wlicza się do tego limitu: „SQL Server Express obsługuje FILESTREAM. Limit rozmiaru bazy danych 10 GB nie obejmuje kontenera danych FILESTREAM ”.
SqlRyan
1
Limity procesora i pamięci RAM dotyczą instancji, podczas gdy Express obsługuje 50 instancji na serwer.
Hans Malherbe
14

Innym ograniczeniem do rozważenia jest to, że wersje SQL Server Express przechodzą w tryb bezczynności po pewnym okresie nieużywania.

Zrozumienie zachowania SQL Express: wykorzystanie zasobów w czasie bezczynności, AUTO_CLOSE i wystąpienia użytkownika :

Gdy SQL Express jest w stanie bezczynności , agresywnie przycina z powrotem zestaw pamięci roboczej, zapisując buforowane dane z powrotem na dysk i zwalniając pamięć.

Ale można to łatwo obejść: czy istnieje sposób, aby powstrzymać SQL Express 2008 przed Idlingiem?

agentnega
źródło
12

Możesz tworzyć instancje użytkowników i kazać każdej aplikacji komunikować się z własnym SQL Express.

Nie ma ograniczenia liczby baz danych.

Remus Rusanu
źródło
Skoro możemy stworzyć 100 baz danych, o ile łączna wielkość nie przekracza 4 GB, czy możemy stworzyć 100 baz, każda do 4 GB?
PRINCESS FLUFF
7
Każda indywidualna baza danych musi mieć mniej niż 4 GB.
Remus Rusanu
Dobry pomysł, ponieważ w przypadku oddzielnych instancji każda instancja powinna mieć możliwość korzystania z własnego 1 GB pamięci i 1 procesora.
treaschf
Jeśli dwie instancje użytkowników są podłączone do tego samego pliku .mdf, czy nie spowoduje to problemów?
składnik_15939
Czy sql express pozwoli na zainstalowanie wielu instancji? Czy nie dotkną go limity zasobów? Czyli wszystkie 5 instancji sql razem będą nadal mogły używać tylko 1 GB pamięci RAM?
Zapnologica
4

Jeśli przełączysz się z sieci Web na Express, nie będziesz już mógł korzystać z usługi SQL Server Agent, więc musisz ustawić inny harmonogram konserwacji i kopii zapasowych.

Jason Cumberland
źródło
4

Nie można z nim zainstalować usług integracji. Express nie obsługuje usług integracji. Więc jeśli chcesz budować, powiedzmy, pakiety SSIS, będziesz potrzebować przynajmniej wersji standardowej.

Zobacz więcej tutaj .

niklasolsn
źródło