windows远程连接centos系统下的Oracle教程以及解决ora-12514 could not resolve the connect identifier specified报错方案
因为刚入职新企业,还是大型公司,所有在数据库方面用的是oracle,之前做了几年的项目都是用mysql,虽然oracle也用过,但是都已经忘完了,好在数据库的共通之处还是挺多的,所以学起来还是比较容易上手, 那么既然是学习,肯定是要装一个oracle啦,一般人都是自己开个虚拟机,直接在上面装,而我就不同了,要学就学最难的,直接在linux上装,也因为我自己买了云服务器;说到安装oracle...
因为刚入职新企业,还是大型公司,所有在数据库方面用的是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 成功登陆
更多推荐
所有评论(0)