远程连接oracler的plsql配置(本机未安装oralce)

使 oracle 免费发放的instant client来代替oracle client,免去了安装的麻烦,下载instantclient-basiclite-nt-11.2.0.2.0.zip解压到你想要放到的任何目录,如:D:\oracle\instantclient_11_2,创建一个名叫tnsnames.ora的文件,放到该目录下,可以先创建成txt文档,保存完下面的内容再把扩展名.txt去掉:
myDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.23)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = testdb)
)
)
注:
myDB 为连接数据库别名
HOST = 192.168.7.23 为你连接的数据库ip
PORT = 1521  为你数据的端口
SERVICE_NAME = testdb  为你数据库实例名
 
右击我的电脑选 属性”->“ 高级”->“ 环境变量”->” 系统变量
新增下面两个变量
TNS_ADMIN    D:\oracle\instantclient_11_2
 

NLS_LANG    SIMPLIFIED CHINESE_CHINA.ZHS16GBK
软件上的设置(版本为8.0)
在PLSQL Developer选择Tools > Preferences > connection,在右侧的 "Oracle Home" and "OCI Library"中填入以下内容:
D:\oracle\instantclient_11_2
D:\oracle\instantclient_11_2\oci.dll
完成以上的设置应该就能正常登录数据库了,如果还有别的问题,只能再次Google.



如何为一个instance配置多个监听,并且实现Client Load Balancing和Client Load Balancing。
打开NETCA,配置两个监听器。
LISENTER,默认监听器,一路next,就配置完毕, 监听端口1521。
配置LISENTER2,注意监听端口改为1522,其它和LISENTER一致。
这个时候,LISENTER已经可以使用了。

但是LISENTER2还是不行,因为Oracle只会为第一个默认的监听注册服务
在$ORACLE_HOME/NETWORK/ADMIN,编辑lisenter.ora文件,如下:
红色字体为需要增加的内容
SID_LIST_LISTENER2 =
(SID_LIST =
  (SID_DESC =
    (SID_NAME = WWJ)
    (ORACLE_HOME = d:\oracle\product\10.2.0\db_1)
    (GLOBAL_DBNAME = WWJ) 
  )
)


LISTENER2 =
(DESCRIPTION_LIST =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = valen)(PORT = 1522))
  )
)

SID_LIST_LISTENER =
(SID_LIST =
  (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = d:\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc)
  )
)
LISTENER =
(DESCRIPTION_LIST =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = valen)(PORT = 1521))
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
  )
)
需要解释的是,SID_LIST_<lisenter name> 这里的<lisenter name>要和LISTENER名称一致。
SID_DESC则注册要提供服务的数据库实例名。这样LISTENER2 才能够提供服务。
否则会报TNS-错误。
测试过程,配置local tns name如下:
1522 =
(DESCRIPTION =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522))
  )
  (CONNECT_DATA =
    (SERVICE_NAME = wwj)
  )
)
1521 =
(DESCRIPTION =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
  )
  (CONNECT_DATA =
    (SERVICE_NAME = wwj)
  )
)

local  =
(DESCRIPTION =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522))
  )
  (CONNECT_DATA =
    (SERVICE_NAME = wwj)
  )
)
1522和1521分别对应两个监听器,local稍后再解释:
测试:
SQL> conn@1521
已连接。
SQL> conn@1522
已连接。
OK,再看local,
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522))
这里的意思是,该命名对应了两个监听端口,如果一个Crash,会立刻切换到另外一个。
并且如果多个连接,会随机的分配监听。
测试
SQL> conn @local
已连接。
STOP LISENTER,再次连接,这个时候,连接比第一次慢了1秒钟左右
SQL> conn @local
已连接。
成功,这时连接上了LISTENER2
关于Oracle网络服务的资料,在OCP教材的第四章Oracle Net Services有很清晰的说明。


Oracle 版本:11g
运行环境: window XP
远程连接 需要两台电脑,一个是远程服务器端 ;一个是本机客户端。并且要保证在两台电脑上同时安装了Oracle 11g

先假设,你的电脑作为本机客户端,你同事的电脑作为远程服务器端。
具体配置如下:
1 设置远程服务器端的Oracle,即你同事电脑上的Oracle,需要设置 2 个地方:
 (1)设置"Database Configuration Assistant",在进行第6步:连接模式 时选择:“共享服务器模式” 。
并且下面的 “共享服务器” 选择 3 以上。然后点击“确定”或“是” 。

 (2)服务器端还要设置 net manager:监听程序 | LISTENER | 添加地址,主机填 客户端 电脑的ip,端口是:1521;

 (3)设置完成之后,停止服务,然后启动服务。


2 设置本机客户端,即你电脑上的Oracle

 (1)设置 "Net Configuration Assistant"  
"Net Configuration Assistant" 工具 -> "本地NET服务名配置" -> "添加" -> 选择ORACLE数据库或服务-> 输入服务名(远程服务器端的Oracle的全局数据库名) -> TCP -> 主机名中输入服务端IP地址,端口输入服务端监听程序所监听的端口 -> 是,进行测试 -> 首次测试可能会失败,因为默认的用户名口令不一定和服务端的匹配,点击 更改登录 输入服务端的用户名和口令,确定后如出现"测试成功",说明连接成功

 (2)设置完成之后,停止服务,然后启动服务。

 (3)按 winkey + R ,弹出“运行”对话框 , 运行cmd ,进入dos界面,输入 sqlplus /nolog  回车。

 (4)输入 conn scott/234@//192.168.1.106:1521/orcdb

