问题背景
在使用Oracle开发过程中,经常会使用工具来连接数据库,方便查询、处理数据。其中有很多工具可以使用,比如dbeaver、plsql等。本文主要介绍在win10环境下,plsql14的安装步骤以及安装过程中遇到的一些问题。
安装步骤及问题
安装环境:
系统:win10 64位。
Oracle客户端:win32_11gR2_client。
plsql:plsqldev1405x64。
安装步骤:
- 安装Oracle客户端。
安装步骤比较简单,可参考《oracle 11gR2 client(oracle客户端的安装)》
重点说下遇到的问题。当解压后,点击setup.exe出现报错,环境不满足最低要求。如下图所示。
解决方案:
在client安装文件的解压文件中找到cvu_prereq.xml
,路径一般在stage/cvu/
下,然后使用记事本打开。增加以下代码,如图所示:
<OPERATING_SYSTEM RELEASE="6.2"><VERSION VALUE="3"/><ARCHITECTURE VALUE="64-bit"/><NAME VALUE="Windows 10"/><ENV_VAR_LIST><ENV_VAR NAME="PATH" MAX_LENGTH="1023" /></ENV_VAR_LIST>
</OPERATING_SYSTEM>
配置完成后,再次点击setup.exe即可正常安装。
- 配置Tnsnames.ora文件
按照上述安装文档,添加监听后,就可以在client的安装路径下*\oracle\product\11.2.0\client_1\network\admin
,找到tnsnames.ora文件。
ORCL = #数据库实例名(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.200.145)(PORT = 1521)) #连接数据库IP和端口)(CONNECT_DATA =(SERVICE_NAME = orcl) #数据库服务名))
可以根据实际需求,进行修改,修改的字段为上述注释部分。
-
安装plsql。
此处不再赘述,安装步骤很简单。
需要注意的是,在安装时,需要选择是试用版,还是选择直接输入激活版。如果选择激活,那么激活码需要自行获取。 -
配置plsql,并启动使用。
安装完成后,首先增加两个环境变量。
变量名:ORACLE_HOME
变量值:Oracle客户端的安装路径。
变量名:TNS_ADMIN
变量值:Oracle客户端的安装路径。
配置完成后,无需登录,直接进入到plsql,找到
configure
下的preferences
,如下图所示。
修改配置,增加Oracle home和OCI library。这两个路径均为Oracle客户端的安装路径。
完成后,重启plsql,进行输入,出现报错Could not initialize oci.dll。这个问题的主要原因是安装完后Oracle的 oci.dll 是32位的,而64位应用程序 PLSQL Developer 无法加载,或者相反。
解决方案:
下载一个适配64位系统的OCI。
下载地址:
https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html
注意:下载需要登录Oracle账号。如果没有账号,又不想注册,可以使用以下方式。登录以下网址(Oracle.com logins),里面提供部分Oracle内部账户及密码,我们可以临时使用这些账户来下载。
在这里可以找到适配的instantclient,将该文件解压到任意文件夹下,此处我解压到了Oracle客户端的安装目录下。然后在plsql中的preferences,重新选择instantclient下的OCI。
完成以上步骤,输入Oracle数据库的用户名、密码就可以正常登录了。
其他问题
使用plsql进行查询,发现中文出现乱码。数据全部展示为了问号。原因主要是由于oracle客户端和服务器端的编码方式不一样。为了验证是否是编码格式问题,进行以下操作。
首先查看数据库的字符集。
select userenv('language')from dual
然后查看本地字符集。
select * from V$NLS_PARAMETERS
此时发现本地字符集与数据库字符集不一致。
解决方案:
增加环境变量,保证本地与数据库服务端字符集一致。
变量名:NLS_LANG
变量值:AMERICAN_AMERICA.ZHS16GBK
配置完成后,再次重启plsql,进行查询,可以看到已经解决了乱码问题。
如果这篇博客对大家有所帮助,我希望能得到各位的免费
点赞
和收藏
,作为对我的鼓励和支持。
同时,也请大家在评论区
留下您宝贵的意见和建议,我将非常欢迎。
感谢大家的支持
、评论
和收藏
!!!