Navicat使用Instant Client建立鏈接到Oracle數據庫的正確姿式

太長不看版:html

1.你什麼操做系統,Instant Client就選什麼操做系統

2.你的navicat是多少位(3二、64),Instant Client就選多少位

3.你的Oracle是哪一個版本,Instant Client就選哪一個版本

4.下載Instant Client Package - Basic和Instant Client Package - SQL*Plus(這個可選),解壓到一個單文件夾

5.配置navicat:工具->選項->環境,把OCI環境和SQL*Plus(若是須要,且有)配上,從新啓動 Navicat

如下是正文:sql

===================== 我是分割線 =====================數據庫

Navicat是一套可建立多個鏈接的數據庫管理工具,用以方便管理 MySQL、Oracle、PostgreSQL、SQLite、SQL Server 和/或 MariaDB 等不一樣類型的數據庫,並支持管理某些雲數據庫,例如阿里雲、‎騰訊雲。Navicat 的功能足以符合專業開發人員的全部需求,可是對數據庫服務器初學者來講又至關容易學習。Navicat 的用戶界面 (GUI) 設計良好,讓你以安全且簡單的方法建立、組織、訪問和共享信息。

Navicat 提供了三種平臺的版本 - Microsoft Windows、macOS 和 Linux。它可讓用戶鏈接到本地或遠程服務器,並提供一些實用的數據庫工具以協​​助用戶管理數據,包括 Navicat Cloud 協同合做、數據建模、數據傳輸、數據同步、結構同步、導入、導出、備份、還原、報表建立工具和自動運行。編程

Navicat確實很好用,特別是Navicat Premium,它可讓你在單一應用程序中同時鏈接多達六種數據庫,可一次快速方便地訪問全部數據庫。相信你們在鏈接MySQL、MariaDB、SQL Server、SQLite 和 PostgreSQL時,問題都不大,可是遇到Oracle,總會出現這樣那樣的問題。windows

今天就和你們分享一下使用Navicat鏈接Oracle數據庫的正確姿式。安全

知其然,更要知其因此然。弄清楚了原理,再解決問題就不是什麼難事了。咱們首先須要知道的是,Navicat是怎麼鏈接和管理Oracle的,固然,這裏指的是Navicat Premium和Navicat for Oracle兩款產品。服務器

Oracle基礎不紮實的同窗,請自行補課,我這裏就簡單說下。oracle

在普通的狀況下,用戶能夠經過SQL和PL/SQL來訪問ORACLE數據庫中的數據。此外,ORACLE數據庫還提供了一組接口,讓用戶能夠經過C語言等來編程訪問數據庫,OCI就是爲了實現高級語言訪問數據庫而提供的接口。通俗地講,Navicat就是一個使用OCI來訪問ORACLE數據庫的一個圖形化界面。所以,咱們要想使用Navicat來鏈接和管理Oracle,首先要正確配置OCI。app

OCI從哪裏來?把Oracle在你機器上裝一遍,就有了,只是,這麼龐大的傢伙,裝都裝了,還要Navicat幹嗎?不急,Oracle給你們提供了一個叫作Instant Client的東西。地址:http://www.oracle.com/technet...。他是這麼描述的:ide

Free, light-weight, and easily installed Oracle Database tools, libraries and SDKs for building and connecting applications to an Oracle Database instance.

Oracle Instant Client enables applications to connect to a local or remote Oracle Database for development and production deployment. The Instant Client libraries provide the necessary network connectivity, as well as basic and high end data features, to make full use of Oracle Database. It underlies the Oracle APIs of popular languages and environments including Node.js, Python and PHP, as well as providing access for OCI, OCCI, JDBC, ODBC and ProC applications. Tools included in Instant Client, such as SQLPlus and Oracle Data Pump, provide quick and convenient data access.

看不懂?不要緊!要麼谷歌要麼度娘。關鍵是看到「Free, light-weight, and easily」就能夠了。二話不說,先下載下來,不過,點Downloads以後就懵了,選哪一個?隨便點個window的進去看看,更懵了,還有這麼多版本、類型。。。心中一萬點傷害,有木有!沒事,這就是咱們要說的重點。(感情上面一堆全是廢話啊,嗯,沒錯,都是廢話!)

1.選操做系統

個人navicat是在windows上用的,我就選了windows,其餘我沒親測,各位看官本身來吧。

2.32位仍是64位

這是個重點。網上處處都是說,navicat只支持32位,云云……我想說,那TM是從前了!Navicat 版本 10 或如下,Navicat 的確是只支持 32位的,但人家如今都出到12了好不。

圖片描述

個人,64-bit。

就一句話,你的navicat是32位你就下32位的Instant Client,你的navicat是64位你就下64位的Instant Client。原理,請自行谷歌。

3.Instant Client版本選擇

選好了操做系統和位數,點進去發現,還有各類版本,各類類型,可謂是玲琅滿目,眼花繚亂。該如何選擇呢?

先確認一下你的Oracle數據庫的版本。

SELECT * FROM v$version

能夠看到你的Oracle版本,個人是11.2,而後就選擇版本一致的Instant Client就能夠了。

4.須要下哪些

首先是Instant Client Package - Basic,其實就這一個就能夠了。

可是,爲了方便命令操做(navicat裏叫命令列),咱們須要再弄個sqlplus:Instant Client Package - SQL*Plus。

5.如何安裝

把上面下載的一個或兩個解壓(若是是兩個,放一塊兒就好了),我就直接放C:instantclient_11_2裏了。

接下來就是配置navicat。工具->選項->環境。把OCI環境和SQL*Plus配上,從新啓動 Navicat,就OK了。

圖片描述

6.一點廢話

有地方會說(包括官方),須要把解壓後的路徑(個人是C:instantclient_11_2)加入環境變量。我這裏是沒有加的。若是你須要在全局是用sqlplus等,就須要加進去,我沒有這個需求,因此就沒加了,根據你的狀況來,反正不是必須的。另外要說的是,若是你加了環境變量,在配置OCI環境時,就能夠在下拉時看到這個oci.dll文件。

其實,navicat自己是帶了oci的,爲何咱們還要費那麼大勁去本身弄了。由於用不了唄。爲何用不了呢?看了前面就知道了,版本對不上~~~

7.常見錯誤

ORA-XXX:Oracle 那邊飛過來的錯誤,通常是OCI/instantclient版本不對,好比,你直接用了navicat自帶的oci環境。

oracle library is not loaded:navicat這邊報的錯,oci庫根本就沒加載,通常就是32位64位搞錯了

祝你們玩的愉快!

相關文章
相關標籤/搜索