我在端口 80 上运行的 Web 应用程序中设置了一个网站集。我已使用stsadm.exe
工具备份了该网站集内容数据库。现在,我想将该备份恢复为另一个网站集的新内容数据库 - 在端口 500 上运行的 Web 应用程序中设置的网站集。我已完成以下操作:
- 创建备份
- 在端口 500 上创建了新的 Web 应用程序(我没有为该 Web 应用程序创建网站集)
- 我已使用管理中心删除了该新 Web 应用程序的内容数据库
- 我已经运行了
stsadm.exe -o addcontentdb -url webapp-at-port-500 -databasename <name>
- 命令已成功完成,但是当我检查该 Web 应用程序的内容数据库页面时,它显示站点数为 0!另外,当我尝试打开时
http://webapp-at-port-500
,出现错误消息,提示无法找到网页。
答案1
WSS3/2007 有一个令人讨厌的限制,即您无法在整个安装中多次附加相同的内容数据库 - 站点集合的 ID 是唯一的,并且它们用作配置数据库(所有 Web 应用程序共享)中表的主键。您可以通过以下任一方式解决这个问题:a) 将内容数据库附加到其他地方(不方便),或者破解配置数据库中有问题的表(可能很危险,尽管我这样做过几次,没有任何不良影响);请参阅SharePoint 事物了解详情。
答案2
站点集合是否包含任何站点并非仅由内容数据库处理。中央配置数据库也管理部分信息。
根据我的经验,我总是必须在新的网站集上创建一个空白网站,然后才能恢复并附加不同的内容数据库。
另外,我习惯通过中央管理用户界面 (Central Admin UI) 来管理内容数据库。