必须定期执行一些维护任务以帮助保护该地理数据库及其现有性能水平。以下部分介绍的这些任务可由服务器管理员或地理数据库管理员执行。
压缩版本化地理数据库
压缩操作可移除某版本不再引用的状态,还可将增量表中的行移动到基表中。有关压缩操作的作用以及使用原因的详细信息,请参阅地理数据库压缩操作。
在数据库服务器上,压缩操作只能由服务器管理员或地理数据库管理员执行。如果您不是这两个角色之一,则无权使用压缩数据库功能。
- 以服务器管理员或地理数据库管理员身份登录,启动 ArcMap,然后打开目录窗口。
- 双击其中包含您要压缩的地理数据库的数据库服务器。
这会将您连接到数据库服务器。
- 右键单击要压缩的地理数据库。
- 单击地理数据库快捷菜单上的管理,然后单击压缩数据库。
压缩操作运行时会显示进度条。此进度条会一直向前推进,直到操作完成。
更新统计数据
SQL Server 查询优化器使用数据库统计数据确定索引中值的分布情况。随着用户不断地对数据进行编辑,统计数据不再表示数据在索引和表中的真实分布情况。因此,如果数据库统计数据已过期,可能会对查询性能造成负面影响。在更改了地理数据库中的表和其他数据对象后对统计数据进行更新将有助于优化查询性能。
默认情况下,SQL Server Express 将设置为自动更新统计数据,因此对地理数据库进行大量更改(如截断和追加大量数据或运行压缩操作)后,您仅需进行手动分析和更新。
按照以下步骤手动更新统计数据:
- 以服务器管理员或地理数据库管理员身份登录,启动 ArcMap,然后打开目录窗口。
- 双击包含要更新统计数据的地理数据库的数据库服务器。
这会将您连接到数据库服务器。
- 右键单击该地理数据库,单击管理,然后单击地理数据库维护。
- 在地理数据库维护 对话框中,选中分析。
- 单击确定。
重新构建索引
执行大量的编辑或执行地理数据库压缩操作后,可能产生索引碎片。这可能不会对桌面或工作组级地理数据库性能造成很大的影响,但是重新构建索引会略微提高性能。
按照这些步骤在桌面或工作组级地理数据库中重新构建索引:
- 以服务器管理员或地理数据库管理员身份登录,启动 ArcMap,然后打开目录窗口。
- 双击包含要重新构建索引的地理数据库的数据库服务器。
这会将您连接到数据库服务器。
- 右键单击该地理数据库,单击管理,然后单击地理数据库维护。
- 在地理数据库维护 对话框中选中重新构建所有索引。
- 单击确定。
收缩地理数据库
随着时间的推移,数据被不断删除和添加,地理数据库中的数据文件可能会分散为越来越小的零散碎片。这会导致性能下降,因为在首次查询或更新数据时,查询要访问这些数据需要扫描的独立文件的数量将不断增长。要解决这个问题,可以对存储在 SQL Server Express 中的地理数据库进行收缩。收缩地理数据库操作将重新组织数据库在磁盘中的存储方式,从而减小数据文件的大小。
不必频繁收缩地理数据库。实际上,这样做可能造成不利影响:收缩操作可增加数据库中的索引碎片。
此外,如果发现在收缩地理数据库后其大小很快就增大到收缩前的状态,则说明收缩的空间是常规操作所必需的;因此,收缩操作是不必要的。要确定数据库的大小,请右键单击该数据库,再单击属性,然后单击管理选项卡。常规部分会显示大小。
如果发现 SQL Server Express 中的地理数据库即将达到 10 GB 的大小限制,请按照以下步骤收缩数据库,这样可能会获得一些额外的存储空间。
- 以服务器管理员或地理数据库管理员身份登录,启动 ArcMap,然后打开目录窗口。
- 双击包含要收缩的地理数据库的数据库服务器。
这会将您连接到数据库服务器。
- 右键单击该地理数据库,单击管理,然后单击地理数据库维护。
- 在地理数据库维护 对话框中选中收缩地理数据库。
- 单击确定。