ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)

一、引言


        之前给别人部署服务不多都是手动重新发布一遍,直到有一次遇到的服务超级多,自己都记不清了,然后就懵逼了,老子要一个个发布吗==后来学长说了一个简单的备份方法。


        服务器管理员通常需保留其站点配置的定期备份,以便在发生硬件故障、人为错误或其他问题时可以还原站点。为满足此项需求,ArcGIS Server 可帮助您备份站点配置。在服务迁移部属的时候,能够一次性进行备份还原是件很爽快的事情。

       下面是备份信息,其中简单的服务都会备份,但是像连接数据库之类的feature服务肯定是搞不定的,因为毕竟数据库没有备份,尴尬==详细的备份信息可以看下表


备份中包含的信息 不包含的信息
  • 服务配置和服务属性
  • 服务器对象扩展模块 (SOE)
  • 服务器对象拦截器 (SOI)
  • 注册数据存储项目位置
  • 用户和角色信息
  • 站点内计算机的列表
  • 集群及其计算机列表
  • 日志设置
  • 统计数据报告
  • 缓存切片和切片方案
  • 服务所使用的数据(除非它在发布时被自动复制到服务器上的一个文件夹中
  • 动态生成的地图影像和其他临时输出
  • 日志消息(包括地理处理作业状态和消息)
  • 主站点管理员用户名和密码
  • 统计数据
  • ArcGIS Web Adaptor 配置
详细的信息可以看esri官网点击打开链接


二、整体备份恢复过程


1、找到arcgis server自带的备份还原工具


ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)


2、通过backup.py脚本进行备份


参数如下:

待备份的url地址;站点用户名;站点密码;带备份的文件夹路径;

ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)


3、通过restore.py进行数据恢复


参数跟备份的时候类似:

恢复url;恢复站点名称;恢复站点密码;恢复的文件地址;

ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)


4、查看站点内容


可以看到大部分服务已经恢复,但是有些服务没有启动,切片显示灰色==

ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)



三、整体备份出现的问题及解决方法


1、服务中切片缺失


从原数据中的C:\arcgisserver\directories\arcgiscache中找到原有的切片数据,拷贝到相应的位置,然后重新加载一遍

ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)


或者你可以重新发布一遍


2、feature access服务不能启动


这个原因是因为连接数据库的问题导致,毕竟换了新机子,数据库不可能自己适配的。

由于Server端服务的正常与否是由msd决定的。为了探究能否直接修改msd中的数据源连接,来修复服务。尝试更改了msd的后缀,将其更改为zip,而后解压,可以看到msd包括的内容如图1-9所示:

 ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)


其中layers里面包含了服务的图层的配置和渲染信息,也记录了连接数据库的信息。由于数据库的密码已经被加密了,没有办法直接去更改xml文档中的密码。既然msd是由mxd生成,故选择修复服务器端的mxd文档,根据修改后的文档去重新生成msd。

下图是加密的密码

ArcGIS——数据库与服务备份(二、arcgis server中站点服务的备份和恢复)

Mxd和msd都位于该arcgisinput目录的对应的服务里,如:

C:\arcgisserver\directories\ArcGISsystem\arcgisinput\SiteRS\MyMapServiceRS.MapServer\extracted\v101


那么怎么办,只能重新用恢复过来的mxd文件重新绑定数据源再发布一下了,然后把生成的msd文件覆盖到原有的msd,再重启下服务==暂时只想到了这种方法,有更牛逼的希望共享下==


至此,基本上遇到的服务问题基本上都能搞定了==


四、总结


  • 服务整体备份来源简介

  • 服务整体备份过程

  • 服务整体备份问题