簡體   English   中英

如何在Oracle中的遠程表空間上創建分區?

[英]How to create partition on remote tablespace in Oracle?

我是Oracle的菜鳥,是否可以使用db link將表分區到遠程服務器? 有可能嗎?

我正在嘗試這樣的事情:

CREATE TABLE Test (
  TestID       integer           not null,
  Name       varchar2(20)      not null
)
PARTITION BY LIST (TestID)
 (PARTITION testPart1 VALUES (1)
TABLESPACE tbspc1,
 PARTITION testPart2 VALUES (2)
TABLESPACE tbspc2@RemoteServer);

謝謝

不,那是行不通的。 您正在將實例與數據庫混淆。

數據庫是數據和元數據的物理存儲。 您使用的磁盤數量和磁盤位置由管理人員決定。 您可以將索引放在一個地方,將數據放在另一個地方; 您可以將一些數據放在本地驅動器上,而將一些數據放在已安裝的驅動器上。 那是一個數據庫。

實例是訪問數據庫並使其能夠查詢,寫入,更新等的存儲器結構和計算機進程。

當您說@DB_LINK ...時,您是在說“那組內存和cpu進程”。

當您說表空間時,您說的是“在那些文件上,在那些磁盤上”

如果要將數據存儲在與@dblink存儲數據的驅動器相同的驅動器上,請安裝該驅動器並在那里建立新的表空間。

如果您嘗試使用多個實例打開數據庫,則稱為RAC,這很麻煩。 <-之所以這樣說,是因為您必須先掌握這些概念,然后才能考慮使用RAC。

很難說是不可能的,但是根據CREATE TABLE的語法圖,這似乎是不可能的。 對於select語句,您可以看到dblink語法(@ dblink): http : //download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_10002.htm#i2126073但是對於分區存儲並沒有這樣的遠程語法: http : //download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_7002.htm#CJADDEEH

以下可能是一個合理的起點:

  1. 在“家庭辦公室”有一個數據庫來包含公共數據。

  2. 每個分支機構都有一個“本地”數據庫,用於存儲分支機構特定的數據,並帶有指向“家庭辦公室”數據庫的鏈接,以訪問公共數據。

  3. 為了幫助消除在中央數據庫宕機或通信丟失時可能發生的“單點故障”,您可以嘗試將公用數據從中央數據庫復制到分支數據庫,以便每個分支都有一個完整的數據庫。可以按某種常規時間表更新的公共數據的副本。

分享並享受。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM