4 Stimmen

Der gleichzeitige Schnappschuss für die Veröffentlichung 'xx' ist nicht verfügbar, da er nicht vollständig erstellt wurde oder der Log Reader A

Ich habe alle möglichen Probleme, SQL Server (2005) richtig zum Laufen zu bringen. Wenn ich den Client (SQL Server Express 2005) ausführe, erhalte ich die folgende Fehlermeldung: "Der gleichzeitige Snapshot für die Veröffentlichung 'xx' ist nicht verfügbar, da er nicht vollständig generiert wurde oder der Log Reader A".

Der Fehler wird abgeschnitten.

Ich habe es versucht: - Löschung des Abonnements - Löschen der Publikation und erneutes Starten - Neustart von Server und Client. - Verkleinern der Datenbank

Alles ohne jede Veränderung.

Ich weiß, dass der Client die Netzwerkfreigabe sehen kann \servername\repldata der einen UNC-Unterordner mit dem Schnappschuss enthält (einen Ordner tiefer mit dem pubName und der dateTime-Kodierung wie erwartet)

Für Tipps oder Ausflüge wären wir WIRKLICH dankbar

12voto

Reini Punkte 121

Aber hier ist die Lösung: http://social.msdn.microsoft.com/forums/en-US/sqlreplication/thread/baf99181-2fe1-4e6b-ba45-5d1d08103550/

1) Löschen Sie das Abonnement und die gesamte Publikation, die nicht funktioniert

2) Führen Sie einen Select auf diese Tabellen aus, um zu sehen, ob noch Zeilen für die Publikationsdatenbank verfügbar sind:

select * from msdb..MSdistpublishers
select * from distribution..MSpublisher_databases
select * from distribution..MSpublications
select * from distribution..MSarticles
select * from distribution..MSsubscriptions

3) Löschen Sie nun alle Zeilen, die noch die "publisher_db" haben, aus der gerade gelöschten Verlagsdatenbank:

delete from distribution..MSarticles where publisher_db = '<NameOfDatabase>'
delete from distribution..MSsubscriptions where publisher_db = '<NameOfDatabase>'

4) Legen Sie die Publikation und den Abonnenten wie gewohnt neu an.

Das sollte genügen :-)

1voto

RBarryYoung Punkte 53364
  1. Hat wurde der Snapshot für die Veröffentlichung erstellt? Manchmal dauert dies sehr lange und manchmal wird es auf einen späteren Zeitpunkt verschoben. Wenn er erstellt wurde, sollten Sie ihn irgendwo auf der Festplatte finden können.

  2. Stellen Sie sicher, dass der Log Reader auf dem Publisher läuft, wenn es sich um eine transaktionale Replikation handelt, wovon ich ausgehe.

1voto

Jordan Ryder Punkte 1436

Ich musste lediglich den Konten des Log-Readers und des Verteilungsdienstes DB_Owner Zugriff auf die Veröffentlichungsdatenbank geben. Ich bin nicht sicher, ob beide Konten erforderlich waren, aber es war eine einfache Lösung.

0voto

PROLVP Punkte 1

In meinem Fall lag es daran, dass die Tabelle "MSSubscriptions" in der Verteilerdatenbank nosync_type=1 und status=2 hatte. Ich änderte diese Werte auf 0 bzw. 1.

Nach einer erneuten Initialisierung des Snapshots wurden die Änderungen von Distributor Agent übernommen.

0voto

Kyle Johnson Punkte 765

Ich habe den Snapshot einfach neu initialisiert (neuer Snapshot, der alte wird nicht wiederverwendet), und dann hat der Distributor-Agent begonnen, diese Änderungen zu übernehmen.

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