我已经移动了我的本地。. NET MVC和WebAPIOracle,转到AWS云。在所有条件相同的情况下,我只是将连接字符串更改为引用RDS Oracle.
我有以下连接字符串在我的设置文件:
<add key="OracleDatabaseConnectionString" value='Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db-rds.uryrt6fhe.rds.amazonaws.com)(PORT=1526))(CONNECT_DATA=(SID=db-rds)));' />
然而,我得到了以下内容:
ORA-12560: TNS:Protocol adapter error
在使用RDS Oracle时如何解决这个问题?,而不是预置Oracle?
(inOracle SQL Developer,我可以成功地连接..那么为什么不使用上面的连接字符串呢?)
这个错误肯定与打开连接有关到oracle rds实例(有一次我调查了DNS, LDAP等只是为了删除所有变量)。
此连接字符串仅适用于本地oracle.
<add key="UserLogin" value="User Id=prodabc;Password="pdw$7jhw@1;" />
<add key="OracleDatabase_onprem" value="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.2.2.87)(PORT=1526))(CONNECT_DATA=(SID=oradb)));" />
在我的代码中,我按照如下方式构建到数据库的连接:
var conn = Config.OracleDatabase_onprem;
var usr = Config.UserLogin;
OracleConnection oraConn = new OracleConnection(string.Format("{0}{1}",conn, usr)
下面的连接字符串适用于oracle rds和适用于本地oracle.
<add key="UserLogin" value="User Id=prodabc;Password=pdw$7jhw@1;" />
<add key="OracleDatabase_cloud" value="Data Source=db-rds.uryrt6fhe.rds.amazonaws.com:1526/oradb" />
在我的代码中,我按照如下方式构建到数据库的连接:
var conn = Config.OracleDatabase_onprem;
var usr = Config.UserLogin;
OracleConnection oraConn = new OracleConnection(string.Format("{0}{1}",str, usr,conn)
ONLY ON PREMISE
"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.2.2.87)(PORT=1526))(CONNECT_DATA=(SID=oradb)));User Id=prodabc;Password=pdw$7jhw@1;"
ORACLE RDS AND ON PREMISE
"User Id=prodabc;Password=pdw$7jhw@1;Data Source=db-rds.uryrt6fhe.rds.amazonaws.com:1526/oradb"