Finereport部署

1、配置

 1.1、系统配置:最低4C8G,建议8C16G,硬盘100G

 1.2、环境依赖:mysql5.7,JDK1.8

2、部署

2.1、mysql的部署

1. 删除mariadb

$ rpm -qa|grep mariadb

mariadb-libs-5.5.56-2.el7.x86_64

#上一步查出来的文件名,直接复制下来就OK,删除maridab

$ rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 

2. 下载官方的yum仓库文件并安装

#下载rpm包,网址可能会改变,以官网为准
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

#解压
tar -xvf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

#解压后会有很多rpm包,只需要其中四个,依次安装: 
common -> libs -> client -> server

$ rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm

$ rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm

$ rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm

$ rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm

安装的时候可能会报错:安装libaio依赖即可

#安装mysql的依赖,如果可以访问外网,直接yum install libaio -y;不能则需下载如下rpm包并安装

$ rpm -ivh --nodeps perl-5.16.3-297.el7.x86_64.rpm

$ rpm -ivh --nodeps perl-libs-5.16.3-297.el7.x86_64.rpm

$ rpm -ivh --nodeps perl-Getopt-Long-2.40-3.el7.noarch.rpm

$ rpm -ivh --nodeps perl-Carp-Clan-6.04-10.el7.noarch.rpm

$ rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm

$ rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm

3. 修改mysql配置文件

$ vim /etc/my.cnf

# 具体的参数修改就自己根据自己的实际使用情况进行配置。

4. 启动mysql

# 设置自启动并启动服务

$ systemctl enable mysqld & systemctl start mysqld

5. 登陆mysql,并修改root密码,开启远程访问

# 启动后会生成一个默认密码,如果你没修改日志文件目录的话,执行下面语句查出初始密码

$ grep password /var/log/mysqld.log

2018-08-16T03:48:23.698636Z 1 [Note] A temporary password is generated for

root@localhost: _G19lNt6v<x4

# 利用初始密码登陆 
mysqlmysql -u root -p $password

# 修改密码,mysql5.7的默认密码强度很高,需要有大小写,符号数字,长度大于6.

> alter user 'root'@'localhost' identified by '$password';

# 修改成功后,如果你不像要这么复杂的密码,修改密码强度设定为低登即的只判断密码长度。

> set global validate_password_policy=0;

# 重新修改密码

> alter user 'root'@'localhost' identified by '$new_password';

# 开启远程登陆

> grant all privileges on *.* to 'root'@'%' identified by '$new_password';

# 刷新权限设置

> flush privileges;

# 建库

> create database finedb default character set utf8mb4 collate utf8mb4_unicode_ci;

2.2、JDK的部署

#jdk版本的下载地址:https://www.oracle.com/cn/java/technologies/downloads/
#下载java1.8,解压二进制包
$ cd /usr/local;tar -xf java.tar.gz

#添加环境变量,在/etc/profile中添加如下

JAVA_HOME=/usr/local/jdk1.8.0_20

PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

#执行命令使生效

$ source /etc/profile

#执行命令查看java版本

$ java -version

2.3、finereport的部署

#下载地址:https://www.finereport.com/product/download  (服务器部署版)
$ cd /usr/local;tar -xf tomcat-linux.tar.gz
$ mv /usr/local/tomcat-linux/webapps/webroot /usr/local/
$ vim /usr/local/webroot/a.jsp   #新建a.jsp,写入以下信息
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head>
    <title>FineReport报表</title>
    <link rel="stylesheet" type="text/css" href="/decision/file?path=/com/fr/web/core/css/leaflet.css&type=plain&parser=plain"/>
      <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1, maximum-scale=1.0, user-scalable=no">
  </head>
  <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
    <iframe id="reportFrame" src="decision" allowfullscreen="true"
      name="itemslist" frameborder="0" width="100%" height="100%"></iframe>
  </body>
</html>

#修改%tomcat_home%/conf/server.xml文件,在 server.xml 文件中host标签之间添加上代码,如下
$ vim /usr/local/tomcat-linux/webapps/conf.xml
<Context path="" docBase="/usr/local/webroot" debug="0" reloadable="false" />
#在文件末尾</web-app>标签之前,添加一段代码显示自定义欢迎界面a.jsp
$ vim /usr/local/tomcat-linux/webapps/server.xml
<welcome-file>a.jsp</welcome-file>

3.登陆:ip:8080
#配置数据库  https://help.fanruan.com/finereport/doc-view-4165.html?source=4
#clickhouse配置  https://help.fanruan.com/finereport/doc-view-4122.html
#nginx配置
        listen       80 ;
        listen       443 ssl ;
        server_name  bi.bxlsj.com ;
        charset      urf-8;
        ssl_certificate /etc/nginx/ssl/bxlsj.com.pem;
        ssl_certificate_key /etc/nginx/ssl/bxlsj.com.key;
        ssl_session_timeout 10m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        location / {
            #rewrite / http://***.com/webroot/decision;
            proxy_pass http://172.19.57.203:8080;
            proxy_set_header   Host    $host;
            proxy_set_header   X-Real-IP   $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }