百度下
Oracle数据库软件许可证的2种购买形式, 包括cpu个数和用户数量。 但是关于实际的计算方法则没有介绍,这里推荐一款由Licensecalculator.com制作的license calculator 许可证使用量计算器来帮助我们计算需要购买的License, 该计算器会输出需要购买的最少的cpu或用户license数量。
注意因为Oracle数据库的安装和使用不需要特别去安装license key ,所以我们没有办法通过脚本或者工具来直接计算其当前license的使用量。 需要通过了解主机上的CPU数量以及所使用的Oracle数据库软件的版本来计算。
该计算器可以选择的产品版本和特性,包括了:
Enterprise Edition 企业版
Standard Edition 标准版
Real Application Cluster
Real Application Cluster One node
Active Data Guard ADG
该计算器涵盖的了主流的cpu种类,包括x86、Sparc、Power等。
这里我们再介绍一下如何查看服务器上物理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。
我在<检查Oracle数据库软件是Enterprise Edition或Standard Edition的10种方法>中介绍了检查软件版本的方法,如果你不能确定已经部署的Oracle软件的具体版本,那么可以参考这篇文章。
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厂家或者集成商。