SharePoint 2010: WSS_Logging Datenbank zu groß

Trivadis MIB Team

SQL Server, SharePoint and more...

SharePoint 2010: WSS_Logging Datenbank zu groß

Rate This
  • Comments 2

SharePoint sammelt verschiedenste Daten über die Farm in der WSS_Logging Datenbank. Je nach Konfiguration kann diese dann auch relativ groß werden.

Die Größe hängt vor allem von der Einstellung ab für wie viele Tage die Informationen gespeichert werden sollen. Dies lässt sich relativ einfach mit Powershell abfragen.

   1: Get-SPUsageDefinition
image

Möchte man nun die Anzahl der Tage die gespeichert werden sollen reduzieren, kann man dies auch mit Powershell machen.

Entweder für ein einzelnes Objekt

   1: Set-SPUsageDefinition -Identity"Feature Use" -DaysRetained 5

oder gleich für alle.

   1: Set-SPUsageDefinition -Identity "Sandboxed Requests" -DaysRetained 5
   2: Set-SPUsageDefinition -Identity "Content Import Usage" -DaysRetained 5
   3: Set-SPUsageDefinition -Identity "Workflow" -DaysRetained 5
   4: Set-SPUsageDefinition -Identity "Clickthrough Usage" -DaysRetained 5
   5: Set-SPUsageDefinition -Identity "Content Export Usage" -DaysRetained 5
   6: Set-SPUsageDefinition -Identity "Page Requests" -DaysRetained 5
   7: Set-SPUsageDefinition -Identity "Feature Use" -DaysRetained 5
   8: Set-SPUsageDefinition -Identity "Search Query Usage" -DaysRetained 5
   9: Set-SPUsageDefinition -Identity "Site Inventory Usage" -DaysRetained 5
  10: Set-SPUsageDefinition -Identity "Sandboxed Requests Monitored Data" -DaysRetained 5
  11: Set-SPUsageDefinition -Identity "Timer Jobs" -DaysRetained 5
  12: Set-SPUsageDefinition -Identity "Rating Usage" -DaysRetained 5

Damit dann auch wirklich aufgeräumt wird, müssen noch die zugehörigen Timerjobs gestartet werden. Dies sind Usage Data Import, and Usage Date Processing.

Danach wird der Platz in der WSS_Logging DB freigegeben und die Datenbank kann mit SQL Server mitteln verkleinert werden.

Was aber wenn die Datenbank so schnell angewachsen ist, dass auf dem Datenlaufwerk des SQL Servers kaum noch Platz vorhanden ist und daher ein Ausfall der SharePoint Farm droht?

In einem solchen Fall kann man nur noch die Inhalte aus der Logging DB löschen. Dies klappt am einfachsten mit folgendem TSQL Code

   1: DECLARE @TableName AS VARCHAR(MAX)
   2:  
   3: DECLARE table_cursor CURSOR
   4: FOR
   5:  SELECT TABLE_NAME
   6:  FROM INFORMATION_SCHEMA.TABLES
   7:  WHERE TABLE_TYPE = 'BASE TABLE'
   8:  AND TABLE_NAME LIKE '%_Partition%'
   9: OPEN table_cursor
  10:  
  11: FETCH NEXT FROM table_cursor INTO @TableName
  12:  
  13: WHILE @@FETCH_STATUS = 0
  14: BEGIN
  15:  DECLARE @SQLText AS NVARCHAR(4000)
  16:  
  17:  SET @SQLText = 'TRUNCATE TABLE ' + @TableName
  18:  
  19:  EXEC sp_executeSQL @SQLText
  20:  
  21:  FETCH NEXT FROM table_cursor INTO @TableName 
  22: END
  23:  
  24: CLOSE table_cursor
  25: DEALLOCATE table_cursor

Damit werden alle Logging Infos aus der Datenbank entfernt und diese kann verkleinert werden.

Wichtig: Dies sollte nur im Notfall durchgeführt werden.

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment
  • Post
  • Tipps DataForm and DataView WebParts cannot display data from other site when on SitePage Microsoft Dynamics

  • Tool "AutoSPSourceBuilder" Max Melcher introduces a PowerShell Script which can create Installation packages

Page 1 of 1 (2 items)