基礎概念:Oracle數據庫、實例、用戶、表空間、表之間的關係
數據庫:
Oracle數據庫是數據的物理存儲。這就包括(數據文件ORA或者DBF、控制文件、聯機日誌、參數文件)。其實Oracle數據庫的概念和其它數據庫不一樣,這裏的數據庫是一個操作系統只有一個庫。可以看作是Oracle就只有一個大數據庫。
實例:
一個Oracle實例(Oracle Instance)有一系列的後臺進程(Backguound Processes)和內存結構(Memory Structures)組成。一個數據庫可以有n個實例。
用戶:
用戶是在實例下建立的。不同實例可以建相同名字的用戶。
表空間:
表空間是一個用來管理數據存儲邏輯概念,表空間只是和數據文件(ORA或者DBF文件)發生關係,數據文件是物理的,一個表空間可以包含多個數據文件,而一個數據文件只能隸屬一個表空間。
數據文件(dbf、ora):
數據文件是數據庫的物理存儲單位。數據庫的數據是存儲在表空間中的,真 正是在某一個或者多個數據文件中。而一個表空間可以由一個或多個數據文件組成,一個數據文件只能屬於一個表空間。一旦數據文件被加入到某個表空間後,就不能刪除這個文件,如果要刪除某個數據文件,只能刪除其所屬於的表空間才行。
注:
表的數據,是有用戶放入某一個表空間的,而這個表空間會隨機把這些表數據放到一個或者多個數據文件中。由於oracle的數據庫不是普通的概念,oracle是有用戶和表空間對數據進行管理和存放的。但是表不是有表空間去查詢的,而是由用戶去查的。因爲不同用戶可以在同一個表空間建立同一個名字的表!這裏區分就是用戶了!
關係示意圖:
理解1:
Oracle數據庫可以創建多個實例,每個實例可以創建多個表空間,每個表空間下可以創建多個用戶(同時用戶也屬於表空間對應的實例)和數據庫文件,用戶可以創建多個表(每個表隨機存儲在一個或多個數據庫文件中),如下圖:
理解2:
理解1MS有誤。
實例下有和,授權訪問,是管理的,經授權在中創建,隨機存儲到不同的中。如下圖所示:
操作1:
安裝Oracle後會有默認的實例,即ORCL。一般不創建多個實例,在默認實例下創建表空間和用戶等。
1,運行CMD進入DOS界面,首先輸入:sqlplus,回車;再輸入:sys/sys as sysdba,回車,即進入“SQL〉”操作狀態。
2,輸入:CREATE TABLESPACE 表空間名稱 LOGGING DATAFILE 'c:\表空間數據文件.ora' SIZE 500M autoextend on next 200m maxsize 2048m;,表空間創建完成。
3,輸入:CREATE USER 用戶名稱 PROFILE default IDENTIFIED BY 用戶密碼 DEFAULT TABLESPACE 授權訪問的表空間名稱 TEMPORARY TABLESPACE temp ACCOUNT UNLOCK;,用戶創建完成,並授權用戶訪問某表空間。
具體操作如下圖所示:
操作2:
創建表和插入數據,並查詢瀏覽插入的數據。
1,創建表,輸入:
create table 表名(
字段名稱1 字段類型,
字段名稱2 字段類型,
字段名稱3 字段類型
);,回車。
2,插入數據,輸入:insert into 表名(字段1,字段2,字段3) VALUES(值1,值2,值3);,回車。
3,查詢數據,輸入:select * from 表名;,回車。
具體操作如下圖所示: