公司的
TFS2005开发了若干基于moss2007的产品。由于TFS2005是基于Wss2.0的,导致在使用builder时有些项目编译不过,可能是需要调用Wss3.0的东西吧。而一些第三方的插件都是基于TFS2005,TFS2008无法使用。把TFS2005的Wss2.0升级到Wss3.0就成了必须要完成的任务了。
寻寻觅觅找到一篇老外的文章,写的很详细,照做后还是遇到一些问题。现在就边做翻译边写一些遇到问题的处理吧。方便大家
首先上链接:
TN1501: Configuring Windows SharePoint Services 3.0 on the Visual Studio 2005 Team Foundation Server Application Tier
中文步骤:
1.首先检查系统确保一些软件的版本:
服务器端:
wss2.0 sp2补丁,tfs2005 sp1补丁,VS80sp1-KB977778-X86-INTL补丁
客户端:
vss2005 sp1补丁,VS80sp1-KB977778-X86-INTL补丁
2.备份系统,备份
SQL数据库(以防万一)
3.在
TFS服务器安装dotnet3.0
4.安装
wss3.0
在向导中选择
“不,不要升级”,然后完成安装,取消“现在运行产品和技术配置向导”的选择,按“关闭”
5.在
cmd下执行如下命令:这里应该得到100%通过
cd "%ProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\12\Bin”
prescan /all
6.在
“管理工具”中,运行wss3的“产品和技术配置向导”,选择“不连接现有服务器场”,然后在安装向导中输入相应的管理账号,完成配置。(注意管理页面的端口不要和TFS服务器中已有端口冲突)
7.进入
“WSS 3.0 管理中心”,进入“应用程序管理”页面,“创建和扩展web应用程序”,然后“新建web应用程序”,建立应用程序池和站点(不要和Wss2站点端口冲突,这里举例为81端口),建立完成后iisreset,不要进行扩展页面的操作
8.备份
wss站点内容数据库,一般为“STS_Content_TFS ”,然后使用前面的备份文件另外恢复一个新的数据库使用(这里举例为“WSS_Content_TFS ”)
9.在
cmd中执行如下命令:
cd "%ProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\12\Bin”
stsadm –o addcontentdb –url http://
[myATserver]:81 –databasename
[WSS_Content_TFS]
//将新建的数据库挂接到前面
wss3建立的站点上
stsadm –o deletecontentdb –url http://
[myATserver]:81 –databasename WSS_Content
//删除原来这个站点对应的数据库
stsadm -o enumcontentdbs –url
http://[myATserver]:81
//检查数据库挂接情况
10. 将TFS2005项目团队建立需要的模板(for wss3)导入。这里遇到很大的问题。老外的那个下载链接失效了,一直没有找到。同时也尝试用wss2导出模板再导入wss3。多次实验都告失败。一次突发奇想:TFS2008是基于Wss3.0的里面应该有模板,说不定TF2005这的也能用?于是在TFS2008光盘上提取了两个STP模板文件,几次尝试后,终于能用了!等等我会提供下载
然后将这两个文件通过命令导入:
cd "%ProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\12\Bin”
stsadm -o addtemplate -filename "
[ShareLocation]\MSFAgileWSS3.stp" -title VSTS_MSFAgile
stsadm -o addtemplate -filename "
[ShareLocation]\MSFCMMIWSS3.stp"-title VSTS_MSF_CMMI
stsadm -o enumtemplates //
注解: 查看模板是否正确导入
iisreset
11.制作一个文件
WSS_registration.xml[protocol]一般填http,[serverName]服务器名,[adminPort]wss3管理站点端口,[port]前面新建站点端口(举例中式81),内容如下:,
<RegistrationEntries>
<RegistrationEntry>
<Type>Wss</Type>
<ChangeType>Change</ChangeType>
<ServiceInterfaces>
<ServiceInterface>
<Name>WssAdminService</Name>
<Url> [protocol]:// [serverName]:[adminPort]/_vti_adm/admin.asmx</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseServerUrl</Name>
<Url> [protocol]:// [serverName]: [port]</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseSiteUrl</Name>
<Url> [protocol]:// [serverName]: [port]/sites</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseSiteUnc</Name>
<Url>\\ [serverName]\sites</Url>
</ServiceInterface>
</ServiceInterfaces>
</RegistrationEntry>
</RegistrationEntries>
<RegistrationEntry>
<Type>Wss</Type>
<ChangeType>Change</ChangeType>
<ServiceInterfaces>
<ServiceInterface>
<Name>WssAdminService</Name>
<Url> [protocol]:// [serverName]:[adminPort]/_vti_adm/admin.asmx</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseServerUrl</Name>
<Url> [protocol]:// [serverName]: [port]</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseSiteUrl</Name>
<Url> [protocol]:// [serverName]: [port]/sites</Url>
</ServiceInterface>
<ServiceInterface>
<Name>BaseSiteUnc</Name>
<Url>\\ [serverName]\sites</Url>
</ServiceInterface>
</ServiceInterfaces>
</RegistrationEntry>
</RegistrationEntries>
12.执行如下
cmd命令,[myDTserver]数据库服务器名称,用于双服务器部署的,如果是单服务器那么ADserver和DTserver就是一样的:
iisreset /stop
cd “%programfiles%\Microsoft Visual Studio 2005 Team Foundation Server\Tools”
TFSReg.exe WSS_registration.xml
[myDTserver]
iisreset /start
13.完成后检查,打开
ie,进入如下地址
http://localhost:8080/services/v1.0/registration.asmx ,点击“GetRegistrationEntries”,点击
“调用”,查看相关项目。
14.将
“%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\LAYOUTS”下的文件“tfsredirect.aspx”,复制到“%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS”。
15.清理客户端缓存,清空目录为
“%USERPROFILE%\Local Settings\Application Data\Microsoft\Team Foundation\1.0”
附件:http://down.51cto.com/data/2357773
本文转自 yuxye 51CTO博客,原文链接:http://blog.51cto.com/fishvsfrog/518876