Navicat?Premium连接Oracle数据库的2种方式
目录
- Navicat Premium
- 使用版本说明
- 一、配置OCI
- 1.1 配置OCI环境变量
- 1.1.2 设置\高级系统设置
- 1.1.2 系统属性\高级\环境变量(N)
- 1.1.3 修改/添加系统变量 ORACLE_HOME
- 1.1.4 添加系统变量 TNS_ADMIN
- 1.1.5 未配置OCI环境变量会出现哪些情况?
- 1.2 、配置OCI.dll
- 1.2.1 正确配置
- 1.2.2 OCI 的错误配置
- 1.2.2.1 Cannot create oci environment
- 1.2.2.1 Cannot create oci environment
- 二、连接
- 2.1 连接类型 - Basic
- 2.2 连接类型 - TNS
- 三、其他报错
- ORA-01005
- ORA-01017
- ORA-12154
- ORA-28009
- 总结
Navicat Premium
使用版本说明
Navicat® Premium 版本 11.2.16 (64-bit)

一、配置OCI
1.1 配置OCI环境变量
1.1.2 设置\高级系统设置

1.1.2 系统属性\高级\环境变量(N)

1.1.3 修改/添加系统变量 ORACLE_HOME
ORACLE_HOME D:\app\root\product\12.1.0\dbhome_1

1.1.4 添加系统变量 TNS_ADMIN
TNS_ADMIN %ORACLE_HOME%\NETWORK\ADMIN

1.1.5 未配置OCI环境变量会出现哪些情况?
Cannot create oci environment

Access violation at address 00007FF90188A6EF in module ‘OraClient12.Dll’. Read of address 00000000000000D8

1.2 、配置OCI.dll
1.2.1 正确配置
配置路径 工具\选项\其他\OCI –
常规\OCI library (oci.dll) *OCI 的版本需要与Oracle数据库服务相匹配,否则会出现各种各样的问题。正确配置如下
- Oracle 服务器版本:- Oracle Database 12c 发行版
- Navicat Premium:- Navicat® Premium 版本 11.2.16 (64-bit)
- oci.dll:- 12.1.0.0
oci.dll 详情
- 文件位置:D:\app\root\product\12.1.0\dbhome_1\bin\oci.dll
- 文件说明:Oracle Call Interface
- 文件版本:12.1.0.0
- 修改日期:2014年9月11日,2:49:48
- 大小: 641,536 字节
修改完记得重启Navicat


1.2.2 OCI 的错误配置
1.2.2.1 Cannot create oci environment
- Oracle 服务器版本:- Oracle Database 12c 发行版
- Navicat Premium:- Navicat® Premium 版本 11.2.16 (64-bit)
- oci.dll:- 10.2.0.1
oci.dll 详情
- 文件位置:C:\Program Files\PremiumSoft\Navicat Premium\instantclient_10_2\oci.dll
- 文件说明:Oracle Call Interface
- 文件版本:10.2.0.1
- 修改日期:2014-11-11 14:42
- 大小: 516,096 字节
oci.dll 10.2.0.1 报错详情
Cannot create oci environment
Access violation at address 00000000169ECFD1 in module ‘Ora0CICUS10.dll’. Read of address 00000000000000D8

1.2.2.1 Cannot create oci environment
- Oracle 服务器版本:- Oracle Database 12c 发行版
- Navicat Premium:- Navicat® Premium 版本 11.2.16 (64-bit)
- oci.dll:- 10.2.0.1
oci.dll 详情
- 文件位置:C:\Program Files\PremiumSoft\Navicat Premium\instantclient_10_2\oci.dll
- 文件说明:Oracle Call Interface
- 文件版本:10.2.0.1
- 修改日期:2014-11-11 14:42
- 大小: 516,096 字节
oci.dll 10.2.0.1 报错详情
Cannot load OCI DLL, 193: D:\app\admin\product\11.2.0\client_1\oci.dll
Instant Client package is required for Basic and TNS connection.
For more information: http://wiki.navicat.com/wiki/index.php/lnstant_client_required

Cannot load OCI DLL 87:
Instant Client package is required for Basic and TNS connection.
For more information: http://wiki.navicat.com/wiki/index.php/lnstant_client_required

二、连接
2.1 连接类型 - Basic
-  连接名:<自定义>
-  连接类型:Basic
-  主机名或IP地址:<Oracle数据库服务端安装地址>
-  端口:1521(默认)
- 服务名或 SID:
-  服务名:orcl(默认)——全局数据库名(服务名)
-  SID:orcl(默认)——系统标识符(SID)
-  用户名:SYS、SYSTEM(默认)
-  密码:<自定义>

2.2 连接类型 - TNS
-  连接名:<自定义>
-  连接类型:TNS
-  网络服务名: ORCL(默认)——tnsnames.ora网络配置文件中的服务名
-  用户名:SYS、SYSTEM(默认)
-  密码:<自定义>
**tnsnames.ora**
# tnsnames.ora Network Configuration File: D:\app\root\product\12.1.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
PORTAL56_HIS =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-12Q8LR0)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = portal56_his)
    )
  )
TEST001 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.75.158)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-12Q8LR0)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
三、其他报错
ORA-01005
ORA-01005:给出空口令;登录被拒绝

密码不能填空

ORA-01017
ORA-01017: invalid username/password; logon denied

输入的账号或密码不正确

ORA-12154
ORA-12154: TNS: 无法解析指定的连接标识符
ORA-12154: TNS:could not resolve the connect identifier specified

- 检查系统变量 ORACLE_HOME 、 TNS_ADMIN 是否配置或配置是否正确
- 填写网络服务名称 %ORACLE_HOME%\NETWORK\ADMIN\tnsnames.ora 存不存在其中%ORACLE_HOME% 是安装目录,安装时指定,如:D:\app\root\product\12.1.0\dbhome_1`

ORA-28009
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

-  sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限。
-  system用户是管理操作员,权限也很大,具有susoper角色,没有create database的权限。
所以在使用
sys连接Oracle数据库时,需要选择sysdba角色,或者使用sys as sysdba作为用户进行登录在Navicat tab页"高级"中的角色选择SYSDBA

总结
到此这篇关于Navicat Premium连接Oracle数据库的2种方式的文章就介绍到这了,更多相关Navicat Premium连接Oracle内容请搜索电脑手机教程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持电脑手机教程网!
 
     
  
 