1. 程式人生 > >Oracle、MYSQL、db2資料庫之間的不同以及使用

Oracle、MYSQL、db2資料庫之間的不同以及使用

Mysql這種方式很初級最容易被人想到,Database與User分開是跟其他兩個的區別,用授權來關聯使用者和資料庫。

jdbc的連線地址裡面,三者分別指定了Database、User、User(&Schema),Db2如果不單獨建立Schema則形式是跟Oracle一樣的。Db2的User只能是作業系統的使用者,資料庫本身不能建立使用者,這點好像不太好,對於不同的應用系統,Mysql是建立不同的Database,Oracle是建立不同的User,這時Db2有兩種方法,一是建立不同的作業系統使用者,二是在User下建立不同的Schema,然後jdbc連線地址宣告這個Schema。

就應用劃分層面來說,三種資料庫的Database、User、Schema在一個層面。Oracle相比Mysql可以新建多個例項,一個例項等同於Mysql的一個程序,我的理解Oracle的建立例項就是建立database,會新建出一個oracleserver。Db2的Database跟Oracle例項在一個層面,區別是Oracle建立例項比較麻煩,Db2一句話就執行完了。Oracle的兩個例項之間獨立,Db2也是。訪問需要通過特定方式。

統一說來,

1:Oracle的例項與Db2的資料庫是一回事,應該被統一稱作例項比較合適,而Mysql便是單例項模式

2:應用劃分層,三者分別是database、user、schema,統一稱作database比較合適,真正的資料都在這一層。

從這裡理解於是:使用者名稱與密碼的作用只是用來登陸,以及賦予對database的訪問許可權。

mysql中這兩者是無關的。

oracle這裡本沒有database的概念,user就是database,可以理解為建立一個user時同時建立一個同名的database。有幾個user就有幾個database。

db2建立一個user會同時建立一個同名的database作為schema,另外還能再建立其他多個schema。