【发布时间】:2016-09-08 21:21:13
【问题描述】:
我按照http://blogs.adatis.co.uk/jonathon%20eveoconnor/post/Using-TeamCity-to-Automate-Building-and-Deployment-of-Database-Projects 的指南设置了 SQL 构建并从 TeamCity 发布。
构建步骤效果很好,但在发布时我被卡住了。我已将步骤设置如下,与指南中的内容相符,但出现错误。
第 2/2 步:发布 (MSBuild) (2s)
[步骤 2/2] KAInternal\KAInternal.sqlproj.teamcity:构建目标:发布
[KAInternal\KAInternal.sqlproj.teamcity] SqlPublish
[SqlPublish] SqlPublishTask
[SqlPublishTask] C:\TeamCity\buildAgent\work\1472f1322571ddd\KAInternal\bin\Debug\KAInternal.sqlproj.publish.sql 错误 Deploy72002:无法连接到主服务器或目标服务器“KAInternal”。您在主服务器或目标服务器“KAInternal”中必须有一个密码相同的用户。 [步骤 2/2] 步骤发布 (MSBuild) 失败
我已经搜索了很多,但似乎每个人都认为这是源计算机上的权限问题,我的发布配置文件使用内置的“sa”SQL Server 帐户进行发布(目前,主要是为了反驳这个理论)。
这是发布配置文件 XML:
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<IncludeCompositeObjects>True</IncludeCompositeObjects>
<TargetDatabaseName>KAInternal</TargetDatabaseName>
<DeployScriptFileName>Staging_KAInternal.sql</DeployScriptFileName>
<TargetConnectionString>Data Source=192.168.194.6;Persist Security Info=False;User ID=sa;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True</TargetConnectionString>
<BlockOnPossibleDataLoss>True</BlockOnPossibleDataLoss>
<ExcludeLogins>True</ExcludeLogins>
<IgnoreRoleMembership>True</IgnoreRoleMembership>
<ExcludeUsers>True</ExcludeUsers>
<ProfileVersionNumber>1</ProfileVersionNumber>
</PropertyGroup>
以及 TeamCity 中的发布步骤
希望有人能指出正确的方向,在此先感谢。
【问题讨论】:
标签: sql-server msbuild teamcity