openEuler Linux 部署 FineBi

openEuler Linux 部署 FineBi

部署环境

环境版本
openEuler Linux22.03
MySQL8.0.35
JDK1.8
FineBi6.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-9.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=3306/tcp #添加端口,格式为:端口/通讯协议

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

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

防火墙重载

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

创建finebi外接数据库finedb

字符集应当为 utf8 ,排序规则为 utf8_bin。

create database finebi character set utf8 collate utf8_bin;

安装jdk和tomcat

下载jdk

jdk 官网下载页面:https://www.oracle.com/java/technologies/downloads/

jdk1.8下载

下载jdk

tomcat 官网下载页面:https://tomcat.apache.org/download-90.cgi

tomcat9 下载

解压jdk和tomcat并修改目录名称

tar -zxvf jdk-8u391-linux-x64.tar.gz -C /usr/local/
tar -zxvf apache-tomcat-9.0.83.tar.gz -C /usr/local/
mv /usr/local/jdk1.8.0_391/ /usr/local/jdk-8
mv /usr/local/apache-tomcat-9.0.83 /usr/local/tomcat-9

设置tomcat.pid文件生成

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

vim /usr/local/tomcat-9/bin/catalina.sh

定位文件第152行找到 PRGDIR=dirname "$PRG" 并在该行下追加以下内容

CATALINA_PID="/usr/local/tomcat-9/bin/tomcat.pid"

Linux Tomcat 开机自启动

配置环境变量

vim /etc/profile.d/my_env.sh
export JAVA_HOME=/usr/local/jdk-8export CATALINA_BASE=/usr/local/tomcat-9
export CATALINA_HOME=/usr/local/tomcat-9export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_BASE/bin:$CATALINA_HOME/bin
source /etc/profile.d/my_env.sh
编写开机启动服务
cd /usr/lib/systemd/system
vim tomcat-9.service
[Unit]
Description=finereport-server
After=network.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/jdk-8"
PIDFile=/usr/local/tomcat-9/bin/tomcat.pid
ExecStart=/usr/local/tomcat-9/bin/startup.sh
ExecReload=/usr/local/tomcat-9/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start tomcat-9.service 
systemctl enable tomcat-9.service 
设置防火墙端口放行
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload 
重启系统
reboot
浏览器访问测试

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

tomcat

安装finebi

官网下载

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

finebi下载页面

上传安装包

tomcat-linux-x64.tar.gz

解压安装包到指定目录

/usr/local

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

解压后的目录名为 tomcat-linux-64

删除 MySQL5 数据库驱动

### 上传 MySQL 数据库驱动```bash
cd /usr/local/tomcat-linux-x64/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 /usr/local/tomcat-9/webapps/finebi

复制 finebi web 工程到 tomcat 服务器发布

cp -r /usr/local/finebi/webapps/webroot /usr/local/tomcat-9/webapps/finebi

创建 finebi 外接数据库

本案例使用 MySQL8 作为 finebi 外接数据库

  1. 关闭 BI 工程
  2. 删除工程webapps\webroot\WEB-INF\lib目录下的 mysql-connector-java-5.1.49-bin.jar
  3. 下载对应版本的 MySQL8 驱动,并上传至工程webapps\webroot\WEB-INF\lib目录下。
  • 上传mysql8驱动 mysql-connector-j-8.0.33.jar
  • 上传mysql8驱动依赖 protobuf-java-3.5.1.jar
  1. 重启 BI 工程。

字符集:

  1. 平台外接 MySQL 数据库时,需要设置字符集排序规则(大小写敏感)。
  2. 推荐使用 utf8 – UTF-8 Unicode 编码。
  3. 不支持 utf8mb4 编码

排序规则:
MySQL 中存在多种格式的 utf8 编码的排序规则,其中最常见的两种如下表所示:

  1. utf8_bin(推荐)
    定义:将字符串中的每一个字符用二进制数据存储,区分大小写
    示例:Alex 和 alex 被认为是两个不同的值
  2. utf8_general_ci
    定义:ci 为 case insensitive 的缩写,即大小写不敏感,为 utf8 默认编码
    示例:Alex 和 alex 被认为是相同的值

登录 mysql 创建 finebi 数据库

create database finebi character set utf8 collate utf8_bin;

重启 tomcat

systemctl restart tomcat-9

浏览器访问测试

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

设置finebi管理员账户

设置账号密码

设置finebi管理员账户

账号密码设置成功

设置finebi管理员账户

根据使用场景选择数据库

本案例使用外接数据库

finebi配置外接选择数据库

