对于连接MySQL数据源,BIEE提供两种不同的方式,一是使用自带的Datadirect ODBC驱动,二是使用MySQL原生的ODBC驱动(Connector/ODBC)。
不过遗憾的是本人未能将使用Datadirect驱动的方式配通,所以本文以MySQL原生的Connector/ODBC驱动为例,讲解BIEE在linux下配置ODBC数据源的过程。
注:
本文主要参考Oracle BI Administration Tool Help的Setting Up Data Sources on Linux and UNIX章
以及MySQL参考手册中的Connector/ODBC Configuration章节
http://dev.mysql.com/doc/refman/5.1/en/connector-odbc-configuration.html
下面介绍一下实验环境
MySQL Server
版本:MySQL Community Server 5.1.63 Windows 64bit
字符集:utf8
BI Server
操作系统:Redhat Enterprise Linux 5.4 x86_64
BIEE版本:11.1.1.5 linux x86 64bit
操作系统字符集:utf8
从官网下载驱动
http://www.mysql.com/downloads/connector/odbc/
比如:mysql-connector-odbc-5.1.11-1.rhel5.x86_64.rpm
另外还需要下载unixODBC
http://www.unixodbc.org/
然后先安装unixODBC在安装mysql驱动,具体安装步骤请自行搜索。
已经验证过的unixODBC版本 unixODBC-2.2.14-15.2.x86_64.rpm
修改ORACLE_INSTANCE/bifoundation/OracleBIApplication/coreapplication/setup/user.sh,在末尾处添加如下内容:
#MySQL 5.1
LD_LIBRARY_PATH=/usr/lib64/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
注意:红色部分为mysql驱动的lib所在目录,请根据自己的实际路径填写。如果不知道可以通过查看/etc/odbcinst.ini来得知,如下所示:
[MySQL ODBC 5.1 Driver]
Driver = /usr/lib64/libmyodbc5.so
UsageCount = 1
另外,请务必装mysql的库路径放在$LD_LIBRARY_PATH之前,如果放在之后最终在Answer查询数据的时候会报错。具体原因不清楚,估计是由于加载顺序的不同导致使用了错误的库文件。
接下来修改ORACLE_INSTANCE/bifoundation/OracleBIApplication/coreapplication/setup/odbc.ini,添加如下内容:
[myodbc]
Driver = /usr/lib64/libmyodbc5.so
Description = DEV Datamart 01 DSN
SERVER = 192.168.56.1
PORT = 3306
Database = test
OPTION =
SOCKET =
保存并关闭,将RPD中连接池的数据源名字改为myodbc即可!
注意:当BI Server在linux上的时候,是不能联机导入ODBC元数据据的,你必须先在windows下离线使用odbc导入之后在部署到linux上去。
至此,配置完毕!中英文均正常显示。
以上就是biee在linux下配置odbc数据源的过程,其它的数据库例如sql server均类似(sql server可以直接使用datadirect驱动进行配置),详情请参阅
Oracle BI Administration Tool Help的Setting Up Data Sources on Linux and UNIX章