1、环境准备
①在apache官网下载apache-tomcat-8.5.51.tar.gz安装包
http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz
②在oracle官网下载64位的jdk安装包
③创建smartbi知识库,知识库字符集请使用GBK。
在数据库服务器上创建一个空库,作为Smartbi的知识库
1.1防火墙配置
为了便于安装,建议在安装前关闭防火墙。使用过程中,为了系统安全可以选择启用防火墙,但必须启用Smartbi使用到的相关端口。
1.关闭防火墙
临时关闭防火墙
永久关闭防火墙
systemctl disable firewalld
查看防火墙状态
systemctl status firewalld
2.开启防火墙
相关服务及端口对照表
如果确实需要打开防火墙安装,需要给防火墙放开以下需要使用到的端口
开启端口:8080
firewall-cmd --permanent --add-port=8080/tcp
配置完以后重新加载firewalld,使配置生效
查看防火墙的配置信息
3.关闭selinux
临时关闭selinux,立即生效,不需要重启服务器。
永久关闭selinux,修改完配置后需要重启服务器才能生效
sed -i 's/=enforcing/=disabled/g' /etc/selinux/config
1.2 安装Java环境
安装包解压到/opt目录
tar -zxvf jdk8.0.202-linux_x64.tar.gz -C /opt
配置java环境变量
①在/etc/profile 文件末尾添加,并保存
export JAVA_HOME=/opt/jdk8.0.202-linux_x64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
②使配置生效
③查看java版本信息
2、 部署Smartbi
2.1 安装Tocmat
①Tomcat安装包解压到/data目录
tar -zxvf apache-tomcat-8.5.51.tar.gz -C /opt
②修改Tomcat启动参数
进入Tomcat下的bin目录
cd /data/apache-tomcat-8.5.51/bin/
创建Tomcat启动参数文件:setenv.sh
具体参数如下(根据实际部署替换配置中的路径):
export JAVA_HOME="/opt/jdk8.0.202-linux_x64"
export JRE_HOME="/opt/jdk8.0.202-linux_x64/jre"
export CATALINA_HOME="/data/apache-tomcat-8.5.51"
export JAVA_OPTS="-Dfile.encoding=GBK -Duser.region=CN -Duser.language=zh -Djava.awt.headless=true -Xms8192m -Xmx8192m -XX:MaxPermSize=512m -Dmail.mime.splitlongparameters=false -XX:+HeapDumpOnOutOfMemoryError"
赋予setenv.sh相关权限
2.2 部署Smartbi
1.上传war包
将smartbi.war上传到/data/apache-tomcat-8.5.51/webapps目录下

2.启动Tocmat 服务器
进入/data/apache-tomcat-8.5.51/bin目录下,执行startup.sh脚本启动tomcat程序
cd /data/apache-tomcat-8.5.51/bin
./startup.sh

3.配置Smartbi
Tocmat服务启动完成后,访问 http://IP:PORT/smartbi/vision/config 进入Smartbi系统配置页面。
完成知识库连接配置、上传License文件、以及其他设置项,然后保存配置,配置详情参考Smartbi Config页面介绍
4.重启Tocmat服务
Smartbi config页面配置保存完成后需要重启Tomcat服务,完成知识库表的自动创建工作。
①进入/data/apache-tomcat-8.5.51/bin目录下,执行shutdown.sh脚本停止tomcat程序
cd /data/apache-tomcat-8.5.51/bin
./shutdown.sh

②重新启动Tomcat服务
cd /data/apache-tomcat-8.5.51/bin
./startup.sh
等待Tomcat服务启动和Smartbi完成初始化即可。
常见问题
1.数据库用户没有创建表权限
问题:如果启动服务器后报这样的错:Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: CREATE command denied to user 'admin'@'localhost' for table 't_upgradelock'。

问题原因:是因为当前数据库用户 admin 没有权限创建表。
解决方案:给这个用户授予相关操作权限。
2.服务器端口被占用
问题:启动服务器不成功,查看smartbi.log日志文件,出现下面信息:

问题原因:端口号被占用。
解决方案:
方法一,停止占用端口的应用。
方法二,更改Smartbi应用服务器的默认端口,具体操作可参考 如何更改应用服务器默认端口。
3.知识库字符集不正确
问题:启动服务器不成功,查看smartbi.log日志文件,出现下面信息:

问题原因:知识库字符集不对导致。
解决方案:字符集不对,最简单的处理方式就是使用可以指定数据库数据集的工具新建一个是GBK字符集的知识库。
或是通过sql指定,如mysql数据库指定GBK字符集:create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;