或者: conn scott/234@192.168.1.106:1521/orcdb

就可以连接到服务器端的Oracle了。
 ( 注: scott/234 是服务器端的Oracle的用户 ,192.168.1.106 是服务器端的ip ,orcdb 是服务器端的Oracle的全局数据库名 )。
 -------------- 至此配置完成! -------------


服务端:
1、增加一个listener:终端运行: $ORACLE_HOME/bin/netca  (必须在图形界面环境下),按照提示增加一个listener。

2、增加listener支持的服务:终端运行: $ORACLE_HOME/bin/netmgr  (图形界面下),在: Oracle Net Configuration -> Local -> Listeners -> xxxx  (你刚才增加的那个listener),从中选择“Database services”,增加你要服务的database。其中, 注意Global Database Name就是你的对外的服务名字。 然后保存并退出。

3、重启你的listener:终端运行:
$ORACLE_HOME/bin/lsnrctl stop
$ORACLE_HOME/bin/lsnrctl start

最后提示:
Service "XXXX" has 1 instance(s).
The command completed successfully.


好了,到现在服务端的listener配置按成了。

客户端:
1、配置一个“Local Service Name Configuration”:终端运行: $ORACLE_HOME/bin/netca  ,选择: Local Service Name Configuration ,按照提示操作。其中, Service Name写和服务器端配置的时候添的那个“Global Database Name”; Host name写服务器IP (如果是在局域网内,也可些服务器名字);最后给这个本地服务起一个名字(例如叫:LSN)。然后保存并退出。

2、通过sqlplus连接到服务器上的数据库:
格式: sqlplus 用户名/密码@本地服务的名字
例子: sqlplus user/password@LSN



1,项目使用的是oracle11g数据库,安装个客户端访问服务器. 

    到oracle官方下载: 
    http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/htdocs/winsoft.html  (中文)
    http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html下载下列几个压宿文件 

http://www.oracle.com/technetwork/cn/topics/winsoft-095945-zhs.html


   oracleDBinstantclient-basic-win32-11.1.0.7.0.zip     这是最核心的包 
   instantclient-jdbc-win32-11.1.0.7.0.zip     包含JDBC Driver的包 
   instantclient-sqlplus-win32-11.1.0.7.0.zip   最简单的SQLPLUS包 



    我把文件解压到了d盘,d:\oracleclient11g下面 

    最后的文件结构应该如下:
Oracle客户端安装 - bxl766 - bxl766的博客
 

    2,配置tnsnames.ora,如果本机上没有安装oracle,可以从安装了oracle的机上拷贝一个(tnsnames.ora文件在%   ORACLE_HOME%\network\admin下)放在上面的目录d:\oracleclient11g下。 
oracledata = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.112)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
      (SERVICE_NAME = orcl) 
    ) 
  ) 

    

    3,添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径(如:d:\oracleclient11g),这是为了能够 找到上面说的tnsnames.ora。如果本机上安装了ORACLE,并且设置了ORACLE_HOME环境变量,那么会自动 在%ORACLE_HOME%/network/admin/位置查找tnsnames.ora文件。 

    4,设置ORACLE的语言,添加注册表项:“NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,位于 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE。如果本机没有安装ORACLE,在H_L_M\SOFTWARE\下是没 有"ORACLE"这一项的,需要手动创建,然后再在ORACLE项下创建键NLS_LANG,键值为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 

    5,下载并安装PL.SQL.Developer配置应用 
    配置tools->preferences->connection 
Oracle客户端安装 - bxl766 - bxl766的博客
 
    找到等号左侧参数填写等号右侧对应的内容 
    Oracle Home=D:\oracleclient11g
    OCI library=D:\oracleclient11g\oci.dll 

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


http://v.youku.com/v_playlist/f5172664o1p12.html


http://www.youku.com/playlist_show/id_4359957.html



http://www.youku.com/playlist_show/id_4368229.html


-----------------------------------------------------------------------------
服务器: rhel5.4 (安装了oracle 11g)

客户端: window 7  安装  PLSQL Developer
               oracle 客户端软件: instantclient-basic-nt-11.2.0.3.0.zip

客户端配置:
1. 解压到D盘:D:\instantclient_11_2 (解压路径)
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 tnsnames.ora文件内容如下:
ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  ) 

ORCL = 
  (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)( HOST = 192.168.1.218)( PORT = 1521)) 
    (CONNECT_DATA = 
      (SERVER = DEDICATED) 
      ( SERVICE_NAME = DATA) 
    ) 
  )

说明
ORCL =  这边必须顶格写 
2 安装:PLSQL Developer9 (版本)
按步骤(略)
配置:
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 

3.客户端登录:
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 双击登录

PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 数据库选择中 出现  多个 字符串不是 pl sql 正确读取   tnsnames.ora   (ORCL是我们自己定义的)
PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 连接远程数据库 ORCL

PL/SQL Developer远程连接Oracle数据库(可以使用) - zhuzhu - 五事九思 (大连Linux主机维护)
 测试sql方式。

-------------------------------------------------------------------------------------------------------------------------------------------------------------
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值