注:此解决方案只适用于windows用户
最近要开发新的接口,所以有必要把oracle、plsql等必备工具装上,考虑到电脑是64位的操作系统,所以就安装的64位的oracle11G和PLSQL Developer,然后打开plsql之后始终连接不上数据库,查询一些资料后才知道,目前plsql只支持32位的oracle,那我这都已经安装好了,不忍心再卸载重新安装,咨询了一些人,也查了很多资料,最后找到了解决办法,现在将其分享出来,希望对大家有帮助。
##一. 找到tnsnames.ora 进入目录F:\oracle11G\product\11.2.0\dbhome_1\NETWORK\ADMIN,具体看本机的oracle安装目录。在此目录下找到tnsnames.ora,如果没有则新建txt文件然后改名为tnsnames,注意后缀名也要改。 接着使用文本格式打开此文件,我的如下:
# tnsnames.ora Network Configuration File: F:\oracle11G\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
HRMS_DEV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.0.71)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hrms)
)
)
LOCAL_XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
TEST01 = (DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.50)(PORT=1522))
(CONNECT_DATA=
(SERVICE_NAME=TEST01)
(INSTANCE_NAME=TEST01)
)
)
最上面的目录为当前文件目录,下面是连接oracle的数据库代码,根据需要添加。 ##二. 下载instantclient 我已经将此文件上传至百度云,有需要的可直接下载http://pan.baidu.com/s/1jHggnUA。 然后解压此文件,将F:\oracle11G\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的tnsnames.ora文件拷贝至instantclient_11_2目录下
##三.配置PLSQL 打开PLSQL Developer,选择Tools -> perference -> Connection,配置其中的Oracle Home和OCI Library项,如下图所示:
其中,
- Oracle Home:F:\oracle11G\product\instantclient_11_2
- OCI Library:F:\oracle11G\product\instantclient_11_2\oci.dll
##四. 配置环境变量 右击"我的电脑" - "属性" - "高级" - "环境变量" - "系统环境变量":
- 这里是列表文本.选择"Path" - 点击"编辑", 把 " F:\oracle11G\product\instantclient_11_2;" 加入;
- 点击"新建", 变量名设置为"TNS_ADMIN", 变量值设置为" F:\oracle11G\product\instantclient_11._2;", 点击"确定";
- 这里是列表文本点击"新建", 变量名设置为"NLS_LANG", 变量值设置为"SIMPLIFIED CHINESE_CHINA.ZH1. S16GBK", 点击"确定";
这样就设置完毕了,可以正常连接oracle数据库,希望可以帮到大家。 ![]