使用PLSQL连接Oracle数据库的问题

今天用plsql去连接数据库失败,这个也不能算是bug,只能说是没有使用过的工具,不了解,具体是因为之前是同事给我弄的连接我的一个项目的数据库,现在换了项目做,所以我就在项目里面找了一下新项目的数据库配置,找到数据库的相关配置:(因为是公司的东西,所以IP端口以及数据库啥的我就自己编一个假的了),如下:
jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.242.41.159)(PORT = 1522))) (CONNECT_DATA =(SERVICE_NAME = ORAINST1)))

这个也很明显,就是要去连接IP为10.242.41.159,端口为1522,数据库名为ORAINST1的数据库,所以我就打开plsql,到登录界面 使用PLSQL连接Oracle数据库的问题
让我输入用户名密码,这个都没问题,因为项目配置文件里面也有,但是下面应该是让我选择数据库,我发现下拉框里有3个,但是都不是名为ORAINST1的数据库,但是我发现这个下拉框可以自己输入值,所以我就输入了ORAINST1,点击连接,当然是连接不上的.

原因不知道,去上网查,网上反正一大堆,大部分都说需要本地安装一个oracle,但是我之前本地好像也没装啊,不是都能连接上数据库吗,所以我就没去安装,我回头想想,之前好像同事给我plsql安装包的时候,还给了我一个tnsnames.ora的文件,并且让我进入plsql的D:\software\plsql\PLSQL Developer9\instantclient_11_2\NETWORK\ADMIN(这是我安装的路径哈),
如图:
使用PLSQL连接Oracle数据库的问题
说白了就是进入到instantclient_11_2\NETWORK\ADMIN这个目录,把里面的tnsnames.ora文件换掉,当时不知道为什么,反正没用过,同事让做什么就做什么,现在想起来,我就去找这个文件,打开一看,这不就是数据库的配置吗,这里面大概就是把数据库的ip,端口还有数据库名(之前的是ahdb)都配置了一下,然后统一起了个名字(OA201),如图:
使用PLSQL连接Oracle数据库的问题
所以当时连接的时候下拉框选择的是OA201,它就代表了我要连接的数据库位置,因为已经在tnsnames.ora里面配置好了,这样的话不就简单了,我把我这次要连接的数据库也照样子配置了一份(上图第一个就是),如下:
TYMHCSJ_159 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.242.41.159)(PORT = 1522))
)
(CONNECT_DATA =
(SERVICE_NAME = orainst1)
)
)

配置好了之后,输入用户名密码,数据库在下拉框里选择TYMHCSJ_159就行了.但是连接好像没成功,所以我取消登录,以未登录的方式进入了plsql(取消之后plsql是可以自动以未登录的形式登录的哈)
上网查询了,好像还要配置一个东西,具体如图:
使用PLSQL连接Oracle数据库的问题
简单说一下,打开plsql里面的 工具->首选项,出现的就是这个图,然后主要配置的就是Oracle 主目录名和OCI库
Oracle主目录名我配的是D:\software\plsql\PLSQLDeveloper9\instantclient_11_2
OCI库我配置的是 D:\software\plsql\PLSQL Developer9\instantclient_11_2\oci.dll
这是我的安装路径,所以这样配置,然后关闭plsql让配置生效,再登录,成功了,数据库也连接上了

所以总结一下就是:首先你得知道自己项目数据库的ip,端口和数据库名,然后找到plsql的tnsnames.ora文件,去配置你的数据库,最后去plsq工具->首选项配置Oracle主目录名和OCI库,就可以了