在Linux上手工安装报表服务器

浏览次数:4736 最新更新:老慢 于 2024-02-19

在很多项目中,正式投入使用的时候都会在linux系统进行安装部署,本篇以Linux Tomcat部署Spreadsheet为例给大家介绍如何在Linux环境进行手工部署。安装主要分为四个步骤,具体可见下图。

安装步骤


准备安装介质

准备的安装介质主要有中间件Tomcat、JDK、MySQL、war包,其中Tomcat、JDK、MySQL可点击此处进行一键下载(约830M,不包含war包),war包下载请参考「如何下载 Spreadsheet」章节。

1.服务器推荐配置

服务器 CPU 内存 磁盘
Spreadsheet 8核+ 16G+ 200GB+

本次示例使用的服务器环境是CentOS,具体版本信息如下图所示:

2.中间件

在Apache官网下载Tomcat安装包(下载zip包或者tar.gz包即可)

Tomcat8 官方下载地址:https://tomcat.apache.org/download-80.cgi

3. JDK安装包

要求Oracle JDK或OpenJDK 8以上的版本

在Oracle官网下载64位的jdk安装包:https://www.oracle.com/java/technologies/downloads/

4.数据库

MySQL下载地址:https://dev.mysql.com/downloads/workbench/

注意:

支持的知识库版本信息,请查看系统环境要求的知识库要求章节

5.授权文件

官网下载的产品安装包自带的License文件,有效期为一个月,如果License文件过期了,访问产品会提示更新授权文件,在产品端可以直接申请永久license,请参考「免费的社区版产品及获取方法」章节或者联系商务获取

写在前面:

1.在进行安装部署前,需要用命令连接工具如xshell连接到服务器进行操作,如下图:

2.掌握命令修改文件的方法

 因为以下步骤很多地方需要在命令窗口修改或创建文件,对于不熟悉Linux命令的小伙伴,先科普一下,如何编辑服务器内的文件,方法如下图:

部署知识库

1.设置系统环境,当平台并发数多的时候设置取消打开文件数限制避免影响使用,在limits.conf 文件加上一些内容

   输入命令:sudo vi /etc/security/limits.conf  ,输入访问服务器的密码即可

进入limits.conf 文件的编辑状态后,在末尾加入以下内容:

* soft nofile 65536

* hard nofile 65536

* soft nproc 131072

* hard nproc 131072

2.查找本机安装包是否有mariadb

sudo rpm -qa|grep mariadb

如果有,如下图所示

则卸载掉,

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

3.部署mysql

(1)创建MySQL用户和组

sudo groupadd mysql

sudo useradd -r -M -s /sbin/nologin mysql -g mysql

(2)上传安装包,并解压到/home目录(安装到哪个目录可以自行选择,数据库必须解压到根目录下,不然到后面会有权限问题)

进入到上传安装包所在的路径

cd /home/smartbi/手工部署

解压安装包到根目录下(根目录指一级目录)

sudo tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /home

查看下效果,解压后的mysql

(3)修改用户权限,并创建软连接(可理解为创建快捷方式)

sudo chown -R mysql:mysql /home/mysql-5.7.36-linux-glibc2.12-x86_64/

sudo ln -s /home/mysql-5.7.36-linux-glibc2.12-x86_64/ /usr/local/mysql

验证软连接是否成功:输入mysql,快速连续输入两次tab,若出现截图信息,说明创建软连接成功

(4)添加mysql到系统环境变量修改profile文件: sudo vi /etc/profile

        在最后一行添加:export PATH=$PATH:/usr/local/mysql/bin

保存退出后(esc  , :wq),source 文件,让设置生效

source /etc/profile

(5)初始化数据库

cd /usr/local/mysql

sudo ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

备注:必须在 mysql 根目录安装 mysql,否则出错。如下图所示,安装完注意最后一行,会提 示生成一个临时的 root@localhost 密码,记住密码,等下会用到。

(6)修改mysql配置文件,如果不存在则创建一个my.cnf

        sudo vi /etc/my.cnf

加以下这段内容:

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

tmpdir=/usr/local/mysql/data

socket=/tmp/mysql.sock

character_set_server=gbk

log-error=/var/log/mysqld.log

port=3306

max_connections=500

max_allowed_packet=200M

innodb_buffer_pool_size=512M

innodb_log_file_size=128M

lower_case_table_names=1

强调:Linux下默认大小写敏感,如果不设置lower_case_table_names为1知识库会在启动时提示错误信息用Mysql8是无法后续修改的,非常麻烦!!

(7)复制启动文件到对应目录

sudo cp -a ./support-files/mysql.server /etc/init.d/mysqld

手动启动数据库:

数据库的启动命令:

sudo /etc/init.d/mysqld start

tips:数据库的关闭命令(现在不需要输,了解即可):

sudo /etc/init.d/mysqld stop

(8)重置密码

使用刚才初始化时提示的临时密码登录MySQL

mysql -uroot -p

输入第 5 步初始化数据库的 root@localhost 的临时密码,登录MySQL,重新设置密码。

mysql> SET PASSWORD = PASSWORD('新的密码'),如果您新的密码为admin,

则输入为:SET PASSWORD = PASSWORD('admin')

刷新生效

mysql> flush privileges;

(9)开启MySQL远程连接

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '远程连接的密码' WITH GRANT OPTION;

