Oracle数据库的两种授权收费方式介绍!

首发微信公众号:SQL数据库运维
原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1&sn=450e9e94fa709b5eeff0de371c62072b&chksm=ea37536cdd40da7a94e165ce4b4c6e70fb1360d51bed4b3566eee438b587fa231315d0a5a5b3&token=1491694448&lang=zh_CN#rd
Oracle数据库是收费的吗? 答案是模棱两可的,根据不同的使用环境或用途,可以分为收费和不收费两种 。其实Oracle数据库软件本身是不收费的;任何人在已连接互联网的电脑上都可以从Oracle官方网站免费下载并安装Oracle的数据库软件(服务端和客户端) , 但是如果数据库用于商业用途就需要购买相应Oracle产品的License,也即软件授权,软件授权是收费的 。所以如果只是自己下载学习及研究使用是免费的,仅限于个人学习的非盈利性使用 。

Oracle数据库的两种授权收费方式介绍!

文章插图

Oracle数据库的两种授权收费方式介绍!

文章插图
现在Oracle有两种授权收费方式 , 按CPU(Process)数和按用户数(Named User Plus) 。前一种方式一般用于用户数不确定或者用户数量很大的情况,典型的如互联网环境,而后一种则通常被用于用户数确定或者用户数较少的情况 。
按CPU:License数=CPU 数*系数 。系数来自Oracle的一个参数表,如IBM的POWER6、POWER7和POWER8处理器为1,AMD和Intel的处理器为0.5,最新详细详细参数表如下:
Oracle数据库的两种授权收费方式介绍!

文章插图

Oracle数据库的两种授权收费方式介绍!

文章插图
例如,带有4个八核处理器的SUN UltraSparc T1系统将需要4*8*0.25 = 8个许可证 。这只是一个例子 。Sun UltraSparc T1和T2不支持SMP,只有Sun UltraSparc T2+支持SMP 。类似地 , 一个带有4个八核处理器的IBM AIX系统将需要4*8*0.5 = 16个许可证 。
按用户数:Oracle用户数的官方定义是每一个访问Oracle数据库的用户,无论是自然人还是设备(如工业环境中的传感器之类),都算作一个用户(Named User) 。
Oracle数据库的两种授权收费方式介绍!

文章插图
注: 一般情况下,1CPU的费用约等于50user的费用,所以如果用户数>CPU数*系数*50,则按CPU订购反而更为经济 。
Oracle数据库的两种授权收费方式介绍!

文章插图
可以执行以下脚本来查看应该获得许可的(一些)组件:
用户和CPU/处理器的数量:
select * from v$license;请注意,此命令提供的信息在多线程、多核或虚拟系统上不可信 。这是数据库已知的可用处理器数量 , 而不是必须获得许可的处理器数量 。
安装的数据库版本:
select banner from v$version where BANNER like '%Edition%';使用的Oracle分区:
select decode(count(*), 0, 'No', 'Yes') Partitioningfrom ( select 1from dba_part_tableswhere owner not in ('SYSMAN', 'SH', 'SYS', 'SYSTEM', 'AUDSYS')and rownum = 1 );请注意——在企业版上 , 几乎总是会安装分区 。它由Oracle数据库本身使用——该命令单独使用时不会提供有关许可要求的信息 。
使用的Oracle Spatial:
select decode(count(*), 0, 'No', 'Yes') Spatialfrom ( select 1from all_sdo_geom_metadatawhere rownum = 1 );使用的Oracle RAC:
select decode(count(*), 0, 'No', 'Yes') RACfrom ( select 1from v$active_instanceswhere rownum = 1 );安装/未安装的选项:(来自9i)
Select parameter name, valuefrom v$optionorder by 2 desc, 1使用/未使用的功能:(来自10)
Select decode(detected_usages,0,2,1) nop,name, version, detected_usages, currently_used,to_char(first_usage_date,'DD/MM/YYYY') first_usage_date,to_char(last_usage_date,'DD/MM/YYYY') last_usage_datefrom dba_feature_usage_statisticsorder by nop, 1, 2参考资料:
http://www.orafaq.com/wiki/Oracle_licensing#Unlimited_License_Agreements
http://www.oracle.com/us/corporate/pricing/technology-price-list-070617.pdf
http://www.oracle.com/us/corporate/pricing/price-lists/index.html
http://www.orafaq.com/wiki/Oracle_Support
https://www.oracle.com/assets/processor-core-factor-table-070634.pdf
【Oracle数据库的两种授权收费方式介绍!】

    推荐阅读