我在使用 C# 和 Oracle 10g 时开始收到此错误。
ORA-12560
我真的需要解决它,因为我的研究生项目时间不多了。
确保您的侦听器正在运行。如果是,请尝试重新启动它并使用它重新注册您的数据库(通过 sqlplus 作为 sysdba,键入命令alter system register;
)。此外,如果您运行本地防火墙,请确保您已允许端口 1521 用于传入流量(或您的自定义端口,如果您已更改此端口)。
在 Windows 中,监听器是一个服务,前缀为 oracle home name + TNSListener。在 Linux 中,设置您的 oracle 主环境并键入:
lsnrctl stop
lsnrctl start
ORA-12560 是一个配置问题。这使得远程诊断变得困难。我之前回答过关于 SO 的类似问题。我的建议很笼统,它也应该对您有所帮助。 了解更多。
如果没有,您将需要发布您的更多详细信息listener.ora
,tnsnames.ora
也许还有您的hosts
文件。
编辑
“所有文件都托管在这里:”
嗯。listener.ora
和参考,但服务器不包含在文件中tnsnames.ora
。HOST = SIKAS-TOSH
hosts
编辑 2
“Oracle 10g Express Edition 已安装在我的 PC 上”
如果您的数据库在您的 PC 上,则某些 Web 服务器上的文件是无关紧要的。重要的是您的 PC 上listener.ora
的and 。这些版本的文件需要引用 ,否则您需要将 其作为 127.0.0.1 的别名包含在内。tnsnames.ora
HOST = localhost
hosts
SIKAS-TOSH
我已经多次卸载并重新安装了oracle 10g以及ODAC112011beta,上次我没有安装ODAC112011beta
,而是使用了...Oracle.DataAccess.Client
中找到的文件,C:\oraclexe\app\oracle\product\10.2.0\server\BIN\Oracle.DataAccess.dll
然后我START->All Programs->Oracle Database 10g Express Edition->Start Database
以管理员身份启动了服务...现在我可以通过 C# 连接到 Oracle ...我希望我不再遇到问题