mysql> flush privileges;

远程密码与第八步修改的密码保持一致,如果为admin则可以这样写:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;

mysql> flush privileges;

(10)创建数据库spreadsheet

mysql> create database spreadsheet default charset gbk;

(11)设置开机启动MySQL

先退出MySQL

Crtl +d 退出

$ sudo chkconfig --level 35 mysqld on

 

以上就是数据库(为知识库做准备)的部署,接下来就开始部署中间件和Spreadsheet,为了便于安装,建议在安装前关闭防火墙。使用过程中,为了系统安全可以选择启用防火墙,但必须启用Spreadsheet使用到的相关端口。

1.关闭防火墙

临时关闭防火墙

# systemctl stop firewalld

永久关闭防火墙

# systemctl disable firewalld

查看防火墙状态

# systemctl status firewalld

2.开启防火墙

相关服务及端口对照表

服务名

开放端口

Spreadsheet

18088


果确实需要打开防火墙安装,需要给防火墙放开以下需要使用到的端口
开启端口:18088

# firewall-cmd --permanent --add-port=18088/tcp

配置完以后重新加载firewalld,使配置生效

# firewall-cmd --reload

查看防火墙的配置信息

# firewall-cmd --list-all

3.关闭selinux

临时关闭selinux,立即生效,不需要重启服务器。

# setenforce 0

永久关闭selinux,修改完配置后需要重启服务器才能生效

# sed -i 's/=enforcing/=disabled/g'  /etc/selinux/config

部署中间件

本次部署将部署文件存放于/home/smartbi/spreadsheet目录

1.安装Java环境

 安装包解压到/home/smartbi/spreadsheet目录

# tar -zxvf jdk-8u202-linux-x64.tar.gz -C /home/smartbi/spreadsheet

2.安装Tocmat

①Tomcat安装包解压到/home/smartbi/spreadsheet目录

# tar -zxvf apache-tomcat-8.5.57.tar.gz -C /home/smartbi/spreadsheet

②修改Tomcat启动参数

进入Tomcat下的bin目录

# cd /home/smartbi/spreadsheet/apache-tomcat-8.5.57/bin

创建Tomcat启动参数文件:setenv.sh

# vi setenv.sh

具体参数如下,此步骤不可省略(根据实际部署替换配置中的路径):

export JAVA_HOME="/home/smartbi/spreadsheet/jdk1.8.0_202"

export JRE_HOME="/home/smartbi/spreadsheet/jdk1.8.0_202/jre"

export CATALINA_HOME="/home/smartbi/spreadsheet/apache-tomcat-8.5.57"

export JAVA_OPTS="-Dfile.encoding=GBK -Duser.region=CN -Duser.language=zh -Djava.awt.headless=true -Xms8192m -Xmx8192m -XX:MaxMetaspaceSize=512m -Dmail.mime.splitlongparameters=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow"

温馨提示

配置setenv.sh文件,建议在Linux环境直接编辑,如果在Windows上编辑后上传到Linux,需要注意文件编码格式以及Windows换行符

赋予setenv.sh相关权限

# chmod 755 setenv.sh

部署Spreadsheet

1.上传war包

将spredsheet.war上传到/home/smartbi/spreadsheet/apache-tomcat-8.5.57目录下

2.启动Tocmat 服务器

进入/home/smartbi/spreadsheet/apache-tomcat-8.5.57/bin目录下

cd /home/smartbi/spreadsheet/apache-tomcat-8.5.57/bin

执行startup.sh脚本启动tomcat程序

./startup.sh

3.配置Spreadsheet

Tocmat服务启动完成后,访问 http://IP:PORT/spreadsheet/vision/config 进入Spredsheet系统配置页面。

如何确认IP和Port端口?

IP可以在部署服务器的机器通过ifconfig命令获取

Port端口可以查看server文件,如下图

进入到Config界面后,由于默认没有配置文件,不必担心,进入后填写补充信息后,保存即可在服务器自动生成配置文件

(如果需要在jvm中指定配置文件路径,使用参数-DSpreadsheet.ConfigFileDir=<path>进行设置)

首次登陆会要求设置Config页面登陆密码

Config页面登陆账号密码与Spreadsheet访问账号密码是不同的

完成知识库连接配置、上传License文件(默认自带了license,可选操作)、以及其他设置项,然后保存配置。配置详情参考Smartbi Config页面介绍

4.重启Tocmat服务

Spreadsheet config页面配置保存完成后需要重启Tomcat服务,完成知识库表的自动创建工作。

①停止tomcat程序

ps -ef| grep tomcat

# kill -9 tomcat进程ID

温馨提示

如下图所示,tomcat的进程ID为6133

②重新启动Tomcat服务

cd /home/smartbi/spreadsheet/apache-tomcat-8.5.57/bin

./startup.sh

查看日志,查看启动状态,也可不查看,过几分钟启动完毕直接访问环境

tail -f ../logs/catalina.out

等待Tomcat服务启动和Spreadsheet完成初始化即可访问 Spreadsheet:http://IP:PORT/spreadsheet/vision/index.jsp

Spreadsheet初始登陆账号:admin 密码:manager

首次登陆会要求修改密码。

Spreadsheet部署完成!

————————————————

立足经典、真Excel设计、社区版永久免费!立即下载使用,开启高效报表开发之旅!

Demo体验

返回顶层