Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1121067
  • 博文数量: 159
  • 博客积分: 3063
  • 博客等级: 中校
  • 技术积分: 2703
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-01 01:51
文章分类

全部博文(159)

文章存档

2013年(48)

2012年(111)

分类: Oracle

2012-05-14 12:20:54

1、要想使用PL/SQL需要先安装oracle客户端(这个是必须的,要不然plsql就用不了,这个客户端可以去oracle官网上下载,名字叫instance client,尽量用较新的版本就可以了,windows版的大的也就50多M,还有精简版的20多M,地址:,挑个适合你的系统的版本的。)

oracle客户端的安装很简单,直接解压出来,放到你喜欢的目录下就算安装好了(比如我放在E:\instantclient_11_2这里了,instantclient_11_2就是客户端解压出来的目录)。

2、要使用oracle的客户端还需要配置一下,在oracle客户端目录里(E:\instantclient_11_2)新建个文件夹名字叫network,然后进入network目录再新建个目录admin,然后进admin目录,在此目录下要创建连接oracle数据库的配置文件tnsnames.ora(就得是这个名字,其它名字无效),该文件内容如下:

wpsdb1 =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.3)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = oracle1)
      (SERVICE_NAME = wpsdb.huacai.com)
    )
)

第一行开头不能有空格,那个wpsdb1是oracle数据库的实例名(ORACLE_SID)(有人说这个可以随便写我没试过。。。),

第二行无所谓,等号后留空即可

第三行很重要,HOST后面那个ip是oracle数据库所在的主机的ip,要是有域名解析的话可以用主机名,后面的那个port是oracle监听的端口,一般是1521(该端口可在oracle主机上用命令netstat -ntlp|grep tnslsnr查看)。

第四行无所谓,留空值即可

第五行那个oracle1是我的oracle的主机的主机名(可用命令hostname查看)

第六行很重要,网上很多资料说这个地方填oracle的sid,其实不然(我把oracle的sid值填上去后报错:ORA-12154 TNS:监听程序当前无法识别连接描述符中请求的服务),实际上这里应该填的是oracle的服务名,要查看这个服务名可在oracle主机上用oracle账户输入命令lsnrctl status查看,我的得到的执行结果里有这样几行:

Services Summary...
Service "wpsdb.huacai.com" has 2 instance(s).
Instance "wpsdb1", status READY, has 2 handler(s) for this service...
Instance "wpsdb2", status READY, has 1 handler(s) for this service...
对比上面SERVICE_NAME我添的值,应该不难判断你的服务名是什么了。

3、像上面这样配置完了后plsql还不能登录oracle使用,因为它现在还找不到你的这个oracle的客户端,但是可以进入软件里面,进入软件,选择Tools->Preferences,在Oracle Home和OCI Library两栏中分别填入Oracle客户端的路径和OCI文件的路径(oci.dll文件直接在instantclient_11_2文件夹下),所以我在这两个选项中填写的内容是"E:\instantclient_11_2"和"E:\instantclient_11_2\oci.dll"。这时再登录就可以登录成功了。如若还不行就重启一下PL/SQL。

4、有时候可能会出现客户端对中文支持不好的问题,可参照如下第三条的环境变量设置:

桌面上,右键点“我的电脑”,选择“属性”,选择“高级”页中的“环境变量”,在系统变量中,增加: 

   1) 变量名:ORACLE_HOME
      变量值:E:\instantclient_11_2
   2) 变量名:TNS_ADMIN
      变量值:E:\instantclient_11_2
   3) 变量名:NLS_LANG
      变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
   4) 修改Path变量,在后面添加 E:\instantclient_11_2
阅读(6194) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~