pl/sql远程连接orcle服务器问题

我已经装上了Oracle-OraClient10g_home1,用NetConfigurationAssistant建立一个‘本地Net服务名配置’,并且测试连接成功,可... 我已经装上了 Oracle - OraClient10g_home1,用Net Configuration Assistant建立一个‘本地Net服务名配置’ ,并且 测试 连接成功, 可是pl/sql developer 却连接不上远程数据库,这是为什么? 小菜鸟紧急求助! 展开
 我来答
Big嘴
2010-12-13 · TA获得超过4097个赞
知道小有建树答主
回答量:697
采纳率:50%
帮助的人:629万
展开全部
可能的问题:
1、windows的防火墙所致
2、环境变量PATH里没有加上%ORACLE_HOME%\bin导致
引用一个别人的东西吧。我也不太清楚:
ORACLE 连接设置方法很多,这里写四种,但主要是远程连接方法。

第一种情况:

若oracle服务器装在本机上,那就不多说了,连接只是用户名和密码的问题了。不过要注意环境变量%ORACLE_HOME%/network/admin/是否设置。

第二种情况:

本机未安装oracle服务器,也未安装oracle客户端。但是安装了pl sql development、toad sql development、sql navigator等管理数据库的工具。在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。

这种情况下,本人以pl sql development远程连接ORACLE服务端数据库为例:

1、在安装oracle服务器的机器上搜索下列文件,
oci.dll
ocijdbc10.dll(其中10代表oracle版本,若是其他版本,则需要修改之,例如改成ocijdbc9.dll或者ocijdbc11.dll)
ociw32.dll
orannzsbb10.dll(其中10代表oracle服务器版本,若是其他版本,则需要修改之,例如改成orannzsbb9.dll或者orannzsbb11.dll)
oraocci10.dll(其中10代表oracle服务器版本,若是其他版本,则需要修改之,例如改成oraocci9.dll或者oraocci11.dll)
oraociei10.dll(可能服务器没有,如果没有,就不用找了)
sqlnet.ora
tnsnames.ora
classes12.jar
ojdbc14.jar

把这些找到的文件复制放到一个文件夹,如 oraclient,将此文件夹复制到客户端机器上。如放置路径为 D:\oraclient

2、配置tnsnames.ora,修改其中的数据库连接串。
oracledata =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracledata)
)
)

其中,oracledata是要连接的服务名;HOST = 192.168.0.58,是服务器IP地址;PORT = 1521是端口号。

3、添加第一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径(如:D:\oraclient,特别是重装后或其它操作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),这是为了能够找到上面说的tnsnames.ora。这步是最重要的。

添加第二个环境变量(可有可无):
“NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,(AMERICAN_AMERICA.US7ASCII 是ASCII编码类型,其它类型可自己到服务器看一下或网上查找一下)(本步骤暂时要做对,如果编码不对,会产生乱码)

4、下载并安装PL SQL Developer配置应用:

打开PL SQL Developer,登入界面点取消,进入后选择菜单栏 tools->preferences->connection
设置:
Oracle Home=D:\oracleclient
OCI library=D:\oracleclient\oci.dll

5、再次打开plsql则会在database中有oracledata 选项输入用户名密码就可以登陆。

第三种情况:

本机未安装ORACLE服务器,但是安装了oracle客户端,也安装了pl sql development、toad sql development、sql navigator等管理数据库的工具。在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。

这种情况下,本人以pl sql development远程连接oracle服务端数据库为例:

1、打开oracle客户端中的net manager,配置要远程连接的数据库名、IP地址等,如果net manager中没有要远程连接的数据库名,则新建即可。

2、其他步骤与第二种情况中的2---5相同。

第四种情况:

本机未安装oracle服务器,也未安装pl sql development、toad sql development、sql navigator等管理数据库的工具,但是安装了oracle客户端。在虚拟机或者另一台电脑上安装了ORACLE服务器,也就是虚拟机或者另一台电脑此时作为服务器。

