我在我的盒子上运行了Pentaho报告设计器的本地实例,并且它配置了一个本地开发数据库作为其数据源。 (2个数据源配置,均指向同一本地数据服务器;源数据库和目标数据库。)
显然,当我将此报告发布到生产BI服务器时,报告会失败,因为我的本地数据源不再可用。
清楚地将报告配置为依赖于生产数据库可以解决任何身份危机(危机?)但我生活在棒中,因此网络速度很慢,我不想影响生产数据库用于开发目的。
在Kettle中,我更新了kettle.properties文件以提供本地化的数据源变量(非常适合单元测试我的转换!)并且想知道是否有类似的方法在PRD中本地化变量?
答案 0 :(得分:3)
在PRD中,您使用JNDI连接具有相同类型的抽象。您可以在$ HOME / .pentaho / simple-jndi中找到JNDI配置。在那里创建一个数据源,并在BI-Server的管理控制台中创建一个具有相同名称的数据源。然后将您的连接定义为" JNDI"连接类型并提及您为数据源提供的名称。
然后,根据您是在本地还是在服务器上运行,引擎将从运行时上下文中查找连接信息。
但是有一个警告:鉴于SQL不是真正的标准,请确保本地和远程环境使用相同的数据库类型。否则,如果您 - 例如 - 在客户端上使用MySQL而在服务器上使用Oracle,那么为Oracle创建的SQL将不会被oracle驱动程序接受,反之亦然。
答案 1 :(得分:0)
在Windows上,您可以在此处找到jndi配置文件:
C:\Users\(username)\.pentaho\simple-jndi