如下图,在Oracle安装完成后,打开PL/SQL Developer时,无法读取到Oracle的配置或监听。在网上搜索原因,有的介绍说是该工具默认无法获取64位的Oracle配置,具体原因也不是很明白。
在这里介绍一种解决方案:
1.下载压缩包。
去官网下载32位:instantclient-basic-win32-11.2.0.1.0.zip(49M左右)http://www.oracle.com/technetwork/topics/winsoft-085727.html。
完成后,解压至任一目录下,如:E:\app\instantclient_11_2
2.拷贝文件。
在Oracle的安装目录下,找tnsnames.ora文件,拷贝至步骤1解压目录下。
tnsnames.ora文件位置:E:\app\Shirny\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
3.配置PL/SQL。
设置“Oracle主目录名”和“OCI库”的路径。如上述目录,配置的路径分别是:
Oracle主目录名: E:\app\instantclient_11_2
OCI库: E:\app\instantclient_11_2\oci.dll
4.建立启动脚本,替代PL/SQL启动快捷方式。
脚本内容如下:
set path=E:\app\instantclient_11_2
set ORACLE_HOME=E:\app\instantclient_11_2
set TNS_ADMIN=E:\app\instantclient_11_2
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
start plsqldev.exe
新建文本文档:“plsqldev.txt”,复制上述内容,保存,关闭文档。将该文件扩展名修改成“.bat”。
并将该文件,剪贴至PL/SQL 安装目录下,如:E:\Program Files (x86)\PLSQL Developer\plsqldev.bat
5.双击该文件,便可看到PL/SQL的数据库配置了:
6.关于第5点脚本的这边拷贝一些注释。
NLS_LANG:属性值语音必须设置为AMERICAL.AMERICA。因为instantclient不支持其他语言。
ZHS16GBK是字符集,可查看Oracle字符集,选择并进行设置:
请输入用户名:system
输入口令:[安装时设定的口令]
连接到:
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
SQL > SELECT userenv('language') FROM DUAL;
USERENV('LANGUAGE')
----------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
附录:将快捷方式,变更成原PL/SQL图标: