1. 程式人生 > >Oracle資料庫如何授權收費(Database Licensing)

Oracle資料庫如何授權收費(Database Licensing)

說白了,Oracle License就是一張紙,一張許可證。這跟許多軟體產品是一樣的,有沒有許可證的產品在功能上是沒有區別的,僅僅是一個法律問題。也就是說,隨便到網上下的Oracle都可以免費正常使用,只不過這個使用是有區別的,如果是測試或研發,那沒關係,隨便用;如果是用於商業用途,那就是違法的了,Oracle公司有權起訴!

與免費的下載版本不同,正式版的Oracle在購買後,使用者會得到一個產品服務碼,憑此Oracle服務碼,可以得到Oracle的線上升級等服務,Oracle的服務分為好多級,不同級別提供相對應的線上或是現場服務。

現在Oracle有兩種授權方式,按CPU(Process)數和按使用者數(NamedUser Plus)。

前一種方式一般用於使用者數不確定或者使用者數量很大的情況,典型的如網際網路環境,而後一種則通常被用於使用者數確定或者較少的情況。

按CPU:License數=CPU數*係數。係數來自Oracle的一個引數表,如IBM Power6的處理器為1,AMD和Intel的處理器為0.5,詳細情況見下:

引數

處理器型號

0.25

Sun UltraSPARC T1 處理器

0.50

Sun UltraSPARC T1處理器

0.50

Intel、AMD處理器

0.50

Sun UltraSPARC T2+ 處理器

1.00

IBM POWER6、POWER7 處理器

0.75

其他多核處理器

1.00

單核處理器

則根據公式可以算出,一個SUN UltraSparc T1的4*8核處理器需要4*8*0.25=8個CPU licenses

按使用者數:Oracle資料庫按照使用者數授權,是指最終端的連線到Oracle資料庫的使用者數。按照使用者數來買的時候只能用於一個系統,不允許在多臺機器上安裝。每一個訪問Oracle資料庫的使用者,無論是自然人還是裝置,都算作一個使用者 (Named User)。如果是B/S架構,那麼是指連線到中介軟體上的使用者數。

Named User Plus: is defined as anindividual authorized by you to use the programs which are installed on a singleserver or multiple servers, regardless of whether the individual is activelyusing the programs at any given time. A non human operated device will becounted.

按使用者數購買則對應相應的產品有對應的License的最低購買量限制,如下:

產品

最低License數

Oracle Database Standard Edition ONE

5 Named User Plus licenses

Oracle Database Standard Edition

5 Named User Plus licenses

Oracle Database Enterprise Edition

25 Named User Plus licenses per CPU

Oracle Application Server Standard Edition ONE

5 Named User Plus licenses

All other Oracle Application Server products

10 Named User Plus licenses per CPU

當然使用者應該根據自己的實際使用者數訂購,且不少於相應版本所要求的最低使用者數。

一般情況下,1CPU的費用約等於50user的費用,所以如果使用者數>CPU數*係數*50,則按CPU訂購反而更為經濟。

更換伺服器,OracleLicense要重新購買嗎?

如果使用者是按照使用者數購買的Oracle,更改硬體不需要重新購買License;

如果是按照CPU個數買,有相應的換算方法,具體請諮詢Oracle公司。

這裡是Oracle 11g企業版的銷售價格:

每個License還有有效期的分類(不論是User License還是CPU License),分別為:1年、2年、3年、4年、5年、永久。當然價格也是依次增加。

當前Oracle 11G的User License無限使用期的價格為人民幣3千5左右,按50個User License無限使用期的購買量則價格為17.5萬;每個CPU License無限使用期的價格為17萬9千,按IBM小機的係數計算,則購買價格為17萬9千,和50個User License的價格相近。

關於服務價格:一般地,購買Oracle的License都包含首年的服務費,以後的費用按每年原價的22%計算。

更多的產品價格可以訪問http://shop.oracle.com檢視。

這裡我們再介紹一下如何檢視伺服器上物理CPU總數以及核數:

a.如果已安裝了資料庫例項,那麼直接檢視V$license檢視即可:

SQL> select cpu_count_current,CPU_CORE_COUNT_CURRENT,CPU_SOCKET_COUNT_CURRENT from v$license;

CPU_COUNT_CURRENT CPU_CORE_COUNT_CURRENT CPU_SOCKET_COUNT_CURRENT
----------------- ---------------------- ------------------------
                2                      2                        1
以上通過v$license 檢視反應了資料庫伺服器當前的邏輯CPU總數為2,而總的核數也是2,實際的物理CPU Socket是1,那麼說明是1個雙核的物理CPU。

b. 如果伺服器上尚沒有部署例項則不能使用v$license檢視,那麼可以通過OS 命令來獲取必要的資訊。

在x86 Linux伺服器上:

列出當前使用的物理CPU的個數:

grep core\ id /proc/cpuinfo | grep -c \ 0$ | grep ^0$ >> /dev/null && grep -c processor /proc/cpuinfo || \
grep core\ id /proc/cpuinfo | grep -c \ 0$

列出單個物理CPU的核數

grep "cpu cores" /proc/cpuinfo |uniq

在Power系列的IBM小機上按照cpu模組方式來購買,在IBM Dual-Core Module(雙核模組)的power晶片上,一個雙核模組(內含2顆物理cpu)只需要購買1.5個license , 具體的模組型別可以諮詢IBM廠家或者整合商。