我使用TFSBackup.exe
工具从现有服务器对我的所有TFS 2012数据库进行了完整备份。
我设置了一个干净的服务器,全新安装了SQL 2014和TFS 2015 Update 3.我使用SQL studio在新实例上恢复了TFS数据库备份。
接下来,我运行了TFS升级向导并选择了我恢复的Tfs_Configuration数据库。除了一个 - 数据层之外,所有的准备检查都通过了。
出现的错误是:
TF400311 - "数据库连接字符串无效且无法生效 自动纠正。要解决此问题,请使用TFSConfig RemapDBs命令行工具来纠正数据库连接 字符串"
当我尝试运行TFSConfig RemapDBs
工具时,出现以下错误:
PS E:\Microsoft Team Foundation Server 14.0\Tools> .\TFSConfig RemapDBs /DatabaseName:TFSTEST\MSSQL;TFS_Configuration /SQLInstances:TFSTEST\MSSQL /continue
Logging sent to file C:\ProgramData\Microsoft\Team Foundation\Server Configuration\Logs\CFG_CFG_AT_0919_192225.log
Microsoft (R) TfsConfig - Team Foundation Server Configuration Tool
Copyright (c) Microsoft Corporation. All rights reserved.
Command: remapDBs
Microsoft (R) TfsConfig - Team Foundation Server Configuration Tool
Copyright (c) Microsoft Corporation. All rights reserved.
The sqlInstances argument is required. See the command line help for the remapDBs command.
TFS_Configuration : The term 'TFS_Configuration' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:50
+ .\TFSConfig RemapDBs /DatabaseName:TFSTEST\MSSQL;TFS_Configuration /SQLInstances ...
+ ~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (TFS_Configuration:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
我做错了什么?谢谢!
答案 0 :(得分:1)
从命令行运行它,而不是从PowerShell运行它。分号令人困惑。
这让它离开了:
sqlInstances参数是必需的。请参阅命令行帮助 remapDBs命令。
TFS_Configuration:术语'TFS_Configuration' 不被识别为cmdlet,函数,脚本文件或的名称 可操作程序。检查名称的拼写,或路径是否正确 包含,验证路径是否正确,然后重试。在线:1 炭:50
你可以告诉它正在尝试将命令运行到分号,然后失败。它报告缺少/sqlinstances
标志,您在分号后提供了这个标志。您可以看到它正在尝试将“Tfs_Configuration”作为cmdlet运行。