说白了,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厂家或者集成商。
转自:
当然随着cpu计算能力的提高,cpu个数有可能并不需要太多。oracle的收费模式肯定会变化。