oracle一個使用者可以多個表空間,但是預設的表空間只有一個,當建立表、視圖、索引等不指定表空間時,都會存放在預設表空間中,一個使用者可以使用一個或多個表空間,一個表空間也可以供多個使用者使用。
本教學操作環境:windows10系統、Oracle 19c版本、Dell G3電腦。
oracle的一個使用者有多個表空間嗎
一個使用者可以同時管理很多表空間,但是預設表空間只有一個,當建立表,視圖,引索等不指定表空間時都會存放在預設表空間。
一個使用者可以使用一個或多個表空間,一個表空間也可以供多個使用者使用。使用者和表空間沒有隸屬關係,表空是一個用來管理資料儲存邏輯概念,表空間只是和資料檔案發生關係,資料檔案是物理的,一個表空間可以包含多個資料文件,而一個資料檔只能隸屬一個表空間。
表空間與使用者的關係
在建立使用者時,一個使用者只能指明一個表空間。多個使用者可以指明同一個表空間。是1:N
訪問時表空間時,對使用者授權即可存取。是N:N
表空間
建立表空間會在實體磁碟上建立一個資料文件,作為資料庫物件(使用者、表、預存程序等等)的實體儲存空間;
一個表空間只能屬於一個資料庫。所有的資料庫物件都存放在指定的表空間中。但主要存放的是表,所以稱作表空間。
oracle中使用者的所有資料都是存放在表空間中的
表空間(tablespace)是資料庫的邏輯劃分,每個資料庫至少有一個表空間(稱為SYSTEM表空間)
表空間建立在1個或多個資料檔上;
不同的表空間有不同的權限控制。使用者對於表空間A具有完全控制權限,可能對於表空間B就只有查詢權限,甚至連連接的權限的都沒有。
使用者
建立使用者必須為其指定表空間,如果沒有顯性指定預設表空間,則指定為users表空間;建立使用者後,可以在使用者上,建立表格、預存程序等等其他資料庫物件;
一個使用者有一個預設空間
多個使用者可以共用一個預設空間
1)、同一個資料庫用例中,用戶名是不能重複的
2)、不同使用者中可以建立同名的表格
3)、表空間建立後需要建立使用者後才能使用,因為任何資料庫物件都需要建立在一個資料使用者上
4)、連接dba權限的使用者可以直接存取其他使用者的資料庫對象,否則需要相關使用者授權
5)、存取其他使用者的資料庫對像是時需要加上物件所屬使用者的使用者名稱
oracle是由使用者和表空間對資料進行管理和存放的。但是表格不是由表空間去查詢的,而是由使用者去查的。因為不同使用者可以在同一個表空間建立同一個名字的表。
以上是oracle一個使用者可以多個表空間嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!