2010-03-19 97 views
1

有沒有人有10g和11g之間的數據庫鏈接經驗?10g和11g之間的Oracle數據庫鏈接

這是受支持的設置/操作?可能嗎?有什麼問題嗎?注意事項?

+0

將安裝11g在接下來的幾周內測試此設置。對於這方面的經驗,仍然會有更多的迴應。 – JavaRocky 2010-03-22 23:24:21

回答

4

我一直在使用從11g到10g的DB鏈接。沒有大問題。

唯一需要注意的是,11g可以使用混合大小寫的密碼,如果您嘗試從10g數據庫連接到11g數據庫,則可能需要將其關閉。

+0

謝謝。您是否考慮過使用大寫密碼來連接10g到11g,仍然允許混合大小寫密碼? – JavaRocky 2010-03-19 02:49:39

1

有時候會出現問題,當從11G鏈接到10.2.0.4時。

Oracle Support Doc ID 730423.1:選擇本地功能和遠程表使用Dblink掛起由於Enq DX。

+0

謝謝。繼承人一些參考。 http://www.ora600.be/node/1955 http://surachartopun.com/2008/12/dbink-hangs-enq-dx-contention.html – JavaRocky 2010-03-21 22:26:37

1

如果你在11g中有一個外連接查詢,也使用IN或OR,並且這些表是通過db_link引用到10g,那麼也可以拋出ORA-01719。

11g到11g的工作原理是10g到10g - 如果你從11g到10g的db_link,就會出現。

具體來說,我目前使用11.2.0.1到10.2.0.3看到這個問題;和11.2.0.2至10.2.0.4。以及不同的操作系統版本:Windows和Solaris。在目標10g和11g數據庫

運行以下命令:

創建您11克db_links(DB10,DB11)連接數據庫的10g和11g的鏈接數據庫兩者。

運行這些查詢在11克連接數據庫:

/* this will fail 11g to 10g*/ 
SELECT * 
FROM [email protected] a, 
(SELECT * 
FROM [email protected] 
WHERE c1 IN (1, 2, 3)) b 
WHERE a.c1 = b.c1(+); 

/* this will work 11g to 11g*/ 
SELECT * 
FROM [email protected] a, 
(SELECT * 
FROM [email protected] 
WHERE c1 IN (1, 2, 3)) b 
WHERE a.c1 = b.c1(+); 
2

在選擇列表與DBLINK視圖不再能夠從另一個架構通過同義詞(使用甲骨文10工作)

訪問

視圖

create or replace foo_view as 
select [email protected] id --yes, I know this is stupid... legacy code 
from [email protected] 

在其他DB用戶

create synonym foo_synonym for otherdb.foo_view 

選擇foo_synonym: 「用於遠程數據庫ORA-02019連接描述未找到」

的解決方案是,以除去從底層視圖的選擇子句 dblinks(這不應該真正在那裏在首位) :

create or replace foo_view as 
select foo.id id 
from [email protected] foo