目前我正在尝试将我们的 tfs2018 服务器升级到本地 Devops2020 服务器。
我们有多个集合,我们决定将非关键集合迁移到新服务器,为它们配置所有构建代理,然后稍后迁移关键集合。
在需要时混淆信息
- 所以我们已经从 tfs2018 服务器中分离了所需的集合。
- 做了一个数据库备份,
- 将所有数据库复制到一个新实例(sqlserver/tfs 到 sqlserver/devops)
- 在新服务器上安装 devops2020
- 运行服务器配置向导
- 使用实例 sqlserver\devops (它看到配置数据库)
- 生产升级
- 为其余部分设置所有字段,然后进行就绪检查,但失败了
TF246064: No database could be found for the following host: Intranet Apps. The host has the following ID: #THEGUID#. To fix this problem, use the TFSConfig RemapDBs command-line tool and make sure that you specify the SQL Server instance that contains this database.
试图运行 remapdbs
TfsConfig remapDBs /DatabaseName:sqlserver\devops;Tfs_Configuration /SQLInstances:sqlserver\devops /preview
我也遇到了同样的问题。
TF246064: No database could be found for the following host: Intranet Apps. The host has the following ID: #THEGUID#. To fix this problem, use the TFSConfig RemapDBs command-line tool and make sure that you specify the SQL Server instance that contains this database.
我查看了 db sql\devops tfs_configuration 看看[Tfs_Configuration].[dbo].[tbl_ServiceHost]
并看到
主机 ID:#THEGUID#
名称:内网应用
数据库ID:4
我进去看 [Tfs_Configuration].[dbo].[tbl_Database]
DatabaseId:4
ConnectionString:数据源=sqlserver\tfs;初始目录=Tfs_DefaultCollection;集成安全=True sqlserver\tfs;数据库名称:Tfs_DefaultCollection
我查看 DefaultCollection db 的属性并查看
TFS_SNAPSHOT_COLLECTIONID:#THEGUID#
TFS_SNAPSHOT_STATE:完成
看起来在我加入旧版本之前,他们可能已将 DefaultCollection 重命名为 Intranet Apps,但据我所知,这不会破坏任何东西。在这一点上,我不确定我的意思是做什么,但要删除 servicehost 表中的条目