2 Stimmen

Wie kann ich Offline-Dateien aus einer SQL Server 2005-Datenbank entfernen?

Ich habe eine Datenbank, die vor einiger Zeit von einer SQL 2000-Instanz auf eine SQL 2005-Instanz wiederhergestellt wurde. In der SQL 2000-Instanz waren alte, nicht verwendete Volltextsuchen definiert.

Es scheint, dass bei der Wiederherstellung der Datei die Volltextsuche nicht wiederhergestellt, sondern nur gelöscht wurde.

Dadurch befand sich die Datenbank in einem komischen Zustand: Die FTS-Dateien waren noch mit der Datenbank verknüpft, aber die Dateien, die der Datenbank bekannt waren, wurden als OFFLINE aufgeführt. Es stellte sich heraus, dass die Datenbank nicht mehr vollständig gesichert werden konnte.

Weiß jemand, wie man die Dateien aus der Datenbank entfernen kann? ALTER DATABASE REMOVE FILE devuelve

Msg 5009, Ebene 16, Zustand 2, Zeile 1 Eine oder mehrere der in der Anweisung aufgeführten Dateien konnten nicht gefunden oder nicht initialisiert werden.

Der eigentliche Backup-Befehl gibt für jede Datei, die nicht existiert, eine der folgenden Fehlermeldungen aus:

Msg 9987, Ebene 16, Zustand 1, Zeile Die Sicherung des Volltextkatalogs '' ist nicht zulässig, da er nicht online ist. Überprüfen Sie die Fehlerprotokolldatei auf den Grund, warum der Volltextkatalog offline wurde und bringen Sie ihn online. BACKUP kann auch mit Hilfe der FILEGROUP- oder FILE-Klauseln durchgeführt werden, um die Auswahl auf Online-Daten zu beschränken.

Weiß jemand, wie man dieses Problem beheben kann?

4voto

Josef Punkte 7227

Die Antwort auf dieses Rätsel ist sehr einfach, zumindest wenn Sie sich nicht um Ihre FTS-Indizes kümmern, was ich nicht tue.

EXEC master.dbo.sp_detach_db @dbname = N'dbname', @keepfulltextindexfile=N'false'

Der Schlüssel dazu ist die zweite Flagge, @keepfulltextindexfile die standardmäßig auf true gesetzt ist. Wenn Sie diese Einstellung auf "false" setzen und dann die Datenbank wieder einbinden, werden alle FTS-Daten gelöscht, und die Backups können wie vorgesehen funktionieren.

2voto

Hazem Punkte 21

Ich habe das Problem mit dem Bericht wie folgt behoben

  1. Versetzen Sie die Datenbank in den Einzelbenutzermodus.
  2. Trennen Sie die Datenbank. Bevor Sie jedoch auf OK für die Löschung klicken, ENTFERNEN Sie das Häkchen die Option Volltextkataloge behalten.
  3. Verbinden Sie die Datenbank wieder

0voto

MarlonRibunal Punkte 3929

Sie sollten Ihre Volltextkataloge neu bestückt haben. Standardmäßig tut SQL Server 2005 dies nicht, um den Installationsprozess zu beschleunigen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X