oracle遠端連線(PLSQL,SQL developement + Oracle資料庫 + 用戶端 + 遠端連線設定,plsqldevelopement

來源:互聯網
上載者:User

oracle遠端連線(PLSQL,SQL developement + Oracle資料庫 + 用戶端 + 遠端連線設定,plsqldevelopement

  伺服器端

    配置:oracle11g R2 x64

   1.設定監聽

    a.啟動欄 -> 開始 -> 程式 -> Oracle-OraDb11g_home1 -> 配置和移植工具 -> Net Manager

    b.Oracle  Net 配置 -> 本地 -> 監聽程式 -> LISTENER ,查看是否有本地地址在監聽,沒有則添加,主機:"localhost",連接埠:1521,協議:TCP/IP

    2.關閉所有防火牆(包括Window防火牆)。若出現無監聽程式,就是防火牆問題了。

    3.啟動TNS監聽服務:lsnrctl  start  (此程式LSNRCTL.exe位於oracle_path/product/11.2.0/dbhome_1/BIN目錄下


PS: 我的system使用者登陸不上,sys,scott 使用者倒是可以登入的。我貌似明白了,DBA 是不讓遠端連線的?但是用sys使用者可以以DBA登入呀。

    用戶端(Windows)

    1.下載Instant Client for Microsoft Windows (32bit) 並安裝,地址:   instant client下載

    2.將instant client的安裝目錄加入path環境變數中

    3.建立tnsnames.ora設定檔,內容格式如下:

[plain] view plaincopy
  1. # tnsnames.ora Network Configuration File: C:\e\orcldb\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora  
  2. # Generated by Oracle configuration tools.  
  3.   
  4. WSR =  
  5.   (DESCRIPTION =  
  6.     (ADDRESS_LIST =  
  7.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.112)(PORT = 1521))  
  8.     )  
  9.     (CONNECT_DATA =  
  10.       (SERVICE_NAME = orcl)  
  11.     )  
  12.   )  
  13.   
  14. ORACLR_CONNECTION_DATA =  
  15.   (DESCRIPTION =  
  16.     (ADDRESS_LIST =  
  17.       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))  
  18.     )  
  19.     (CONNECT_DATA =  
  20.       (SID = CLRExtProc)  
  21.       (PRESENTATION = RO)  
  22.     )  
  23.   )  
  24.   
  25. LISTENER_ORCL =  
  26.   (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))  
  27.   
  28. ORCL =  
  29.   (DESCRIPTION =  
  30.     (ADDRESS_LIST =  
  31.       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))  
  32.     )  
  33.     (CONNECT_DATA =  
  34.       (SERVER = DEDICATED)  
  35.       (SERVICE_NAME = orcl)  
  36.     )  
  37.   )  

    比如此檔案,我建立的TNS服務名為WRS,Oracle伺服器位址為192.168.1.112,Oracle伺服器監聽連接埠為1521,串連的Oracle資料庫名為orcl,可以按此格式進行替換。

    4.添加TNS_ADMIN環境變數,指向建立的tnsnames.ora設定檔。


    至此,配置已經完成,可以用pl/sql developer之類的工具串連遠程oracle資料庫,database即為添加的tns服務名(這裡為WSR)


    如果要用odbc串連資料庫,還要添加odbc資料來源,64位系統用C:\Windows\SysWOW64\odbcad32.exe,32位系統用C:\Windows\System32\odbcad32.exe



以下方法沒有成功呀。。。。。。。。


Oracle資料庫的遠端連線可以通過多種方式來實現,本文我們主要介紹四種遠端連線的方法和注意事項,並通過樣本來說明,接下來我們就開始介紹。

第一種情況:

若oracle伺服器裝在本機上,那就不多說了,串連只是使用者名稱和密碼的問題了。不過要注意環境變數%ORACLE_HOME%/network/admin/是否設定。

第二種情況:

本機未安裝oracle伺服器,也未安裝oracle用戶端。但是安裝了pl sql development、toad sql development、sql navigator等管理資料庫的工具。在虛擬機器或者另一台電腦上安裝了oracle伺服器,也就是虛擬機器或者另一台電腦此時作為伺服器。

這種情況下,本人以pl sql development遠端連線ORACLE服務端資料庫為例:

1、在安裝oracle伺服器的機器上搜尋下列檔案:

oci.dll
ocijdbc10.dll
ociw32.dll
orannzsbb10.dll
oraocci10.dll
oraociei10.dll
sqlnet.ora
tnsnames.ora
classes12.jar
ojdbc14.jar
把這些找到的檔案複製放到一個檔案夾,如 oraclient,將此檔案夾複製到用戶端機器上。如放置路徑為 D:oraclient。

2、配置tnsnames.ora,修改其中的資料庫連接串。

 

