ORA-12547错误是由于TNS无法连接到数据库引起的。要解决此错误,请尝试以下步骤:
检查TNS服务是否运行。在Windows上,可以在“服务”中检查Oracle TNS Listener服务是否已启动。在Linux上,可以使用以下命令检查:
systemctl status oracle-xe-18c
检查TNS名称是否正确。确保您使用的TNS名称与您的数据库实例名称匹配。您可以在$ORACLE_HOME/network/admin/tnsnames.ora
文件中找到TNS名称。
检查监听器配置。确保监听器是否正确配置并正在监听正确的端口。您可以在$ORACLE_HOME/network/admin/listener.ora
文件中找到监听器配置。
检查防火墙设置。如果您的数据库服务器上启用了防火墙,请确保允许客户端访问正确的端口。您可以尝试禁用防火墙或配置适当的防火墙规则。
检查数据库服务是否运行。在Windows上,可以在“服务”中检查Oracle数据库服务是否已启动。在Linux上,可以使用以下命令检查:
systemctl status oracle-xe-18c
如果上述步骤均未解决问题,则可能需要进一步检查日志文件以获取更多详细信息。您可以查看TNS Listener的日志文件$ORACLE_HOME/network/log/listener.log
以及数据库的日志文件$ORACLE_HOME/rdbms/log/alert_<SID>.log
。