Oracle如何連接遠(yuǎn)程數(shù)據(jù)庫(kù)
成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)服務(wù)團(tuán)隊(duì)是一支充滿著熱情的團(tuán)隊(duì),執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時(shí)竭誠(chéng)為客戶提供服務(wù)是我們的理念。成都創(chuàng)新互聯(lián)把每個(gè)網(wǎng)站當(dāng)做一個(gè)產(chǎn)品來(lái)開(kāi)發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!
配置好相關(guān)的文件就可以,一般是tnsname.ora文件。
一般oracle10g的文件所在目錄為:C:\oracle\product\10.2.0\db_1\network\ADMIN
其他版本的可在oracle目錄下搜索tnsname.ora文件名進(jìn)行修改。
ora =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
oracle如何連接別人的數(shù)據(jù)庫(kù)
其中ora為本地實(shí)例名,xxx.xxx.xxx.xxx為遠(yuǎn)程IP地址,1521為端口號(hào),orcl為遠(yuǎn)程數(shù)據(jù)庫(kù)實(shí)例名,按照對(duì)方提供的內(nèi)容進(jìn)行修改即可。
1、對(duì)方的主機(jī)能被連接(如在同一局域網(wǎng)內(nèi))
2、需要知道對(duì)方數(shù)據(jù)庫(kù)IP、端口號(hào)、服務(wù)名
3、需要知道對(duì)方提供的管理數(shù)據(jù)庫(kù)的用戶名及密碼
連接方法:
1、在本地的oracle安裝目錄,找到tnsnames.ora文件,一般在~\oracle\product\10.2.0\db_1\network\ADMIN目錄下,如圖:
2、用文本打開(kāi)tnsnames.ora文件,添加以下內(nèi)容:
本地自定義實(shí)例名 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 數(shù)據(jù)庫(kù)IP或數(shù)據(jù)庫(kù)主機(jī)名)(PORT = 數(shù)據(jù)庫(kù)端口號(hào)))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 數(shù)據(jù)庫(kù)服務(wù)名)
)
)
3、保存文件即可。
4、打開(kāi)第三方工具,如plsq,輸入對(duì)方提供的用戶名及密碼,選擇新建的數(shù)據(jù)庫(kù)鏈接即可。
為以后的工作做準(zhǔn)備
第一步:orahome92-configuration and migration tools- net managers
第二步:在“服務(wù)命名”中點(diǎn)“+”
第三步:編輯一個(gè)你的服務(wù)名,(不是對(duì)方的數(shù)據(jù)庫(kù)名)
第四步:默認(rèn)選擇TCP/IP
第五步:主機(jī)名填入對(duì)方的機(jī)器IP地址,端口默認(rèn)(不要改)
第六步:服務(wù)名是對(duì)方的數(shù)據(jù)庫(kù)名(要問(wèn)對(duì)方),連接類(lèi)型默認(rèn)(不要改)
第七步:連接測(cè)試
切換到MyEclipse database explorer視圖..
在左邊右鍵new..新建一個(gè)數(shù)據(jù)庫(kù)連接..
然后找吧..有個(gè)選項(xiàng)讓你選數(shù)據(jù)庫(kù)的..選oracle..就會(huì)出來(lái)oracle的url..不過(guò)需要你補(bǔ)充一些地方..比如..ip地址..sid..
步驟1:打開(kāi)企業(yè)管理器,如下。
步驟2:選擇數(shù)據(jù)庫(kù),安全性,點(diǎn)擊新建鏈接服務(wù)器。
步驟3:選擇鏈接服務(wù)器屬性,常規(guī),輸入名稱:TEST,選擇ORACLE數(shù)據(jù)庫(kù)提供程序,輸入名稱、數(shù)據(jù)源。
步驟4:進(jìn)行安全性設(shè)置。本地登錄,選擇SQLServer數(shù)據(jù)庫(kù)登錄用戶,遠(yuǎn)程登錄用戶和密碼,輸入遠(yuǎn)程連接數(shù)據(jù)庫(kù)的用戶和密碼,選擇用此安全上下文進(jìn)行,輸入遠(yuǎn)程登錄用戶和密碼。
5
步驟5:點(diǎn)擊TEST鏈接服務(wù)器下的表,我們可以訪問(wèn)ORACLE數(shù)據(jù)庫(kù)的表了。
注意:產(chǎn)品名稱要和所鏈接的服務(wù)器相對(duì)應(yīng),使用ORACLE數(shù)據(jù)庫(kù)就要輸入ORACLE,使用SQLServer就輸入SQLServer。
SQL SERVER連接oracle數(shù)據(jù)庫(kù)幾種方法
--1 方式
--查詢oracle數(shù)據(jù)庫(kù)中的表
SELECT *
FROM OPENDATASOURCE(
'MSDAORA',
'Data Source=GE160;User ID=DAIMIN;Password=DAIMIN'
)..DAIMIN.JOBS
--在sqlserver中創(chuàng)建與oracle數(shù)據(jù)庫(kù)中的表同名的表
select * into JOBS from
OPENDATASOURCE(
'MSDAORA',
'Data Source=GE160;User
ID=daimin;Password=daimin'
)..DAIMIN.JOBS
select * from JOBS
--2、方式
--在master數(shù)據(jù)庫(kù)中查看已經(jīng)存在的鏈接服務(wù)器
select * from sysservers
EXEC sp_addlinkedserver
@server = 'GE160',
@srvproduct = 'Oracle',
@provider = 'MSDAORA',
@datasrc = 'GE160'
exec sp_addlinkedsrvlogin 'GE160', false, 'sa', 'daimin', 'daimin'
--要在企業(yè)管理器內(nèi)指定登錄帳號(hào)
exec sp_dropserver GE160
select * from GE160..DAIMIN.JOBS
delete from GE160..DAIMIN.JOBS
--備注:引用ORACLE服務(wù)器上的表時(shí),用戶名稱與表名一定要大寫(xiě)字母。
SELECT *
FROM OPENQUERY(GE160, 'SELECT * FROM DAIMIN.JOBS')
--3、方式
SELECT a.*
FROM OPENROWSET('MSDAORA',
'GE160';'DAIMIN';'DAIMIN',
DAIMIN.JOBS) AS a
ORDER BY a.JOB_ID
--4、方式 ODBC
--ODBC方式比較好辦
SELECT A.*
FROM
OPENROWSET('MSDAORA','GE160';'DAIMIN';'DAIMIN', --GE160是數(shù)據(jù)源名
DAIMIN.JOBS) AS
A
ORDER BY A.JOB_ID