练习 11:将地理数据库从数据库服务器分离
本主题仅适用于 ArcGIS for Desktop Standard 和 ArcGIS for Desktop Advanced。
要将地理数据库从一台数据库服务器移动至另一台数据库服务器,可从数据库服务器中将其分离;通过网络复制数据库文件(.mdf 文件)或复制到传输介质(如闪盘)上,然后将其粘贴到目标服务器上。之后,可将地理数据库附加到第二台数据库服务器。
在以下情况下,可能会进行此操作:
- 如果要使用的数据来自台式计算机上数据库服务器中的地理数据库,然后想要将该地理数据库带到野外采集数据,则可将该地理数据库从台式计算机上的数据库服务器中分离,再将数据库文件传输到便携式计算机,然后将该地理数据库附加到便携式计算机上的数据库服务器。
- 当转移地理数据库的所有权时(例如当某个雇员离开公司时),可以移动前任雇员计算机上数据库服务器中的地理数据库,将其复制到新所有者的计算机,并附加到该计算机的数据库服务器。
- 当雇用顾问为您收集或创建数据集时,可以要求他们在 SQL Server Express 的某个地理数据库中提交数据。那么,在他们向您发送文件后,您就可以将这些文件附加到您的数据库服务器。
![注 注](rsrc/note.png)
从数据库服务器中分离地理数据库并不会删除数据库文件,但会从 SQL Server Express 实例中移除对数据库的引用。
在数据库服务器之间共享地理数据库时,应知道谁拥有数据并且有权处理该数据。这一点非常重要,因为 SQL Server Express 中的 ArcSDE 地理数据库使用经 Windows 验证的登录帐户。如果使用本地 Windows 登录帐户,则在将地理数据库传送到新计算机时,这些用户将不会出现在新计算机上。同样,如果使用网络登录帐户并将地理数据库传送到网络之外的数据库服务器,则这些登录帐户也不存在。
如何处理这个问题取决于您的工作流程。如果预先知道要经常移动地理数据库,则在以 dbo 用户身份登录时,可能需要在地理数据库中创建所有数据。dbo 用户和方案始终显示在数据库服务器中;因此,即使将地理数据库移动到不同网络上的数据库服务器,仍可以 dbo 用户身份登录、向数据库服务器添加新用户以及授予他们对数据的访问权限。
如果没有预计到必须移动地理数据库,并且目标数据库服务器上不存在该数据所有者,您仍可以 dbo 用户身份登录,并执行以下几组步骤之一:
- 向目标数据库服务器添加新用户。
- 为要向其转移数据所有权的用户授予对地理数据库的读/写权限或更高级别访问权限。在地理数据库级别授予这些权限将会使用户能够访问地理数据库中的所有数据。
- 请求用户登录到地理数据库,并将数据复制到他们也具有读/写访问权限的新地理数据库,或者复制数据并将其粘贴到适当的位置,并为所粘贴的数据集和列指定新名称。
或者:
- 在目标数据库服务器上创建第二个地理数据库。
- 将数据复制到新地理数据库。
注:
Dbo 目前是第二个地理数据库中所有数据集的所有者。
- 向目标数据库服务器添加新用户。
- 授予这些用户对数据集的访问权限。
分离地理数据库
假设要将 buildings08 地理数据库从个人计算机 (PC) 上的数据库服务器移动到便携式计算机上的数据库服务器,以便将其带到野外采集流量数据。可以使用复制地理数据库的方法将数据复制到便携式计算机上数据库服务器中的地理数据库,也可以从 PC 上的数据库服务器中分离该地理数据库,然后将其移动到便携式计算机硬盘并附加到数据库服务器。
要从数据库服务器中分离 buildings 地理数据库,请进行以下操作:
- 使用您自己的 Windows 登录帐户登录到计算机。
- 单击开始 > 所有程序 > ArcGIS > ArcCatalog 10.1 启动 ArcCatalog。
- 展开目录树中的“数据库服务器”节点,然后连接到数据库服务器。但是,不要连接到 buildings08 地理数据库。
-
右键单击 buildings08 地理数据库,指向管理,然后单击分离。
警告:
如果任何其他用户此时已连接到此地理数据库,则会将其断开以便您可以分离此地理数据库。请确保在您将地理数据库从数据库服务器分离之前其他用户均已退出此地理数据库。
- 弹出确认分离 对话框时,请记下数据库文件的位置;您需要知道该文件的位置,以便可以将其复制到其他位置或者可能以后要重新附加此数据库。
- 单击确认分离对话框上的是。
现在,您可以打开 Windows 资源管理器,导航至 buildings08.mdf 的位置,然后将该文件复制到介质或通过网络传输到另一台计算机。
有关附加地理数据库的说明,请参阅练习 3 或将地理数据库附加到数据库服务器。
您已将地理数据库从一台数据库服务器分离,以便可以将其移动到另一台数据库服务器。