У меня есть файловая база геоданных ESRI (v10), которая опубликована в картографическом сервисе arcgis server. Когда служба работает, fGDB заблокирован. Нужно ли останавливать службу, чтобы получить чистую резервную копию? Или есть способ выполнить резервное копирование через скрипт arcpy или через каталог? В настоящее время я использую Windows robocopy для переноса fGDB на резервный диск. Вот вывод, показывающий заблокированные файлы:
New File 0 Bikepaths.CFP0026.4968.5140.sr.lock
New File 0 BuildingFootprints.CFP0026.4968.5140.sr.lock
и т. д.
источник
xcopy
(или xxcopy ), пропускаю сбои, а затем уплотняю результат. Это не лучшее решение, поскольку класс пространственных объектов заблокирован из-за того, что сеанс редактирования может быть поврежден, но это ничем не отличается от теневого / зеркального диска.У нас есть несколько высокопроизводительных рабочих веб-приложений, которые работают на FGDB на внутреннем сервере. FGDB уничтожаются и перестраиваются со свежими данными каждую ночь. Я написал консольное приложение .NET, основанное на AGSSOM, которое останавливает службы во время процесса обновления. Проверьте AGSSOM, это довольно гладко. Вот некоторые из C #, которые я использую, чтобы сделать резервную копию текущей FGDB, прежде чем я ее уничтожу:
Он просто использует Directory.CreateDirectory и FileInfo.CopyTo для копирования FGDB - Windows видит FGDB просто как другую папку. Работает как чемпион. Затем, после завершения процесса обновления, мы снова запускаем службы с помощью приложения на основе AGSSOM.
источник