PL/SQL Developer远程连接Oracle

PL/SQL Developer远程连接Oracle

已有 285 次阅读  2011-04-08 17:37
1.首先检查监听程序是否能正常启动,开始,运行 cmd--->lsnrctl start,检查监听是否是在正常运行,如果正常运行,会提示:TNS-01106: 使用名称LISTENER的监听程序已经启动。如果没有运行,用上面的命令启动监听程序。
2.还在命令提示行里用 tnsping 服务名 ,来检查tnsnames.ora服务配置是否正确。正确的提示例如:

已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 192.168.0.6)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = 服务名)))
OK (50 毫秒)
3.plsql developer 连接不上,可以在不登录的情况下,打开‘工具’-‘首选项’,设置下 oracle主目录名和OCI库的路径。
 
 
----------------------------------------------------------------
不用安装oracle客户端也可以用plsql连接远程oracle
关键字: plsql连接远程oracle
    每次问人家,plsql 可不可以直接远程连接服务器,他们都说要安装客户端,记得以前用过个什么sql deveplore 什么的工具,不用安装客户端的,而且是绿色软件来的,我就想,一定就办法,不用这么麻烦安装客户端的。上网找了找,下面把我的实践详细过程记录下来,希望对大家有帮助,有什么不对的,请大家多多评论,指出来。
1、在安装ORACLE服务器的机器上搜索下列文件
oci.dll
ocijdbc10.dll
ociw32.dll
orannzsbb10.dll
oraocci10.dll
oraociei10.dll
sqlnet.ora
tnsnames.ora
classes12.jar
ojdbc14.jar
放到一个文件夹,如 oraclient
  2、配置tnsnames.ora,如果本机上没有安装oracle
可以从安装了oracle的机上拷贝一个(tnsnames.ora文件在%ORACLE_HOME%/network/admin下)放在上面的目录D:/oraclient下。
oracledata =
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = oracledata)
    )
)

3、添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径(如:D:/oraclient,特别是重装后或其它操作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),这是为了能够找到上面说的tnsnames.ora。如果本机上安装了ORACLE,并且设置了ORACLE_HOME环境变量,那么会自动在%ORACLE_HOME%/network/admin/位置查找tnsnames.ora文件。

4、设置ORACLE的语言,添加环境变量:
“NLS_LANG = SIMPLIFIEDCHINESE_CHINA.ZHS16GBK”,(AMERICAN_AMERICA.US7ASCII 是ASCII编码类型,其它类型可自己到服务器看一下或网上查找一下)。
 
 
----------------------------------------------------------------
用PL/SQL Developer连接远程的ORACLE数据库

主要有2种方式:
1 是安装客户端,通过设置oci 和 客户端本地的tnsnames.ora文件来访问
2 通过databaselink来实现。

1 通过客户端实现PLSQLdev的远程访问
1) Install the oracle instant client (见上)
2) Configue the PLSQLdev
    make a directory network in instan_client_home
    copy the corresponding tnsname.ora into the directory
    start the plsqldev then Tools->Preferences,
    set oracle Home OCI Library : fill the instan_client_home path
                                                    fill the OCI.dll path (default in the instan_client_home)
    then restart and connect.
注意登录时的使用的“数据库名字”不是真正的dbname 而应该是tnsnames中的标识符的名字!

2 通过databaselink来实现。

大致分为两个步骤。
第一,在oracle企业管理器(OEM)里建立新的数据库,即在数据库树形图上点击将数据库添加到库。问清远程数据可得主机名(我以前就是写的远程机器的IP地址);端口号我以前用的是默认的1521没有修改;sid应该问明远程是什么,(有时需要在   tnsnames.ora脚本中修改   sid为service_name,具体原因我不是很清楚,主要看对方远程的数据库用的是sid还是service_name吧?)   ;最后的网络服务名自动生成,不需要自己手工修改。
  
第二,在PLSQL   Developer里左侧树状列表倒数第三项databaselink中,新建一个,name随便你自己起吧,username和password都要对方给你提供的,写进去。database需要写对方的数据库名。     如果是你自己用那台服务器和数据库的话,可以在public上面挑钩,如果是做项目,那么是不是public还要具体看了。最后点击apply按钮确认。
  
之后可以select   *   from   远程数据库的某个表名@dblink里你自己起的那个名字,测试是不是可以看到数据。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值