oracledata =   (DESCRIPTION =   (ADDRESS_LIST =   (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))    (CONNECT_DATA =   (SERVICE_NAME = oracledata)    ) 

其中,oracledata是要已連線的服務名;HOST = 192.168.0.58,是伺服器IP地址;PORT = 1521是連接埠號碼。

3、添加第一個環境變數,名為TNS_ADMIN,值為tnsnames.ora檔案所在路徑(如:D:oraclient,特別是重裝後或其它操作,忘了TNS_ADMIN變數,plsql登陸就會報無法解析指定的串連標識符),這是為了能夠找到上面說的tnsnames.ora。這步是最重要的。

添加第二個環境變數(可有可無):“NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,(AMERICAN_AMERICA.US7ASCII 是ASCII編碼類別型,其它類型可自己到伺服器看一下或網上尋找一下)(本步驟暫時要做對,如果編碼不對,會產生亂碼)。

 

4、下載並安裝PL SQL Developer配置應用:

開啟PL SQL Developer,登入介面點取消,進入後選擇功能表列 tools->preferences->connection :

 

Oracle Home=D:oracleclient   OCI library=D:oracleclientoci.dll 

5、再次開啟plsql則會在database中有oracledata 選項輸入使用者名稱密碼就可以登陸。

第三種情況:

本機未安裝ORACLE伺服器,但是安裝了oracle用戶端,也安裝了pl sql development、toad sql development、sql navigator等管理資料庫的工具。在虛擬機器或者另一台電腦上安裝了oracle伺服器,也就是虛擬機器或者另一台電腦此時作為伺服器。

這種情況下,本人以pl sql development遠端連線oracle服務端資料庫為例:

1、開啟oracle用戶端中的net manager,配置要遠端連線的資料庫名、IP地址等,如果net manager中沒有要遠端連線的資料庫名,則建立即可。

2、其他步驟與第二種情況中的2---5相同。

第四種情況:

本機未安裝oracle伺服器,也未安裝pl sql development、toad sql development、sql navigator等管理資料庫的工具,但是安裝了oracle用戶端。在虛擬機器或者另一台電腦上安裝了ORACLE伺服器,也就是虛擬機器或者另一台電腦此時作為伺服器。

這種情況下,本人以oracle用戶端中的sqlplus遠端連線oracle服務端資料庫為例:

1、開啟oracle用戶端中的net manager,配置要遠端連線的資料庫名、IP地址等,如果net manager中沒有要遠端連線的資料庫名,則建立即可。

2、同第二種情況中的步驟二。

3、同第二種情況中的步驟三。

4、開啟sqlplus:

(1)如果用sys使用者登入,則使用者名稱:sys 密碼:xxxxxx 主機字串:要串連的資料庫名 as sysdba,登入即可。

(2)如果用其他使用者登入,則使用者名稱:xxx 密碼:xxxxxx 主機字串:要串連的資料庫名,登入即可。

注意事項:

1、伺服器端和用戶端防火牆需要關閉;

2、我們經常會遇到***服務無法啟動,那麼需要開啟Net Configuration Assistant修複,或者建立***服務。

3、資料庫密碼如果忘了怎麼辦?按照以下方法修改密碼即可:

開始-->運行-->cmd

輸入 :sqlplus /nolog 斷行符號

輸入 :connect / as sysdba 斷行符號

使用者解鎖 : alter user system account unlock 斷行符號

修改密碼:alter user system identified by manager

4、怎樣判斷資料庫是運行在歸檔模式下還是運行在非歸檔模式下?

進入dbastudio,曆程--〉資料庫---〉歸檔查看。

5、另外,如果本機和別的機子均安裝了oracle伺服器端,那麼本機如果要串連別的機子,就必須修改環境變數。


使用PLsql進行遠端連線伺服器端oracle資料庫,需要在伺服器端或者用戶端做什工作--我的疑問如下:

步驟1:在用戶端先安裝oracle用戶端和PLSQL軟體,就是在oracle安裝過程中選擇安裝用戶端就可以了 。
步驟2:在伺服器端安裝oracle伺服器端(管理員級的)就可以了。
步驟3:配置本網服務名配置:
開啟Oracle的Oracle Net Configuration Assistant(在配置和移植工具下面)

選擇本網服務名配置,下一步

下一步,設定服務名。當前Oracle中執行個體(資料庫名)

下一步,選擇協議
下一步,設定主機名稱和連接埠

進行測試連接

第二步安裝PL_SQL_Developer
直接通過pls-setup.exe安裝,輸入sn.txt中序號。點擊【下一步】安裝成功即可。
配置PL_SQL
點擊安裝後的PL_SQL,先不輸入使用者名稱和密碼。按順序進入Edit->Preferrences然後進行如下配置:

然後重新登入PL SQL,輸入使用者名稱和密碼即可


 
使用oracle用戶端與plsql dev串連遠端資料庫,需要什服務

沒有圖片呢?
只需啟動oracle用戶端所需的服務就可以了,沒有額外的服務。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.