配置使用Navicat或PLSQL可视化工具远程连接Oracle

Posted 微枫Micromaple

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置使用Navicat或PLSQL可视化工具远程连接Oracle相关的知识,希望对你有一定的参考价值。

写在前面

本文讲解的是在没有 Oracle 环境,如何使用可视化工具配置远程连接服务器 Oracle 数据库。

目录

一、概述

很多时候,我们需要使用SQL客户端工具连接服务器的 Oracle,由于本地没有安装Oracle,没有连接Oracleoci.dll文件,导致使用可视化工具(如NavicatPLSQL等)连接不上 Oracle。Oracle官网的一个客户端工具包Instant Client,可以帮助我们解决这个问题。

这里以Oracle Version 11.2.0.4.0为例。如果你需要连接服务器的 Oracle 版本为其他版本,选择对应版本号进行操作。

二、下载 Oracle Instant Client

首先到官网下载Oracle Instant Client

下载地址:

https://www.oracle.com/database/technologies/instant-client/downloads.html

首先选择你客户端操作系统,我这里是Windows 64 位,选择第一个即可

找到版本为11.2.0.4.0,选择Instant Client Package - Basic,进行下载。


下载完成后解压到一个能够方便找到的文件夹。如图:

三、配置环境变量

位置:选中我的电脑—>右键点击属性—>找到高级系统设置—>点击环境变量

配置如下:

  • 在系统变量中增加变量名:ORACLE_HOME,变量值:D:\\tools\\instantclient_11_2
  • 编辑系统变量中的Path,在变量值中增加%ORACLE_HOME%
  • 在系统变量中增加变量名:TNS_ADMIN,变量值:%ORACLE_HOME%
  • 在系统变量中增加变量名:NLS_LANG,变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

四、配置监听

在刚刚我们解压后的instantclient_11_2的目录下增加tnsnames.ora文件。内容如下:

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.xxx)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
  • HOST: 需要连接数据库的IP或主机名
  • PORT: 需要连接数据库的端口
  • SERVICE_NAME: 需要连接数据库的实例名

最外层的 ORCL 为对本机暴露的实例名称

五、可视化工具环境配置

5.1、Navicat

Navicat中配置OCI环境后,重启Navicat即可。

配置位置:工具—>选项—>环境

5.2、PLSQL

配置位置:Preferences—>Connection

注意:配置好后需要重启工具,在进行登录

Navicat 远程连接 MySQL

相信大家都有在远程服务器上进行开发吧,其中 MySQL 的使用率应该也会挺高,如果使用 Navicat 等可视化工具来操作远程数据库不失为一种很好的选择,避免了在命令行写 SQL 语句的操作。下面简单介绍一下 Navicat 连接远程数据库的操作。

1

首先我们需要更改 3306端口,查看3306 端口是否对外开放,MySQL 默认情况下是不开放对外访问功能的。语句如下:

netstat -an | grep 3306

如果查询结果如下,需要我们更改 MySQL 配置文件。

技术分享图片

可以看出,mysql的3306端口只是监听本地的连接,这样就阻碍了外部IP对该数据库的访问,修改 MySQL 配置文件 my.conf :

vim /etc/mysql/my.cnf

找到

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address  = 127.0.0.1 

bind-address = 127.0.0.1 这行注释掉或者改为你想要使用的客户端主机 ip。

至此 MySQL 远程访问端口就成功开启了。

2

我们进入 MySQL 命令界面,运行下列SQL 语句,查看用户是否具有访问权限:

use mysql;
select user, host from user;

返回结果如下:

技术分享图片

我们使用通配符 % 来修改 root 用户对应的 host 字段,使具有访问所有 ip 地址的权限:

update user set host = ‘%‘ where user = ‘root‘;

如果抛出如下异常:

Duplicate entry ‘%-root‘ for key ‘PRIMARY‘

说明有多个ROOT用户纪录在USER表中了,我们重新执行:

select host from user where user = ‘root‘;

便能看到字段 host 的 % 值。

我们执行:

flush privileges;

刷新一下 MySQL 的系统权限相关表。

最后重启一下 MySQL 服务:

sudo restart mysql

3

服务端设置好了,我们在 Navicat 客户端设置一下连接:

打开 Navicat,点击左上方的 "连接",设置一下数据库的用户名,地址,密码等,便能在 Navicat 中远程操作服务器上的 MySQL 啦。

技术分享图片

以上是关于配置使用Navicat或PLSQL可视化工具远程连接Oracle的主要内容,如果未能解决你的问题,请参考以下文章

plsql能远程连上oracle数据库,java程序连不上

SQLite 数据库管理工具navicat 怎么用

SQLite 数据库管理工具navicat 怎么用

SQLite 数据库管理工具navicat 怎么用

PLSQL配置怎么连ORACLE

navicat premium15免费版安装说明(附工具)