Posts tagged: BIEE

Oracle BIEE Scheduler Server的配置

Oracle BIEE里的iBot是个不错的东东,可以把关注的报表做成一个iBot,让它定时给你抽取最新的数据,并把报表发给预定的人员,形式可以是报表、电子邮 件,甚至是发送到手机上。在给客户做测试的时候,客户做了一个iBot之后,保存的时候提示找不到服务器的9705端口,报错说“Unable to connect to port 9705 on machine xxxxxx”。开始我还以为是防火墙上没有开通9705端口,当时也没太在意,可等我需要去解决这个问题的时候,才发现里面名堂还挺多的。

先BS一下Oracle的官方文档,里面的东东太少太简单,按照里面的顺序去做,根本行不通。我在OTN上看了很多帖子,再结合文档的帮助,才把问题弄清楚了,记录一下,共享一下吧。

新安装好的BIEE如果没有配置Scheduler Server,该服务是起不来的。Oracle BIEE Scheduler Server的配置分操作系统的不一样,也有点区别,我分别记录一下。

我在虚拟机里安装了一个Windows Server 2003 R2,安装完Oracle数据库和BIEE之后,先把相关的服务都起来。然后在数据库里新建一个数据库,或者不建数据库,就用现成的数据库。我在数据库里 新建了一个用户,然后在该用户下创建一系列的表、触发器等对象,创建这些对象的脚本被保存在%Oracle_BI_Home\server\Schema 下SAJOBS.xxxx.sql这个文件,xxxx是你要保存对象的数据库类型,像我的就是SAJOBS.Oracle.sql。

接下来要做的就是配置Scheduler Server了,Windows操作系统的比较简单,在开始菜单里找到BIEE的Job Manager,打开configuration options。

首先是Database标签页,在连接池里,选择使用的数据库类型,Data Source Name是Oracle数据库的话,就填实例名;用户名就是刚才我建的用户;下面的数据库表看到了吧,默认的表名就是刚才建的表,具体每个表格是干嘛的,去看文档吧。

接下来是General标签页,检查一下Scheduler的脚本是不是在那个地址,一般情况下,如果是用默认安装BIEE的话,就不用改这个地方的地址了。

然后是Mail标签页,可以在相应的地方填入邮件地址,当然这个地方也可以不用去管它。

如果用的Linux操作系统,就没有以上的UI界面进行配置了,只能在终端里用命令来配置,其实做起来也不难。在终端里定位 到%Oracle_BI_Home/setup文件夹里,先运行./sa-init.sh,这个脚本是用来配置一系列环境变量的,然后是 schconfig命令,会出来一个模拟UI的命令提示符,按提示用命令就可以配置了,和Windows环境也差不到哪去。

最后还有一点配置,打开instanceconfig.xml文件(玩BIEE的都知道这个文件在哪吧),看看没有

<Alerts>
<ScheduleServer>WANGZLC1</ScheduleServer>
</Alerts>

这样的语句,有就不用管了。继续定位到%Oracle_BI_Home/web/bin,在命令提示符或终端里敲进以下命令:

cryptotools credstore -add -infile OracleBIData_HOME/web/config/credentialstore.xml

回车后alias输入Admin,其他的用默认的就可以了。

这样BIEE的Scheduler Server就配置好了,在Windows的服务里就可以启动Schedule服务,或用./run-sch.sh可以启动Linux的服务。

BIEE是个很有特色的产品,和Oracle的ERP系统结合起来,能很方便的出报表,帮助管理者对企业日常的运行进行监控和管理。在最新版本的 BIEE中加入了Apps组件,也就是把大量预定义的数据模型和ETL工具打包到BIEE里,增加了该产品的附加值和竞争力。和Hyperion的财务应 用定位不同,BIEE的适用面更加广泛,这俩产品各有使用领域、各有特色,由此也可以看出Oracle在BI领域的战略发展趋势。

BIEE的部署

CDC的项目终于到尾声了,这几天借助网络和几位同事的帮助,终于把BIEE部署到客户的生产环境了。BIEE从开发到部署,网上现成资料很少,都是我们自己一步步摸索过来,所以有必要把其中关键部分记录下来。

我们的生产环境是这样的:两台Unix的服务器,一台安装BIEE,一台安装Oracle数据库。部署的过程大致分为四步:

1. 配置OCI。首先把本地Oracle数据库配置文件tnsnames.ora里TNS的host改成生产环境下的主机地址。另外我是Windows平台上 做的开发,用的数据连接是ODBC,为了使用OCI的连接方式,需要在Administration Tools的连接池里,把Call interface改成OCI 10g/11g,并且把Data source name改成tnsnames.ora文件里定义好的TNS名称,完了之后可以View data一下,看看连接方式的修改是否生效了没有,最后保存Administration Tools。当然用原来的ODBC的方式也没有问题,但我觉得用OCI效率更高一点。

2.复制RPD文件到远端的服务器上,别忘了要修改NQSConfig.ini文件。这个是完成数据仓库元数据的部署,还包括一些用户权限的设置。

3.复制OracleBIData\web\catalog下项目的web文件到服务器的相同目录下,并记得修改instanceconfig.xml里的CatalogPath。这一步是完成部署Presentation Services中的页面内容。

4.设置BIEE主机的环境变量。这个要求这台主机上要安装有一个Oracle产品,比如Oracle客户端,以提供这个OCI环境,识别这个tnsnames才可以,并且在Tnsnames.ora中配置TNS服务,以指向异地数据库服务器。

做到这一步,BIEE的部署就基本完成了。为了能看到部署后的内容,还需要在服务器上重启BIEE相关的服务。方法是这样的:登陆到服务器并进入 BIEE安装目录中的setup文件夹中,这里面有两个sh文件是BIEE服务的启动关闭文件。一个是run-saw.sh,是负责 Presentation Services和JavaHost的启动和关闭;另一个是run-sa.sh,是负责BI Server的启动和关闭。我们要做的就是先关闭run-saw.sh和run-sa.sh,然后启动run-sa.sh和run-saw.sh,注意这 两个文件运行的前后顺序。运行这两个文件的命令也很简单,Oracle的文档里就有,分别是./run-*.sh stop和./run-*.sh start。

Tags:

categories Computer