这种情况下,本人以oracle客户端中的sqlplus远程连接oracle服务端数据库为例:

1、打开oracle客户端中的net manager,配置要远程连接的数据库名、IP地址等,如果net manager中没有要远程连接的数据库名,则新建即可。

2、同第二种情况中的步骤二

3、同第二种情况中的步骤三

4、打开sqlplus:

(1)如果用sys用户登入,则用户名:sys 密码:xxxxxx 主机字符串:要连接的数据库名 as sysdba,登入即可。

(2)如果用其他用户登入,则用户名:xxx 密码:xxxxxx 主机字符串:要连接的数据库名,登入即可。

下面是注意事项:

1、服务器端和客户端防火墙需要关闭;

2、我们经常会遇到监听器服务无法启动,那么需要打开Net Configuration Assistant修复,或者新建监听器服务。

3、数据库密码如果忘了怎么办?按照以下方法修改密码即可:

开始-->运行-->cmd

输入 : sqlplus /nolog 回车

输入 : connect / as sysdba 回车

用户解锁 : alter user system account unlock 回车

修改密码:

alter user system identified by manager

4、怎样判断数据库是运行在归档模式下还是运行在非归档模式下?

进入dbastudio,历程--〉数据库---〉归档查看。

5、另外,如果本机和别的机子均安装了oracle服务器端,那么本机如果要连接别的机子,就必须修改环境变量。

下面是Oracle数据库常见问题诊断:

1 、TNS-12154 Error 或ORA-12154
特征:没有找到连接串或别名

原因1:(1)没有找到TNSNAMES.ORA文件

措施:需要在客户端设置TNS_ADMIN环境变量,变量值为TNSNAMES.ORA文件所在文件夹路径。或者在注册表 HKEY_LOCAL_MACHINESoftwareOracle 设置TNS_ADMIN 指向TNSNAMES.ORA文件的位置

原因2:(2)TNSNAMES.ORA文件中内容格式不对

措施:检查文件格式,标准格式如下:
oracledata =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP) (Host = 192.168.0.4) (Port = 1521) ) )
(CONNECT_DATA =
(SID = oracledata) ) )

2、NL-00462 Error 或ORA-00462

特征:监听器无法启动

原因:listener.ora文件内容错误,例如,括号不匹配、参数名错误等、多余的空格等。

措施:重新编辑文件或者启动Net Configuration Assistant修复

3、NL-00405 Error 或ORA-00405

特征:listener.ora文件不可读或找不到

原因:listener.ora文件内容错误,例如,括号不匹配、参数名错误等、多余的空格等。

措施:确保文件位置在缺省目录下$ORACLE_HOME/network/admin,或设置环境变量TNS_ADMIN指向这个文件所在位置。

4、TNS-01155 Error 或ORA-01155

特征:listener.ora文件中SID_LIST_LISTENER变量赋值不对

原因:listener.ora文件内容错误,SID_LIST_LISTENER变量赋值不对。

措施:确保文件中赋值正确,$ORACLE_HOME/network/admin/samples目录下有样例文件,可供参考。

5、TNS-12537 、TNS-12560、TNS-00507 Error

特征:listener.ora文件中引用了一个无效的协议适配程序

原因:listener.ora文件中procotol变量赋值不对。

措施:确保文件中赋值正确,一般用TCP协议,$ORACLE_HOME/network/admin/samples目录下有样例文件,可供参考。用adapters tnslsnr检查协议程序

6、TNS-12203 Error

特征:不能与目标连接

原因:监听器是否启动;别名是否配置

措施:检查监听器是否启动,例如lsnrctl status;检查tnsnames.ora的别名配置

7、TNS-12533 Error

特征:不能与目标连接

原因:非法的address参数

措施:检查tnsnames.ora的address参数
awaly0007
2010-12-13 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:74.1万
展开全部
你把问题的错误提示贴出来,这样好帮你解答,好吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
竹直心空
2010-12-13 · 超过14用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:27.4万
展开全部
楼上回答得很具体哦~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式