本文將談談Oracle用戶表空間關系,這在Oracle中比較重要。希望本文能對大家了解Oracle用戶表空間關系有更多的幫助。
一個用戶可以使用一個或多個表空間,一個表空間也可以供多個用戶使用。用戶和表空間沒有隸屬關系,表空是一個用來管理數據存儲邏輯概念,表空間只是和數據文件發生關系,數據文件是物理的,一個表空間可以包含多個數據文件,而一個數據文件只能隸屬一個表空間。
用戶屬於數據庫實例的,在一個實例下不能同名用戶。但在一Oracle服務器,可以創建多個實例,只要你的機器配置夠用就可以。因為一個實例啟動起碼需要100多兆內存的。所以在一Oracle服務器上可以存在多個同名用戶,他們是屬於不同數據庫實例,他們對應使用的表空間在不同的實例上。
查詢表空間和用戶之間的關系:
- 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這個用戶,能把它所有數據都導出嗎?可以。