it-swarm.com.de

Wie überprüfe ich, ob SP1 für SQL Server 2008 R2 bereits installiert ist?

Ich habe Probleme herauszufinden, ob das SP1 bereits installiert ist. Ich glaube nicht, dass ich es vom Management Studio aus überprüfen könnte, da es sich um eine andere Anwendung handelt. Aber der SQl-Server selbst hat keine Benutzeroberfläche, die unter "about" überprüft werden muss. :)

Irgendwelche Ideen?

16
Houman

Es ist noch nicht SP1 für SQL Server 2008 R2 vorhanden.

Um dies zu überprüfen, können Sie jedoch die Servereigenschaft productlevel überprüfen:

SELECT  
  SERVERPROPERTY('productlevel') 

Diese enthält RTM für die ursprüngliche RTM -Version (wie in meinem Fall jetzt mit SQL Server 2008 R2) oder enthält Informationen zum installierten Service Pack.

Ich verwende normalerweise diese SQL-Abfrage:

SELECT  
    SERVERPROPERTY('productversion') as 'Product Version', 
    SERVERPROPERTY('productlevel') as 'Patch Level',  
    SERVERPROPERTY('edition') as 'Product Edition',
    SERVERPROPERTY('buildclrversion') as 'CLR Version',
    SERVERPROPERTY('collation') as 'Default Collation',
    SERVERPROPERTY('instancename') as 'Instance',
    SERVERPROPERTY('lcid') as 'LCID',
    SERVERPROPERTY('servername') as 'Server Name'

Hier werden Ihre Serverversion, Edition, Service Pack (falls zutreffend) usw. aufgeführt. In etwa Folgendes:

Product Version  Patch Level  Product Edition             CLR Version  Default Collation     Instance  LCID  Server Name
10.50.1617.0       RTM        Developer Edition (64-bit)  v2.0.50727   Latin1_General_CI_AS   NULL     1033  *********

Update: Diese Antwort war korrekt, als sie veröffentlicht wurde - Juli 2011.

Im November 2012 ist SQL Server 2008 R2 Service Pack 2 zum Download verfügbar

24
marc_s

Beachten Sie, dass es zwei Versionen von Service Pack 1 gibt - die CTP, die im April veröffentlicht wurde, und die endgültige Version, die jeden Tag veröffentlicht werden sollte. Beide Versionen geben "SP1" für ProductLevel zurück und beide sagen "Microsoft SQL Server 2008 R2 (SP1) ..." für @@ VERSION. Der Unterschied wird sein, dass @@ VERSION für das CTP als Nächstes 10.50.2425 und ein Datum vom 6. April 2011 angibt; Das endgültige Release wird eine höhere Build-Nummer haben und ein späteres Datum widerspiegeln (Ich werde versuchen, mich daran zu erinnern, diesen Post erneut zu aktualisieren, wenn SP endgültig veröffentlicht wurde).

Es tut mir leid, dass Sie spät in die Diskussion aufgenommen wurden, aber zum Vorteil zukünftiger Leser wollte ich klarstellen, dass die Verwendung von "SP1" allein auf ProductLevel nicht die narrensicherste Möglichkeit ist, um sicherzustellen, dass Sie sich in der endgültigen Version von Service Pack 1 befinden.

Und nicht schlecht dabei, 2008 und 2008 R2 durcheinander zu bringen. Dies war ein hirnrottiger Namensfehler von Microsoft im Sinne von TIMESTAMP, DATETIME2 und DACPAC ... und basiert auf der Anzahl der Personen, die weiterhin versuchen, 2008 Updates für R2 und umgekehrt zu installieren, und die fehlende Adoption Zumindest für den recht genauen Eindruck, dass R2 wahrscheinlich das teuerste Service Pack aller Zeiten ist, hoffe ich, dass sie gelernt haben, wie dumm es war.

7
Aaron Bertrand

Um die SQL SERVER-Informationen der installierten Version zu überprüfen, verwenden Sie dieses Skript:

   SELECT 
              SERVERPROPERTY('MachineName') as Host,
              SERVERPROPERTY('InstanceName') as Instance,
              SERVERPROPERTY('Edition') as Edition, /*shows 32 bit or 64 bit*/
              SERVERPROPERTY('ProductLevel') as ProductLevel, /* RTM or SP1 etc*/
              Case SERVERPROPERTY('IsClustered') when 1 then 'CLUSTERED' else
              'STANDALONE' end as ServerType,
              @@VERSION as VersionNumber

Die Produktebene bestimmt, ob Sie SP1, SP2 installiert haben oder nicht.

0
Ashraf Abusada