51Testing软件测试论坛

标题: QC9-QC11升级步骤详解 [打印本页]

作者: luminaria    时间: 2011-6-27 16:57
标题: QC9-QC11升级步骤详解
最近在搞QC9-QC11的升级,整理了一些步骤,欢迎指正。
注意:脚本EXEC sp_change_users_login 'Report'
EXEC sp_change_users_login 'Update_One', 'td', 'td'
不同用户可能有差异。

1.        数据准备
全量备份QC9相关数据库。
在QC10数据库上还原。
更新数据库用户映射, 在qcsiteadmin_db数据上点击右键,选择“新建查询”
EXEC sp_change_users_login 'Report'
EXEC sp_change_users_login 'Update_One', 'td', 'td'
对其它的数据库重复执行以上查询。
2.         升级安装QC10.0
a)        注意:在安装过程中,需要填写QC管理员(不是数据登录管理员)的用户名和密码时,填写的用户名和密码要和QC9下的管理员的用户名和密码相同,否则安装好qc10后,无法登录。
b)        按照程序提示逐步安装,在进行到如下图所示,时选择“升级现有结构”。(在选择好SQL Server2005的服务器名后,程序测试会提示找不到相应的数据库文件,验证失败,不用管他,直接下一步)

c)        点击下一步到安装完毕。
3.        项目升级
a)        在SQL SERVER2005客户端管理中打开qcsiteadmin_db数据库的projects表,修改“DB_CONNSTR_FORMAT”,“DBSERVER_NAME”与数据库名一致,修改“DB_NATIVE_AUTHENTICATION”与数据库的登录模式一致。
注:如果升级前的项目是将工程文件存储在数据库中,需要修改字段“PR_REPOSITORY_IN_DB”为“N”
可以直接执行如下脚本:
update td.projects set db_connstr_format ='jdbc:mercury:sqlserver://x.x.x.x:1433'
update td.projects set dbserver_name ='x.x.x.x'
update td.projects set PR_REPOSITORY_IN_DB ='N'
b)        点击被升级DB,新建查询,执行以下脚本
ALTER table td.GROUPS alter COLUMN GR_GROUP_NAME varchar(40) not null
ALTER table td.SYSTEM_FIELD alter COLUMN SF_USER_LABEL varchar(50)
ALTER table td.REQ alter COLUMN RQ_REQ_PRODUCT varchar(255)
ALTER table td.REQ alter COLUMN RQ_REQ_REVIEWED varchar(255)
ALTER table td.REQ alter COLUMN RQ_REQ_TYPE varchar(255)
ALTER table td.REQ alter COLUMN RQ_REQ_AUTHOR varchar(255)
ALTER table td.REQ alter COLUMN RQ_REQ_PRIORITY varchar(255)
ALTER table td.REQ alter COLUMN RQ_REQ_STATUS varchar(255)
c)        修改表td.COMMON_SETTINGS. CSET_NAME字段长度为 varchar(240)
*这一步无法用alter table直接改,只能手工改,应该有脚本,没仔细研究。
d)        通过浏览器登录“http://XXX:port/qcbin”, 进入Site Administrator 管理界面。
e)        在相应的域下面选择,要升级的工程,点击右键,选择“维护项目”,选择“验证工程”。(可以省略)
f)        验证成功后,点击右键,选择“维护项目”,选择“修复项目”。
g)        修复成功后,点击右键,选择“维护项目”,选择“升级项目”。
h)        修改工程成功后,在Project Users中,为该工程添加用户user。 (可省略)
i)        重新登录QC10.0,进入Quality Center,验证升级后的项目内容。

QC10-QC11升级步骤
1.        数据准备
全量备份QC10相关数据库。
在QC11数据库上还原。
更新数据库用户映射, 在qcsiteadmin_db数据上点击右键,选择“新建查询”
EXEC sp_change_users_login 'Report'
EXEC sp_change_users_login 'Update_One', 'td', 'td'
对其它的数据库重复执行以上查询。
2.        安装QC11
a)        安装QC11,到如下步骤时,选择升级现有架构。

b)        安装完成。
c)        或者启动QC的Server Configuration Wizard,也可以完成上述过程。
3.        项目升级
a)        在SQL SERVER2005客户端管理中打开qcsiteadmin_db数据库的projects表,修改“DB_CONNSTR_FORMAT”,“DBSERVER_NAME”与数据库名一致,
可以直接执行如下脚本:
update td.projects set db_connstr_format ='jdbc:mercury:sqlserver://x.x.x.x:1433'
update td.projects set dbserver_name ='x.x.x.x'
b)        选择项目,点击右键,选择“维护项目”,选择“升级项目”。
c)        重新登录QC11,进入Quality Center,验证升级后的项目内容。
作者: james.zhong    时间: 2011-6-27 18:36
无论对错,先支持下!
作者: sundongzhi    时间: 2011-6-28 13:49
升级环境:QC9.0,SQL Server2000
          QC10.0,SQL Server2005

