適合初學者理解的Oracle的體系結構

2021-07-10 06:16:40 字數 1006 閱讀 7629

作為乙個oracle的初學者,之前一直用的是sqlserver2008,對oracle這幾個概念比較模糊,搞不清楚概念。

經過多番查閱前輩資料,自己總結了一下感覺應該是這樣,寫下來以供參考,不準確之處還請批評指正了。

oracle的體系結構中有這麼幾個概念:例項、表空間、資料檔案、使用者、表。

oracle資料庫不同其他資料庫,oracle可以理解為乙個大的資料庫,就只有這乙個。你所操作的「多個資料庫」都是oracle資料庫下的不同的例項。安裝oracle的時候會預設給你建立乙個例項orcl。

表空間是乙個邏輯概念,乙個資料庫例項可以有多個表空間。可以說表空間是對這個資料庫例項物理磁碟記憶體上的劃分,也許你平時使用的時候並沒有建立表空間,因為這個時候使用的是系統預設的表空間,後面詳說。乙個表空間會建立多個資料檔案,這是個一對多的關係。

資料檔案是用來儲存資料的,這個顧名思義。是什麼資料?平時接觸最多的是我們平時建立的表,create table...但是表的概念還不能從這裡引出。先說使用者。

我看有的理解是乙個表空間下有很多個使用者,這個理解可以說是勉強正確。因為我覺得使用者和表空間並不是上司與下屬的關係,算是同級吧,都是隸屬於資料庫例項的。只不過在建立使用者的時候都要給使用者指定乙個表空間,授權該使用者可以訪問的表空間,他們的關係是多對一,多個使用者可以訪問乙個表空間,但乙個使用者只能訪問乙個表空間。(總感覺這句話邏輯不順)如果沒有指明表空間,則是預設表空間users表空間。而表只能由使用者來建立,使用者將這個表放入與使用者繫結的表空間,但最後管理表的存放的確是這個表空間,表空間隨機的將表存放到它所在的乙個或多個資料檔案中。

需要特別指出的是:

在建立使用者時是只能指明乙個預設表空間和乙個預設臨時表空間,你後續create table都是在這個預設表空間中,但是可以更改。

alter user xx default tablespace ***x

說到這差不多結構已經出來了,不知道你有沒有暈,畫個圖梳理一下吧。

Vue slot scope的理解(適合初學者)

先拋例程 少壯不努力,老大徒傷悲 光陰似箭,日月如梭 你好啊結尾 例程中也寫了普通插槽和具名插槽,這個我就不說,我就說一下作用域插槽。首先從 作用域插槽 這個名字說起,本來你父元件的模板是無法使用到子元件模板中的資料,官網中有一句特別強調的話 父元件模板的所有東西都會在父級作用域內編譯 子元件模板的...

適合初學者的TCP講解

介紹tcp之前,應該先要讓大家了解一下tcp存在 並且有什麼作用。用一張圖來表述可能更加實在 首先,可以看到,tcp是乙太網協議和ip協議的上層協議,也是應用層的下層協議。簡單介紹一下乙太網協議和ip協議 乙太網協議 最底層的乙太網協議 ethernet 規定了電子訊號如何組成資料報 packet ...

Linux入門 適合初學者

學習linux也有一陣子了,這過程中磕磕撞撞的,遇到了問題,也解決了一些問題,學習的路子是曲折的,想總結點啥的,讓剛剛學習linux的不會望而生畏。技術的價值不在於這個技術有多麼高超,而在於技術本身給我們帶來什麼價值,所以很多時候我們學習乙個技術,不能盲目學,是為了使用這個技術,知道這個技術的使用場...