您现在的位置是:首页 >技术杂谈 >openEuler Linux 部署 FineReport网站首页技术杂谈

openEuler Linux 部署 FineReport

李昊哲小课 2024-08-13 12:01:03
简介openEuler Linux 部署 FineReport

openEuler Linux 部署 FineReport

部署环境

环境版本
openEuler Linux22.03
MySQL8.0.33
FineReport11.0

环境准备

升级系统内核和软件

yum -y update
reboot

安装常用工具软件

yum -y install vim tar net-tools 

安装MySQL8

将 MySQL Yum 存储库添加到系统的存储库列表中

sudo yum -y install https://repo.mysql.com//mysql80-community-release-el8-5.noarch.rpm

通过运行以下命令并检查其输出来验证是否已启用和禁用正确的子存储库

sudo yum repolist enabled | grep mysql

通过以下命令安装 MySQL

sudo yum -y install mysql-community-server

启动 MySQL 服务器

使用以下命令启动 MySQL 服务器:

sudo systemctl start mysqld

您可以使用以下命令检查 MySQL 服务器的状态:

sudo systemctl status mysqld

使用以下命令开启自启动 MySQL 服务器:

sudo systemctl enable mysqld

在服务器初始启动时,假设服务器的数据目录为空,会发生以下情况:

  • 服务器已初始化。

  • SSL 证书和密钥文件在数据目录中生成。

  • validate_password 已安装并启用。

  • 创建了一个超级用户帐户'root'@'localhost。超级用户的密码已设置并存储在错误日志文件中。要显示它,请使用以下命令:

    sudo grep 'temporary password' /var/log/mysqld.log
    

mysql8初始密码

通过使用生成的临时密码登录并为超级用户帐户设置自定义密码,尽快更改 root 密码:

mysql -uroot -p

修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Lihaozhe!!@@1122';
FLUSH PRIVILEGES;

不检查指定为散列值的密码,因为原始密码值不可用于检查:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Lihaozhe!!@@1122';
FLUSH PRIVILEGES;
update mysql.user set host = '%',plugin='mysql_native_password' where user='root';
FLUSH PRIVILEGES;
exit;
sudo systemctl restart mysqld

防火墙开放端口

–zone #作用域

–add-port=1935/tcp #添加端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重启防火墙

firewall-cmd --reload 
# 使用新密码连接
mysql -h 你自己的IP地址 -uroot -p

创建finereport外接数据库finedb

create database finedb default character set utf8;

安装finereport

官网下载

https://www.finereport.com/product/download

下载finereport服务器版

上传安装包

tomcat-linux.tar.gz

上传finereport服务器版安装包到服务器

解压安装包到指定目录

/usr/local

tar -zxvf tomcat-linux.tar.gz -C /usr/local

解压后的目录名为tomcat-linux

finereport

设置tomcat.pid文件生成

其中tomcat.pid文件本身不存在,设置之后,启动Tomcat会自动生成

vim /usr/local/tomcat-linux/bin/catalina.sh
# 定位文件第152行找到 PRGDIR=`dirname "$PRG"` 并在该行下追加以下内容
CATALINA_PID="/usr/local/tomcat-linux/bin/tomcat.pid"

tomcat.pid

上传数据库驱动

cd /usr/local/tomcat-linux/webapps/webroot/WEB-INF/lib/
ls mysql*

mysql5驱动

删除MySQL5的驱动后上传MySQL8的驱动
mysql-connector-j-8.0.33.jar mysql驱动

protobuf-java-3.5.1.jar mysql驱动依赖

rm -f mysql-connector-java-5.1.49-bin.jar

MySQL8驱动

配置环境变量

vim /etc/profile.d/my_env.sh
export JAVA_HOME=/usr/local/tomcat-linux/jdk

export CATALINA_BASE=/usr/local/tomcat-linux
export CATALINA_HOME=/usr/local/tomcat-linux

export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_BASE/bin:$CATALINA_HOME/bin

source /etc/profile.d/my_env.sh

编写开机启动服务

cd /usr/lib/systemd/system
vim finereport.service
[Unit]
 
Description=finereport-server
 
After=network.target
 
 
 
[Service]
 
Type=forking
 
# 因为服务启动时,是不会读取全局变量的(/etc/profile),因此全局变量中配置的属性是读取不到的需要注意。
 
# 所以需要在这里配置Tomcat 启动需要的JDK,指定JDK路径
 
Environment="JAVA_HOME=/usr/local/tomcat-linux/jdk"
 
 
 
# 此文件是在第一步时配置的,如果type是后台运行,建议将此属性加上,指定pid。
 
PIDFile=/usr/local/tomcat-linux/bin/tomcat.pid
 
 
 
# 需要注意的就是下面这一行,如果路径错了,那就无法自动启动,下面会有图文解释
 
# 整个 ExecStart 脚本,相当于是让系统开机时自动帮你在终端输入等号后面的命令
 
ExecStart=/usr/local/tomcat-linux/bin/startup.sh
 
ExecReload=/usr/local/tomcat-linux/bin/shutdown.sh
 
ExecReload=/bin/kill -s HUP $MAINPID
 
PrivateTmp=true
 
 
 
[Install]
 
WantedBy=multi-user.target

systemctl daemon-reload
systemctl start finereport.service 
systemctl enable finereport.service 

设置防火墙端口放行

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload 

重启系统

reboot

浏览器访问测试

http://服务器IP地址:8080/webroot/decision

http://192.168.126.131:8080/webroot/decision/

设置finereport管理员账户
设置finereport管理员账户
设置finereport管理员账户
finereport根据场景选择数据库

MySQL5驱动类

如MySQL版本为8+ 推荐将驱动修改为:com.mysql.cj.jdbc.Driver

MySQL8驱动类
finereport已启用新数据库
finereport登录
finerepor主界面

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。