因为刚入职新企业,还是大型公司,所有在数据库方面用的是oracle,之前做了几年的项目都是用mysql,虽然oracle也用过,但是都已经忘完了,好在数据库的共通之处还是挺多的,所以学起来还是比较容易上手, 那么既然是学习,肯定是要装一个oracle啦,一般人都是自己开个虚拟机,直接在上面装,而我就不同了,要学就学最难的,直接在linux上装,也因为我自己买了云服务器;说到安装oracle,真是一把辛酸一把泪啊,太tm麻烦了,都不是人干的事,复杂不说,配置一大堆;而且还得小心翼翼,一个配置没配对就有可能导致各位问题, 反正我是重装了好几次、系统也还原了好几次才成功的;关于centos系统装oracle11g的方法可以看我的帖子:https://blog.csdn.net/qq_27184497/article/details/103787722,里面有详细的说明;

        关键是装好了之后,用远程连接还出现了一大堆的问题,其中最难解决就是:ora-12514 could not resolve the connect identifier specified 这个问题了,因为它花费了很多的时间,所以在这里记录一下,以免下次忘记,也期望能帮助到各位!

一、下载远程连接软件

        首先,先下载pl/sql development,我用的是9.0版本,网上搜一大把,

二、下载配置oracle客户端

安装好之后再下载oracle的客户端 Instant client,这是一个轻量级的客户端;下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

因为我的客户端是win10系统64位,所以我选择windows版本的客户端

里面的版本有很多,最高版本都是乡下兼容的,因为我的oracle版本是11g的,我所以我选择11.2.0.4.0版本,点击旁边的向下的按钮就可以下载了。

下载后解压到自己的任意目录,比如我的目录是:D:\oracle client\instantclient_11_2  。在这个目录下新建文件夹 network,在network文件夹下在新建一个 文件 ADMIN ,在ADMIN文件夹下新建一个文件 tnsnames.ora。内容如下:

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCLDatebase =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 47.52.68.75)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

ORACLR_CONNECTION_DATA主要用于调用外部过程。如使用全文检索时就需要设置EXTPROC_CONNECTION_DATA
一般对我们是没啥用的;

ORCLDatebase 是连接数据库的别名,可以随便起

HOST = 47.52.68.* 是你连接数据库的主机ip地址

SERVICE_NAME :是数据库名(对应jdbc:oracle:thin:@10...**:1521:corcl)。可以通过 select * from v$database语句查询出来;

三、配置PL/SQL development

打开plsql后,先不登录,点击cancel(取消)按钮直接进入页面,在tools->preferences->connection(工具–首选项–连接)中配置Oracle Home(Oracle 主目录)和OCI library(OCI库),大家根据自己客户端路径进行配置,配置如下: 

Oracle Home(Oracle 主目录)填入内容:D:\oracle client\instantclient_11_2

OCI library(OCI库)填入内容:D:\oracle client\instantclient_11_2\oci.dll

保存以上配置后,重新启动PLSQL,登录,数据库填写上面配置的连接名ORCLDatebase ,要对应;我用的是oracle默认账户scott/tiger  。使用这个账户之前要先解锁才能使用,具体方法请自行百度;

完成!

 

注意:如果没有出现以下这个错误,可不需要进行第四步环境变量配置,重启plsql developer若不能正常使用在进行下面配置

但是我一点击ok,出问题了,直接显示 ora-12514 could not resolve the connect identifier specified

它的中文意思是:监听程序当前无法识别连接描述符中请求的服务

 

 

四、配置环境变量 

在win10下操作的

NLS_LANG
AMERICAN_AMERICA.AL32UTF8
或 SIMPLIFIED CHINESE_CHINA.ZHS16GBK

TNS_ADMIN
D:\oracle client\instantclient_11_2 \network\ADMIN

五、重启oracle监听服务

这些配置还不够,为了确保再次出现问题,继续在centos服务器中重启监听服务,

注意:以下是在linux系统的操作

 以oracle身份登录数据库

 su -oracle

        

关闭数据库

sqlplus / as sysdba  # 以系统管理员进入 sqlplus 控制台

shutdown immediate # 关闭数据库

exit # 退出sqlplus控制台:

 

重启oracle监听服务

lsnrctl  #  进入监听器控制台

stop  # 关闭监听器

start # 启动监听器

exit  #退出监听控制台

    重新启动数据库

sqlplus / as sysdba # 以系统管理员进入 sqlplus 控制台

startup # 启动数据库

exit  # 退出sqlplus控制台

设置完后回到win10系统,打开PLSQL软件,点击 ok 成功登陆

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