name : 给你的数据源命名。
driver: 指定 Mondrian driver(将二维关系表转化为多维度表的驱动).没有见过其他的属性值。
location :这个属性有几个部分组成,使用分号分隔。
jdbc:mondrian:Jdbc=jdbc:mysql://localhost/1_tutorialSaiku :
指定数据库对应jdbc url,前面部分不需要改动,仅仅需要修改主机和对应的数据库名称。这里的主机是localhost,对应数据库是1_tutorialSaiku
Catalog=res:saiku-datasources/sales_mondrian_schema.xml
指定mondrian schema文件。res表明是文件的路径,这里是从saiku webapp目录开始;
JdbcDrivers=com.mysql.jdbc.Driver
指明java 类文件作为数据库连接驱动。
4.重启tomcat后报错java.io.NotSerializableException解决方法:
原因是:tomcat停止时,保存session资源,然后在重启服务后,会尝试恢复session。
打开tomcat下/conf/context.xml文件,添加如下内容:
<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false">
<Store className="org.apache.catalina.session.FileStore"/>
</Manager>
导入mondrian源码步骤如下:1 ) 下载mondrian-3.0.0.10550 和 jpivot 1.8.0 , mondrian-3.0.0以后的版本 和 jpivot的源码整合不到一起. jpivot好久没更新了!!!! 下载地址:http://mondrian.pentaho.com/
2 ) 在eclipse里新建个web工程, 命名mondrian.
3 ) 解压mondrian-3.0.0.10550/mondrian-3.0.0.10550-src.zip , 将解压的内容覆盖你的工程
4 ) 在ant视图下运行build.xml文件的prepare,parser,generate.resources,def四个目标过程(MondrianGuiDef类是通过builder生成的!! 如果builder过程中出现*********找不到subfloor.xml****的错误的话 你需要http://code.google.com/p/subfloor/wiki/SubflloorHowTo下载一个subfloor.xml文件放到bulid.xml同级目录下)
5 ) 将mondrian-3.0.0.10550/lib/mondrian.war发布包中的WEB-INF/lib中的jar包全部拷贝到Mondrian工程的lib目录中;
6) 根据编译的错误导入必要的jar包.
注意:1、最后执行ant完成对工程进行清理处理;
2、如果一切正常,之后则不需要用mondrian.jar文件,可以依此为标准检测是否构建成功。
导入jpivot源码步骤如下:
直接在你的mondrian工程下新建src/jpivot, 然后将jpivot-1.8.0/src/java的东东考进去就行了, 这个就不细说了
导入成功后就可以把jpivot.jar删掉了
配置数据源:
一. 使用odbj的方式:
控制面板 ->管理工具 ->数据源 (ODBC) ->点击添加 ->选择driver do microsoft access(*.mdb) ->下一步 设置数据源名MondrianFoodMart ->数据库选择(mondrian-3.0.0.10550/demo/access/MondrianFoodMart.mdb)
二. 其它数据库:
在你的mondrian/web-inf目录下执行以下命令(斜体字部分需要自己调整下)
java -cp "lib/mondrian.jarlib/log4j-1.2.8.jarlib/eigenbase-resgen.jarlib/commons-logging-1.0.4.jarlib/eigenbase-xom.jarlib/eigenbase-properties.jarlib/mysql.jar" mondrian.test.loader.MondrianFoodMartLoader -verbose -tables -data -indexes -jdbcDrivers=com.mysql.jdbc.Driver -inputFile=lib/FoodMartCreateData.sql -outputJdbcURL="jdbc:mysql://localhost:3306/foodmart?user=root&password=admin"
配置Schema Workbench1.准备
Windows XP
jdk-1_5_0_14
workbench-2.3.2.9247
SQLServer2000+SP4
mysql-6.0.0
Oracle10.2.0.1.0
SQLServer2000 Driver for JDBC Service Pack 4--->msbase.jarmssqlserver.jarmsutil.jar
MySQL Driver for JDBC--->mysql-connector-java-5.1.2-beta-bin.jar
Oracle Driver for JDBC--->ojdbc14.jar
2.解压缩workbench-2.3.2.9247.zip
3.将数据库Driver for JDBC(jar包)拷贝进\lib
4.编辑workbench.bat
找到25行--->rem put mondrian.properties on the classpath for it to be picked up
添加如下内容
set CP=%CP%./mondrian.properties
找到34行--->rem add all needed JDBC drivers to the classpath
添加如下内容,目的是让程序能够找到数据库驱动.
set CP=%CP%lib/mysql-connector-java-5.1.2-beta-bin.jar
set CP=%CP%lib/msutil.jar
set CP=%CP%lib/mssqlserver.jar
set CP=%CP%lib/msbase.jar
set CP=%CP%lib/ojdbc14.jar
5.运行workbench.bat
Tools--->Prefereces或者直接点击Prefereces按钮,在d出的对话框处填写JDBC连接信息.
以下为配置示例
[MySQL6]
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/foodmart?user=root&password=root
不填
不填
[MySQL6]
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/foodmart
root
root
[SQLServer2000]
com.microsoft.jdbc.sqlserver.SQLServerDriver
jdbc:microsoft:sqlserver://localhost:1433databasename=Northwind
sa
12345678
[Oracle10g]
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:@localhost:1521:ora10g
sys as sysdba
ora456
[Oracle10g]
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:sys as sysdba/ora456@localhost:1521:ora10g
不填
不填
6.测试数据库连接
File--->New--->Schema或直接点击New按钮--->Schema
注意界面左下角的提示信息
MySQL6,SQLServer2000成功
Oracle10g 报错--->ORA-01424: 转义符之后字符缺失或非法
7.总结
SQLServer2000如果没有打补丁会报错--->[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
打开SQL查询分析器--->帮助--->关于
查看sql server的详细版本号
如果是 8.00.194 就是还没打补丁
8.00.760 就是SP3
8.00.2039 就是SP4
--->没打补丁
--->sp4
打完补丁后使用最新的SQLServer2000 Driver for JDBC Service Pack 4
Oracle10g的报错,试着用了'删除oracle10g垃圾表'的方法仍旧没有解决.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)