需要的软件:QC10.0,SQL Server2005

升级过程:
1,  备份SQL Server2000下,QC9.0的数据。
a)         假设SQL Server2000的实例名为QC
b)        停止SQL Server2000服务
c)        到SQL Server2000数据库的数据文件目录下,例如:…./MSSQL$QC/DATA/
d)        拷贝站点管理数据库:qcsiteadmin_db.mdf,qcsiteadmin_db_log.LDF
e)         拷贝你的QC9。0的数据文件:XXX.mdf,XXX.LDF,将拷贝的文件备份好(假定temp文件夹下)。

2,  安装SQL SERVER2005
安装方法参考相应文档
假定安装的实例名也为QC

3,  附加数据文件
a)         安装好SQL SERVER2005后,停止SQL SERVER2005服务
b)        进入到SQL SERVER2005的数据文件目录,例如…./MSSQL$QC/DATA/,将上面的temp文件夹下的数据文件复制到本目录下。
c)        启动SQL SERVER2005服务
d)        打开SQL SERVER2005客户端管理软件:Microsoft SQL Server Management Studio
e)         在数据库目录树中,点右键,选择“附加”,在“附加数据库”窗口中,点击“添加”,选择qcsiteadmin_db.mdf,同时选上其它的需要升级的工程数据库XXX.mdf


4,  更新数据库用户映射
a)         在qcsiteadmin_db数据上点击右键,选择“新建查询”
b)        执行“exec sp_change_users_login 'Report’;
c)        如果列表中有用户‘td’,则执行:
d)        执行“exec sp_msforeachtable “sp_changeobjectowner ‘?’,’dbo’”
e)         对其它的工程数据库重复执行a)-d).

5,  升级安装QC10.0
a)         准备好安装的路径lincese文件
b)        注意:在安装过程中,需要填写QC管理员(不是数据登录管理员)的用户名和密码时,填写的用户名和密码要和QC9下的管理员的用户名和密码相同,否则安装好qc10后,无法登录。
c)        按照程序提示逐步安装,在进行到如下图所示,时选择“升级现有结构”。(在选择好SQL Server2005的服务器名后,程序测试会提示找不到相应的数据库文件,验证失败,不用管他,直接下一步)
  


6,  点击下一步到安装完毕。
7,  QC10.0升级安装完毕后,项目升级。
a)         在SQL SERVER2005客户端管理中打开qcsiteadmin_db数据库的projects表,修改“DB_CONNSTR_FORMAT”,“DBSERVER_NAME”与数据库名一致,修改“DB_NATIVE_AUTHENTICATION”与数据库的登录模式一致。
注:如果升级前的项目是将工程文件存储在数据库中,需要修改字段“PR_REPOSITORY_IN_DB”为“N”
b)        通过浏览器登录“http://XXX:port/qcbin”, 进入Site Administrator 管理界面。
c)        在相应的域下面选择,要升级的工程,例如“TestPPP”,点击右键,选择“Maintain Project”,选择“Verify Project”,验证工程。
d)        验证成功后,点击右键,选择“Maintain Project”,选择“Repir Project”,修复工程。
e)         修复成功后,点击右键,选择“Maintain Project”,选择“Update Project”,修复工程。
f)         修改工程成功后,在Project Users中,为该工程添加用户user。

8,  重新登录QC10.0,进入Quality Center,验证升级后的项目内容。
作者: luminaria    时间: 2011-7-8 22:56
今天重新验证了升级过程,上述方法通过升级db的方式是不可行的,升级后附件的会丢失。

整理了以下思路:
1、先把qc9的qcsiteadmin升级成qc10.0,然后再升级到11.0。
2、项目库必须从qc9升级打qc9.2,这一步可以通过db升级,然后复制项目,保存成文件格式。
3、把qc9.2的文件和db导入11.0,恢复项目并升级,这样可以保证附件不丢失。
作者: begonia80    时间: 2012-2-10 11:50
多谢高手的总结,解决了我们的大问题.
作者: dingding2011    时间: 2012-2-16 11:39
搞这么复杂,升级后有什么好?
作者: zhmtest    时间: 2012-4-10 14:10
升级成功了。谢楼主分享。
作者: w4381123    时间: 2013-5-29 14:06
回复 4# luminaria


    请问有没有更详细的教程和补丁文件,分享下,谢谢!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2