问题描述
当我将ASP.NET Core Web应用程序发布到Azure时,尝试使用oracle数据库时出现以下错误。
我通过设置来修复这些错误
我的应用程序设置 (ENV) 中的TNS_ADMIN & WALLET_LOCATION
我还设置了网站 _ 加载 _ 用户 _ 配置文件
然后我在尝试运行Oracle DB代码时出现新的错误。
处理请求时发生未处理的异常。
OracleException: 连接请求超时
OracleInternal.ConnectionPool.PoolManager.Get(ConnectionString csWithDiffOrNewPwd,bool bGetForApp,OracleConnection connreforcriteres,string affinitystancename,bool bForceMatch)
这个我似乎想不明白。
有没有人有任何指针或我可以尝试的东西?
我的连接字符串看起来像这样,并且在本地设置上完美工作。
并在startup.cs中注入
我一定错过了一些与azure/oracle细节有关的东西,这些东西玩得不好
我已经看了3/4次这个视频
https://www.youtube.com/watch?v=-IkDuJy30mY
NetworkException: ORA-12154: TNS:could not resolve the connect identifier specified OracleInternal.Network.AddressResolution..ctor(string TNSAlias, SqlNetOraConfig SNOConfig, Hashtable ObTnsHT, Hashtable ObLdpHT, string instanceName, ConnectionOption CO) OracleException: ORA-12154: TNS:could not resolve the connect identifier specified OracleInternal.ConnectionPool.PoolManager.Get(ConnectionString csWithDiffOrNewPwd,bool bGetForApp,OracleConnection connreforcriteres,string affinitystancename,bool bForceMatch)
我通过设置来修复这些错误
我的应用程序设置 (ENV) 中的TNS_ADMIN & WALLET_LOCATION
我还设置了网站 _ 加载 _ 用户 _ 配置文件
然后我在尝试运行Oracle DB代码时出现新的错误。
处理请求时发生未处理的异常。
OracleException: 连接请求超时
OracleInternal.ConnectionPool.PoolManager
这个我似乎想不明白。
有没有人有任何指针或我可以尝试的东西?
我的连接字符串看起来像这样,并且在本地设置上完美工作。
"User Id=user;Password=password;Data Source=db202011081718_medium;"
并在startup.cs中注入
services.AddDbContext(options => options.UseOracle( Configuration.GetConnectionString("OracleDBContextConnection")));
我一定错过了一些与azure/oracle细节有关的东西,这些东西玩得不好
我已经看了3/4次这个视频
https://www.youtube.com/watch?v=-IkDuJy30mY
专家解答
从 “db202011081718_medium” 我假设您使用的是自治数据库。
你能确认你
-下载了一个连接文件 (zip)
-解压缩到一个空目录 (让我们假设x:\ oracle)
-编辑了sqlnet.ora指向x:\ oracle
-将TNS_ADMIN设置为x:\ oracle
此时,安装了Oracle客户端后,您应该能够执行 “tnsping db202011081718_medium”,例如
你能做到这一点吗?
你能确认你
-下载了一个连接文件 (zip)
-解压缩到一个空目录 (让我们假设x:\ oracle)
-编辑了sqlnet.ora指向x:\ oracle
-将TNS_ADMIN设置为x:\ oracle
此时,安装了Oracle客户端后,您应该能够执行 “tnsping db202011081718_medium”,例如
C:\>cd C:\oracle\cloud_cmcdonald1 C:\oracle\cloud_cmcdonald1>dir Volume in drive C is OS Volume Serial Number is 0F26-5E10 Directory of C:\oracle\cloud_cmcdonald1 16/06/2020 11:37 AM. 16/06/2020 11:37 AM .. 16/06/2020 03:37 AM 6,733 cwallet.sso 16/06/2020 03:37 AM 6,688 ewallet.p12 16/06/2020 03:37 AM 3,275 keystore.jks 16/06/2020 03:37 AM 691 ojdbc.properties 16/06/2020 03:37 AM 317 README 16/06/2020 11:38 AM 125 sqlnet.ora 16/06/2020 03:37 AM 1,841 tnsnames.ora 16/06/2020 03:37 AM 3,336 truststore.jks C:\oracle\cloud_cmcdonald1>grep WALLET sqlnet.ora WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="C:\oracle\cloud_cmcdonald1"))) C:\oracle\cloud_cmcdonald1>set TNS_ADMIN=C:\oracle\cloud_cmcdonald1 C:\oracle\cloud_cmcdonald1>tnsping cmcdonald1_low TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 27-NOV-2020 15:49:28 Copyright (c) 1997, 2020, Oracle. All rights reserved. Used parameter files: C:\oracle\cloud_cmcdonald1\sqlnet.ora Used TNSNAMES adapter to resolve the alias Attempting to contact (description= (retry_count=20)(re....[rest of tns string] OK (1360 msec)
你能做到这一点吗?
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




