SharePoint Remote-BLOB-Storage : Teil 6 – RBS deinstallieren

Wie man den deaktiviert wurde im letzen Artikel bereits behandelt. Im sechsten und letzten Teil der -Artikelserie geht es nun um das Deinstallieren.

 

Wie immer sollten Sie eine Sicherung erstellen bzw. alles auf einem Testserver durchspielen, bevor Sie sich an den produktiven Server wagen.

Bevor der RBS deinstalliert wird, sind die Schritte aus RBS-Artikel Teil 5 durchzuführen. Die Daten sollten also aus dem RBS-Verzeichnis in die Datenbank migriert werden. Nach dem Migrate-Befehl geht es dann folgendermaßen weiter:

$rbss.Disable()

Im SQL Server Management Studio neues Abfragefenster öffnen und folgendes ausführen:

use WSS_Content
— Change the default RBS garbage collection window
to 0 on your content db:
exec mssqlrbs.rbs_sp_set_config_value ‚garbage_collection_time_window‘,’time 00:00:00′

use WSS_Content
exec mssqlrbs.rbs_sp_set_config_value ‚delete_scan_period‘,’time 00:00:00′

Auf dem Webserver die Eingabeaufforderung (CMD) mit Administratorrechten öffnen und folgendes ausführen:

„C:\Program Files\Microsoft SQL Remote Storage 10.50\Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe“ -connectionstringname RBSMaintainerConnection -operation GarbageCollection ConsistencyCheck ConsistencyCheckForStores -GarbageCollectionPhases rdo -ConsistencyCheckMode r
-TimeLimit 120

Über das SQL-Management Studio zusätzlich noch folgenden Befehl ausführen:
use WSS_Content
exec mssqlrbs.rbs_sp_uninstall_rbs 0

Unter [SystemsteuerungProgramme und FunktionenProgramm deinstallieren oder ändern] deinstallieren Sie SQL Server 20xx Remote Blob-Speicher. Alternativ könne Sie auch die RBS.msi starten und dort den Punkt Entfernen/Remove wählen.

RBS über RBS.msi deinstallieren

 

Damit alles, was auf Filestream verweist, aus der Datenbank entfernt wird, starten Sie das SQL Server Management Studio und führen Sie folgendes aus:

use WSS_Content 

ALTER TABLE [mssqlrbs_filestream_data_1].[rbs_filestream_configuration]
DROP column [filestream_value]

ALTER TABLE [mssqlrbs_filestream_data_1].[rbs_filestream_configuration]
SET (FILESTREAM_ON = „NULL“)


Jetzt kann Filegroup und File für Filestream entfernt werden:

(WSS_Content durch den Namen Ihrer DB ersetzen)

ALTER DATABASE WSS_Content REMOVE FILE RBSFilestreamFile;
ALTER DATABASE WSS_Content REMOVE FILEGROUP RBSFilestreamProvider;

Zum Schluss ist der Filestream über den SQL Server-Konfigurations-Manager noch zu deaktivieren. Herangehensweise siehe Artikel 2 der Serie. Starten Sie danach den SQL Server Dienst und den IIS neu.

Fehler und Lösungsansätze:

Im Folgenden sind sind ein Lösungsansätze und hilfreiche Hinweise zur Problemlösung aufgelistet, die helfen könnten.

Fehler 1:    Msg 5098, Level 16, State 1, Line 1
                    The container can not be dropped because changes exist that require a log backup.
                    Take a log backup and then retry the ALTER DATABASE operation.
Lösung 1:  Führen Sie ein log backup aus.
                  Nutzen Sie bspw. den Maintenance Plan Wizard.

Fehler 2:     Msg 5042, Level 16, State 13, Line 1
                     The file ‚RBSFilestreamFile‘ cannot be removed because it is not empty.

Lösung 2a:  Tabellen rbs_filestream_* aus der Inhaltsdatenbank löschen.

Lösung 2b:     
select * from WSS_Content.sys.tables t join WSS_Content.sys.data_spaces ds on t.filestream_data_space_id = ds.data_space_id and ds.name = ‚RBSFilestreamProvider‘

— Partion_Schema_ID herausfinden
select partition_scheme_id,destination_id,a.data_space_id,name,b.data_space_id
from sys.destination_data_spaces a right join sys.filegroups b
on a.data_space_id = b.data_space_id


— Funktionsname herausfinden
select f.name as [Function Name], f.type_desc, s.name as [Scheme Name], s.type_desc from sys.partition_schemes s join sys.partition_functions f on s.function_id = f.function_id where s.data_space_id = ‚11111‘

ALTER PARTITION SCHEME [Test] NEXT USED

Fehler 3:     Exception calling „Migrate“ with „0“ argument(s): „The server configuration information has been updated. SqlRemoteBlobContext object is not valid. Recreate the SqlRemoteBlobContext to fix this error.“

Lösung 3:  Führen Sie die Befehle bis zum Migrate-Befehl noch einmal aus. Verwenden Sie dabei aber neue Variablen oder setzen Sie die alten Objekte zurück.


RBS Error Migrate


Die war der letzte Artikel der sechsteiligen Serie zum Remote BLOB Speicher und dem SharePoint Server…

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.