Da ich in meinen letzten Blog-Einträgen davon geschrieben habe, Lesezugriffe direkt auf einer SharePoint-Inhalts-Datenbank durchzuführen, will ich an dieser Stelle noch ein paar sensibilisierende Worte anbringen:
- Prinzipiell ist der direkte Zugriff auf eine SharePoint-Datenbank (egal ob Inhalts-, Admin oder sonstige Datenbank) mit Vorsicht zu genießen und sollte nur von Experten durchgeführt werden!
- Das Ändern eines SharePoint-Datenbank-Schemas führt dazu, dass sich das Produkt als Ganzes in einem nicht mehr von Microsoft “supporteten” Zustand befindet. (Falls solche Änderungen vorgenommen werden, sollte man immer in der Lage sein, ein Backup wieder herzustellen.)
“Direct modification of the SharePoint database or its data is not recommended because it puts the environment in an unsupported state.” (Quelle: http://msdn.microsoft.com/en-us/library/bb861829(v=office.12).aspx, 29.07.2011 > Die Quelle sollte auch als Grundlage für SharePoint 2010 angesehen werden.)
- Microsoft hat für SharePoint 2007 ein paar Aktivitäten auf SQL-Server-Seite dokumentiert, die teilweise erlaubt sind. Ganz konkret ist allerdings nicht herauszulesen, was nun erlaubt ist und was verboten. (Unter anderem wird vom Anlegen von Triggern gesprochen, aber auch davon, dass vom direkten Lesen in SharePoint-Datenbanken abgeraten wird.
“… performing any read operations directly against these databases is unsupported.” (Quelle: http://support.microsoft.com/kb/841057/en-us, 29.07.2011)
- Von Microsoft gibt es ein WhitePaper “Database maintenance for Office SharePoint Server 2007” (Stand: 05.11.2009), welches u.a. das Ausführen von StoredProcedures explizit rät, um Fragmentierungen in einer SharePoint-Datenbank zu minimieren.
Update: Es gibt auch ein WhitePaper für SharePoint 2010: Database maintenance for SharePoint Server 2010 (Stand: 12.05.2011)
Update: Seit 11.01.2012 auch in Deutsch verfügbar: Database maintenance for SharePoint Server 2010 (DE) (Stand: 23.01.2012)
- Alles in allem raten SharePoint-Experten wie bspw. Joel Oleson dringend davon ab, SharePoint-Datenbanken direkt zu kontaktieren oder gar anzupassen. (Quelle: http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=372, 12.08.2010)
- Ein Beispiel für schlechte Erfahrungen durch direkte Nutzung von SharePoint-Datenbanken (statt der Nutzung des SharePoint Objekt-Modells) können auch in Darko Milevski´s Blog erlesen werden. (Quelle: http://mkdot.net/blogs/darko/archive/2011/07/05/don-t-mess-with-sharepoint-database.aspx, 05.07.2011)