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
- # tnsnames.ora Network Configuration File: C:\e\orcldb\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
- # Generated by Oracle configuration tools.
-
- WSR =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.112)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVICE_NAME = orcl)
- )
- )
-
- ORACLR_CONNECTION_DATA =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
- )
- (CONNECT_DATA =
- (SID = CLRExtProc)
- (PRESENTATION = RO)
- )
- )
-
- LISTENER_ORCL =
- (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
-
- ORCL =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVER = DEDICATED)
- (SERVICE_NAME = orcl)
- )
- )
比如此檔案,我建立的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用戶端所需的服務就可以了,沒有額外的服務。