一.背景
在开发过程中,我们会遇到本机不装Oracle,需要通过PLSQL等工具连接服务器上Oracle的情况。
前段时间因为项目组需要,搜索了很多资料,踩了很多坑,终于把他搞通了。
在此记录一下整个过程,希望能帮到更多的小伙伴。
首先要搞清楚一点,Oracle不像MySQL一样,安装之后默认就可以远程连接。
远程连接Oracle需要在没装Oracle的电脑上安装Oracle客户端以及配置服务端的网络访问监听。
废话不多说,下面开始演示用PLSQL和Navicat工具连接Oracle的过程。
二.服务器端的配置(远程访问的前提条件)
1.在装有Oracle数据库的电脑中配置网络访问监听
开始→Oracle – OraDb11g_home1,点击Net Manager
监听程序中的主机参数一定要设置为电脑名称
2.验证服务器端监听是否配置成功
在没有装Oracle的电脑上ping服务器的IP,telnet服务器1521端口
如果以上两项都能通(如图中所示),则说明远程连接已配置好
三.没装Oracle的电脑上的配置
1.安装Oracle官方提供的客户端工具
a) 到官网下载Oracle client,如果懒得去官网,可以下载我上传的版本,地址如下:
下载后解压到自己电脑上,位置根据自己习惯来
b) 配置环境变量
在系统变量中新增TNS_ADMIN变量,值为你解压的目录,如下图所示
其实后来发现这里不配置环境变量也可以,配置的好处是PLSQL可以自动识别
c) 修改network\ADMIN中的tnsnames.ora中的配置
解释:这个文件里配置的每一个连接代表一个源,配置了这个就可以在PLSQL中直接选源。
不配置源也可以,只不过麻烦一点,输入IP输账号密码也可以连,详细请看后面
d) PLSQL和Navicat的安装我就不在此处介绍了,不过我要提醒一点,也是我踩的最大的一个坑:
PLSQL和Navicate的位数必须与Oracle client的位数相匹配!
PLSQL和Navicate的位数必须与Oracle client的位数相匹配!
PLSQL和Navicate的位数必须与Oracle client的位数相匹配!
重要的事情说三遍,这是我踩的最大的一个坑,位数不匹配会报各种各样莫名其妙的错导致连不上
为了保证顺利的连接,最好是:服务器Oracle的位数、Oracle Client的位数、PLSQL和Navicat位数保持一致!
2.PLSQL和Navicat工具的配置
a) PLSQL
首次打开软件点击取消直接进入工具,进入菜单配置-首选项,配置如下两项
然后保存,重启PLSQL就可以连接啦。
这里再啰嗦一句:
远程连接有两种方式,第一种是上面所说的配置源,配置了源就可以直接选,如下:
第二种就是输IP,如下:
b) Navicate
进入Navicate,工具-选项-环境,修改下面配置保存并重启Navicate即可
注意:Navicat登录系统管理员用户(sys)需要设置角色,如下所示:
最后,祝你好运,有问题可以在评论区留言。