时间:2021-07-01 10:21:17 帮助过:25人阅读
经常遇到PL/SQL Developer等依赖Client的工具无法连接Oracle数据库服务器的问题。至今也没完全理清楚,先发个帖总结一下目前的方法,后面会不断完善。 方法一: 重启Oracle服务器端相关服务,包括...TNSListener,所用的数据库实例的服务。可直接在Windows的
经常遇到PL/SQL Developer等依赖Client的工具无法连接Oracle数据库服务器的问题。至今也没完全理清楚,先发个帖总结一下目前的方法,后面会不断完善。
方法一:
重启Oracle服务器端相关服务,包括...TNSListener,所用的数据库实例的服务。可直接在Windows的“服务”中重启。或者(可使用的命令):
[plain] view plaincopy
这个方法试过多次有效,但原因未知,求真相。
方法二:
使用Net Configuration Assist配置服务器端和客户端。
Oracle服务器端需要设置listener(监听程序),设置结果影响listener.ora(...\db_1\NETWORK\ADMIN)。Oracle服务器端在创建一个数据库后,会自动在oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora文件中插入对应的一条记录,PLSQL Developer等工具软件可以读取这条配置。Client端(客户端)需要配置“本地Net服务名配置”,可能影响tnsnames.ora和sqlnet.ora两个文件。若是Oracle Client,则文件位置是...\client_1\NETWORK\ADMIN
方法三:
若装有Oracle Client,则可使用Enterprise Manager Console添加数据库连接,会修改tnsnames.ora文件(...\client_1\NETWORK\ADMIN)。
方法四:
查看sqlnet.ora中是否有NAMES,DIRECTORY_PATH等,可能与此有关。
[plain] view plaincopy
1. Enterprise Manager Console与Net Configuration Assist添加的数据库连接描述符不同,前者为...CONNECT_DATA=(SID=...)(SERVER=...)...,后者为...(SERVICENAME=...)...。
2. Enterprise Manager Console中删除一条连接后,tnsnames.ora中的描述字符串不会自动删除;Net Configuration Assist中删除一条本地Net服务配置后,tnsnames.ora文件中对应的描述字符串会自动删除。
3. 若安装配置OWB(Oracle Warehouse Builder),则文件位置是...\client_1\NETWORK\ADMIN
另见: