Ich habe eine ESRI-Datei-Geodatabase (v10), die auf einem Arcgis-Server-Map-Service veröffentlicht wird. Wenn der Dienst ausgeführt wird, ist die fGDB gesperrt. Muss ich den Dienst beenden, um ein sauberes Backup zu erhalten? Oder gibt es eine Möglichkeit, eine Sicherung über ein Arcpy-Skript oder über den Katalog durchzuführen? Ich verwende derzeit Windows Robocopy, um die fGDB auf ein Sicherungslaufwerk zu übertragen. Hier ist die Ausgabe mit den gesperrten Dateien:
New File 0 Bikepaths.CFP0026.4968.5140.sr.lock
New File 0 BuildingFootprints.CFP0026.4968.5140.sr.lock
etc, etc ...
quelle
xcopy
(oder xxcopy ), überspringe die Fehler und komprimiere dann das Ergebnis. Dies ist nicht die beste Lösung, da eine aufgrund einer Bearbeitungssitzung gesperrte Feature-Class beschädigt werden kann. Dies unterscheidet sich jedoch nicht von einem Schatten- / Spiegellaufwerk.Wir haben mehrere produktionsstarke Produktionswebanwendungen, die auf REA im Backend ausgeführt werden. Die FGDBs werden ausgelöscht und jede Nacht mit neuen Daten neu erstellt. Wir haben eine .NET-Konsolen-App, die ich geschrieben habe und die auf AGSSOM basiert und die Dienste stoppt, während der Aktualisierungsprozess ausgeführt wird. Schauen Sie sich AGSSOM an, es ist ziemlich schick. Hier sind einige der C #, die ich verwende, um ein Backup der aktuellen REA zu erstellen, bevor ich sie wegblase:
Es werden nur Directory.CreateDirectory und FileInfo.CopyTo verwendet, um die FGDB zu kopieren - Windows sieht die FGDB nur als einen anderen Ordner. Funktioniert wie ein Champion. Nach Abschluss des Aktualisierungsvorgangs starten wir die Dienste erneut mit der AGSSOM-basierten Anwendung.
quelle