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