工具连接:/s/1nvbWlqL
常用的Oracle开发的工具有sql Developer和PL/sqlDeveloper,个人感觉前者虽然跨平台性优于后者,但比较大(大于300M)占用资源,而且用户体验也一般,而后者相对就小很多(小于30M),用起来也比较顺手。
用PL/sql连接oracle数据库,不管是本地的还是远程的,一般都需要安装oracle客户端(500M左右)比较大,而且在各个系统上安装也有些讲究,需要修改相应配置文件,有点麻烦。
如何达到不安装oracle客户端,又能使用PL/sql工具?本人做了如下测试并达到目的。
测试环境:win7系统,未安装过oracle包括客户端,本机虚拟机linux中装有oracle,并有一个可用的orcl实例;
1. oracle官网提供了instantclient,下载instantclient-basic包,将包解压存放到本地,本测试为
D:\iechenyb\PLsql\instantclient_11_2;
2. 在这个目录下新建sqlnet.ora和tnsnames.ora两个文件
sqlnet.ora文件内容
---------------------
sqlNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT)
tnsnames.ora文件内容
-------------------------
orcl= (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.61.151)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.69.202.100)(PORT=1521)))(FAILOVER=yes)(LOAD_BALANCE=yes)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=kiiik)(FAILOVER_MODE= (TYPE = select)(METHOD = preconnect) (RETRIES = 20) (DELAY = 5) )))
orcl=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.146.143)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME =orcl)
)
)
注:斜体部分需要按需配置,如果端口是自定义的也需要相应变更。
3. 配置环境变量
变量名 变量值
TNS_ADMIN D:\STUDY\instantclient_10_2
注:这里变量值即为instantclient在本地的主目录;如果不配置该变量,
连接时会报错ORA-12154: TNS:could not resolve the connect identifier specified。
4. 安装PL/sql Developer,并配置oracle的连接参数:
打开PL/sql,Tools-->Preferences,配置Connection的Oracle Home和OCI library,如下图所示
5.重新启动PL/sql,登录测试,OK!