Sql ORA-12154:TNS:无法解析使用TeamCity指定的连接标识符

Sql ORA-12154:TNS:无法解析使用TeamCity指定的连接标识符,sql,oracle,msbuild,teamcity,Sql,Oracle,Msbuild,Teamcity,目前,我正在尝试建立TeamCity。在TeamCity参数中,我设置了以下值: env.DeployConnectionString: Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SID=mySID)));User ID=sys;Password=mySysPassword; env.Rdbms: Oracle env.

目前,我正在尝试建立TeamCity。在TeamCity参数中,我设置了以下值:

env.DeployConnectionString:  Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SID=mySID)));User ID=sys;Password=mySysPassword;
env.Rdbms: Oracle
env.SqlPlusLogon: @mySID
当我运行TeamCity项目时,会产生以下错误:

C:\TeamCity\buildAgent\work\4832a5599bdcf4b9\myProject\myProject.proj(51, 7): error MSB3073: The command "sqlplus "sys/mySysPassword@mySID as sysdba" @KillSessions.sql C:\Database\Oracle" exited with code -1.
另外,当我尝试使用相同的参数从命令行登录到sqlplus时,它失败了,出现了上面主题行中的错误。当我尝试使用此字符串从命令行登录到sqlplus时,它可以正常工作:

sqlplus sys/mySysPassword@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SID=mySID))) AS SYSDBA @KillSessions.sql

所以我的问题是,如何配置TeamCity使用底部连接字符串而不是顶部连接字符串?我原以为这就是我在设置env.DeployConnectionString时所做的。有人有什么建议吗?TIA。

我认为它没有在这个命令中读取SID:sys/mySysPassword@mySID.


为什么不将SID存储在tnsnames.ora中,并在命令行中替换mySID部分?

感谢大家的帮助。通过将env.sqlplusGon更改为:

env.SqlPlusLogon: @(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SID=mySID)))