淺述Oracle使用者表空間關係

liuhaimiao發表於2014-09-18

本文將談談Oracle使用者表空間關係,這在Oracle中比較重要。希望本文能對大家瞭解Oracle使用者表空間關係有更多的幫助。

一個使用者可以使用一個或多個表空間,一個表空間也可以供多個使用者使用。使用者和表空間沒有隸屬關係,表空間是一個用來管理資料儲存邏輯概念,表空間只是和資料檔案發生關係,資料檔案是物理的,一個表空間可以包含多個資料檔案,而一個資料檔案只能隸屬一個表空間。

使用者屬於資料庫例項的,在一個例項下不能同名使用者。但在一Oracle伺服器,可以建立多個例項,只要你的機器配置夠用就可以。因為一個例項啟動起碼需要100多兆記憶體的。所以在一Oracle伺服器上可以存在多個同名使用者,他們是屬於不同資料庫例項,他們對應使用的表空間在不同的例項上。

查詢表空間和使用者之間的關係:     

  1. SELECT FROM DBA_SEGMENTS WHERE TABLESPACE_NAME=? 

Oracle使用者表空間關係FAQ:

在Oracle中建立了一個使用者UB,它的預設表空間是TSA,在資料庫用了一段時間後,發現原來搞錯了,把預設表空間改成TSB。現在想問幾個問題:

1.資料究竟放在那個表空間上了?

更改以前的放在tsa裡面,後來的放在tsb裡面 

2.我想把資料都放回表空間TSB上可以嗎?

將表b存放在tsa裡面 --alter   table   b   move   tablespace   tsb;   

3.怎樣才知道資料表放在哪個表空間上?select   table_name,TABLESPACE_NAME   from   user_tables;  

4.我用Exp   來匯出UB這個使用者,能把它所有資料都匯出嗎?可以。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/223653/viewspace-1273278/,如需轉載,請註明出處,否則將追究法律責任。

相關文章