外接数据库配置

finebi外接数据库配置

修改外接数据库参数

  1. 数据库类型 mysql
  2. 驱动
  • MySQL5 com.mysql.jdbc.Driver
  • MySQL8 com.mysql.cj.jdbc.Driver
  1. 主机 MySQL服务器IP地址
  2. 端口号 3306
  3. 数据库名称 finebi
  4. 用户名 root
  5. 密码 ·MySQL数据库密码·

finebi外接数据库配置

修改外接数据库参数后点击启用新数据库

finebi启用外接数据库

登录 finebi

finebi

finebi

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/219042.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DeepWalk代码实战-维基百科词条图嵌入可视化

准备工作: 从爬虫网站中爬取维基百科See also关联词条:https://densitydesign.github.io/strumentalia-seealsology/ 维基百科网站:https://www.wikipedia.org/ 爬取过程: 下载 tsv 文件: import networkx as nx # 图…

用友NC word.docx接口存在任意文件读取漏洞 附POC

@[toc] 用友NC word.docx接口存在任意文件读取漏洞 附POC 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使…

【anaconda】numpy.dot 向量点乘小技巧

假设向量A[1,1], 向量B[2,3]。如果想知道他们的内积就可以输入如下代码: 当然,如果是两个列向量相乘,肯定是不对的 但是如果没有维度也一样可以求得内积,而且结果不会套在列表里

二年级 最少需要几个刻度?

娃二年级题目:请你设计一把尺子,用这把尺子一次能画出 1~8厘米八条不同长度的线段。最少需要几个刻度? 答:最少需要 5 个刻度; 方案有: 0, 1, 2, 5, 8 0, 1, 3, 7, 8 0, 1, 4, 6, 8 0, 1, 5, 6, 8 0, 1, 5…

Java中的异常语法知识居然这么好玩!后悔没有早点学习

学习异常后,发现异常的知识是多么的吸引人!不仅可以用来标记错误,还可以自己定义一个异常,用来实现自己想完成的业务逻辑,接下来一起去学习吧 目录 一、异常的概念及体系结构 1.异常的概念 2.异常的体系结构 3.异常…

【计算机视觉 | 目标检测】Grounding DINO 深度学习环境的配置(含案例)

“Grounding DINO:Marrying DINO with Grounded Pre-Training for Open-Set Object Detection”的官方 PyTorch 实现:SoTA 开放集对象检测器。 文章目录 一、Helpful Tutorial二、相关的论文工作2.1 相关的论文整理2.2 论文的亮点2.3 论文介绍2.4 Marryi…

js无法请求后端接口,别的都可以?

在每个接口的控制器中加入以下代码即可: header(Access-Control-Allow-Methods:*); header("Access-Control-Allow-Origin:*"); 如果嫌麻烦可以添加在api初始函数里面

从0开始学习JavaScript--JavaScript事件:响应与交互

JavaScript的事件处理是Web开发中至关重要的一部分,通过事件,能够实现用户与页面的互动,使得网页更加生动和交互性。本文将深入探讨JavaScript事件的各个方面,包括事件的基本概念、事件类型、事件对象、事件冒泡与捕获、事件委托、…

记录华为云服务器(Linux 可视化 宝塔面板)-- Nginx篇

文章目录 配置Nginx服务器1、添加CentOS 7系统的Nginx yum资源库2、安装Nignx服务 设置Nginx安全级别(感觉可以先不设置)步骤一步骤二如有启发,可点赞收藏哟~ 配置Nginx服务器 1、添加CentOS 7系统的Nginx yum资源库 先安装rpm apt instal…

C++双指针算法:统计点对的数目

本周推荐阅读 C二分算法:得到子序列的最少操作次数 本题其它解法 C二分查找:统计点对的数目 题目 给你一个无向图,无向图由整数 n ,表示图中节点的数目,和 edges 组成,其中 edges[i] [ui, vi] 表示 u…

【人工智能】Chatgpt的训练原理

前言 前不久,在学习C语言的我写了一段三子棋的代码,但是与我对抗的电脑是没有任何思考的,你看了这段代码就理解为什么了: void computerMove(char Board[ROW][COL], int row, int col) {while (1){unsigned int i rand() % ROW, …

【全栈开发】Blitz.js与RedwoodJS

技术的不断发展是必然的。如果你仔细观察这片土地,你会注意到随着技术的成熟而出现的某些模式。特别是,开发人员一直在努力提高性能,简化开发过程,增强开发人员体验。 在本指南中,我们将分析两个帮助全栈应用程序世界…