plsql 连接oralce数据库,报ora 12557 tns 协议适配器不可加载错误

哦,这个ORA1 2 5 5 7 错误,我以前在项目中也遇到过,挺烦人的。
你提到的解决步骤基本可靠。
我补充一下我实际操作中的一些细节和注意事项:
上周有位客人的服务器环境特别乱。
他按照你的步骤尝试了很久,仍然报错。
我走过去一看,发现了一些我没有注意到的事情:
1 .关于服务检查:必须确认服务名称是否书写正确。
我就遇到过一次。
客户端机器上的服务叫OracleServiceORCL,但是tnsnames.ora中写的名字是ORCL,直接不一致。
在命令行上使用 lsnrctl status 查看监听器。
It is best to see the configured service name.如果监听器已启动但没有响应,您可能需要使用 lsnrctl reload 来重新加载配置。

2 tnsnames.ora文件:不仅检查配置是否正确,还检查路径是否有问题。
之前有一个环境,tnsnames.ora放在C盘根目录下,结果权限不对,导致plsql客户端无法连接。
最好将此文件放在 ORACLE_HOME/network/admin 下,或 c:\oracle\network\admin 下。
Do not place it randomly.如果文件内容的格式不正确,例如将双引号替换为单引号,也会报此错误。

3 注册表操作:你提到的这一步有点风险。
并非所有 Windows 环境都位于 HKLM 中。
我曾经看到一个客户安装了两个版本的Oracle,删除该注册表项后,依赖该环境变量的其他应用程序也出现了问题。
比较靠谱的方法是直接找到ORACLE_HOME下的client文件夹,删除里面的所有文件,然后重新安装客户端连接器(比如SQL Developer自带的),或者重新配置ORACLE_HOME环境变量。
如果直接删除注册表,好东西都丢了,哭都来不及了。

4 重启这一步:以前觉得重启太难了,后来发现有时候确实需要这么做。
因为有时注册表发生变化或者环境变量发生变化,即使可以在路径中找到该文件,系统缓存也不会更新,旧的配置仍在进行中。
重启后,新的环境变量将生效,plsql客户端可以在重启时读取最新设置。

5 日志检查:如果您已经尝试过所有方法但仍然不起作用,您有权检查日志。
侦听器日志通常位于 $ORACLE_HOME/network/log 下,通常称为listener.log。
有一个关键信息要查找,就是看监听器是否收到了客户端的连接请求。
如果您甚至没有收到请求,则基本上是因为网络或服务配置不正确。
另一件容易被忽视的事情是检查防火墙。
我们的一位客户打开了防病毒云防火墙,并默认阻止了端口 1 2 5 4 1 (Oracle 的默认监听端口)。
As a result, the client could not connect.
综上所述,您提供的步骤方向是正确的,但您在实际操作时需要考虑这些细节。
尤其是注册表操作,尽量不要使用。
我通常从最简单的服务检查开始,然后是 tnsnames.ora。
如果确认两者都OK,则考虑是否环境变量有问题,最后考虑重新安装客户端连接器。
不管怎样,这取决于你,每个环境都不一样。

plsql怎么连接远程oracle数据库

上周试过了。

1 5 2 02 3 年 3 月。

我的朋友说。

tnsnames.ora 文件。

在$ORACLE_HOME/network/admin/中。

确实如此。

编辑文件。

复制现有配置。

更改 REMOTE_DB。

例如。

REMOTE_DB=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=1 9 2 .1 6 8 .1 .1 00)(PORT=1 5 2 1 ))(CONNECT_DATA=(SERVICE_NAME=remote_db_name)))
IP 地址和服务名称。

需要改变。

保存文件。

然后打开 PL/SQL Developer。

配置连接。

工具->设置->Oracle->连接。

Oracle 主目录名称。

表示情侣。

新连接。

主目录和 OCI 库。

通常自动填写。

用户名和密码。

自己输入。

服务名称。

填写 REMOTE_DB。

测试一下。

如果成功的话。

单击“确定”保存。

主界面。

双击该连接。

简直太好了。

就是这样。

plsql连接中database怎么写