历史版本13 :配置SQL Server外接数据库 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

注:由于SQL Server 数据库的一些特性,可能会导致性能较慢,推荐用户使用其他类型的数据库作为外接数据库!

1.1 版本

FineBI服务器版本功能变更
6.0-

1.2 功能简介

BI 系统配置外接数据库后,遇到集群环境或数据量较大情况时,可保证 BI 系统的稳定性。

用户可在「初始化时」配置外接数据库或在「平台中」配置 SQL Server 版本的外接数据库。

注:若配置了外接数据库,请勿轻易修改外接数据库的用户名和密码,否则会导致工程启动失败。

       如需修改,请参照:修改外接数据库账号密码 。

2. 数据库配置编辑

2.1 数据库版本

外接数据库支持的类型及版本如下表所示:

数据库类型支持数据库版本
SQL Server2000、2005、2008、2012、2014、2016、2017

2.2 硬件配置

配置类型
最低配置推荐配置
内存2GB4GB
CPU4核8核
网速
50Mbps100Mbps
占用空间1GB2GB
磁盘读写速度50MB/s100MB/s

注1:推荐内存为预留给工程配置库的内存。

注2:占用空间需要结合使用度进行调整,可以根据webapps/webroot/WEB-INF/embed/finedb文件夹大小配置,并根据实际大小预估未来使用大小,增大1~2倍。

注3:外接数据库尽量和 BI 工程在同一网段,避免网络波动等问题

2.3 新建数据库

新建一个数据库,用于存储平台相关数据。

标准建库语句:CREATE DATABASE finedb COLLATE Chinese_PRC_CS_AS

注:不同 FineBI 工程,不可共用同一个外接数据库,否则数据可能会出现错乱。

SQL Server 数据库的排序规则可选择 Chinese_PRC_CS_AS(大小写敏感)或 Chinese_PRC_CI_AS(大小写不敏感),建议使用 Chinese_PRC_CS_AS(区分大小写 )。

  • 选择 Chinese_PRC_CS_AS ,将原封不动的把全部数据迁移过去。

  • 选择 Chinese_PRC_CI_AS ,迁移时如果报 fine_conf_entity 表违反了 PRIMARY KEY 约束之类的字样,通常是工程有脏数据。

    可执行下面SQL语句查看脏数据:select lower(ID),COUNT(1) FROM FINE_CONF_ENTITY GROUP BY LOWER(ID) HAVING COUNT(1) >1

3. 配置外接数据库编辑

3.1 外接数据库配置入口

外接数据库的配置入口,有三种形式:

1)超级管理员第一次登录数据决策系统时,即可为系统配置外接数据库。如下图所示:

2)对于使用内置数据库的系统,管理员登录数据决策系统,点击「管理系统>系统管理>常规>外接数据库>待配置」,可为系统第一次配置外接数据库。如下图所示:

3)对于已启用外接数据库的系统,管理员登录数据决策系统,点击「管理系统>系统管理>常规>外接数据库>已配置」,可为系统迁移至新的外接数据库。如下图所示:

3.2 配置外接数据库

进入到外接数据库配置界面后,选择数据库类型,输入实际数据库相应的信息即可。如下图所示:

3.2.1 设置项

各设置项说明如下表所示:

设置项说明
数据库类型选择 sqlserver
驱动

无需修改,会自动配置

数据库名称

2.3 节新建的数据库名称

禁止与其他工程共用数据库,建议新建数据库

数据库名称只允许包含数字、字母、下划线和「.」

用户名/主机/密码/端口根据本地数据库实际情况填写

主机名称只允许包含数字、字母、下划线、「-」和「.」

用户需要具备 create、delete、alter、update、select、insert、index 权限

模式

仅支持下拉选择模式

正确填写完上面几项设置后,点击模式下拉框中的「点击连接数据库」,系统将自动连接该数据库并读取模式,选择即可(尽量选择和数据库用户的名字相同的模式)

注:若提示数据库连接失败,请检查上面几项设置。

3.2.2 迁移数据至要启用的数据库

用户可根据自身需求选择是否勾选「迁移数据至要启用的数据库」按钮。具体如下:

1)勾选「迁移数据至要启用的数据库」,新外接数据库为空

点击「启用新数据库」后,会将原 finedb 数据库的平台数据迁移到新外接数据库中。

2)勾选「迁移数据至要启用的数据库」,新外接数据库中已存在平台数据

点击「启用新数据库」后,跳出提示「该数据库已存在平台数据,导入数据前将清空原有平台数据,确认连接该数据库?」。

点击「确定」将清空原有平台数据,将原 finedb 数据库的平台数据迁移到新外接数据库中。

3)不勾选「迁移数据至要启用的数据库」,新外接数据库为空

点击「启用新数据库」后,跳出提示「目标数据库为新数据库,将当前数据迁移至目标数据库后方能使用」。

点击「确定」,将原 finedb 数据库的平台数据迁移到新外接数据库中。

4)不勾选「迁移数据至要启用的数据库」,新外接数据库中已存在平台数据

点击「启用新数据库」后,5.1.15 及之后版本的 BI 工程会自动检测目标数据库中数据对应的 JAR 包版本和当前工程的 JAR 包版本是否一致。

  • 若不一致,则跳出提示「无法启用!启用新数据库需要的工程版本:XXX。当前工程版本:XXX。请确保工程版本一致!」。无法进行外接数据库配置。

  • 若 JAR 包版本一致,且原 finedb 数据库为内置数据库,则直接启用新外接数据库。

  • 若 JAR 包版本一致,且原 finedb 数据库为外接数据库,迁移前将自动备份原数据库的配置信息,在webapps\webroot\WEB-INF\config目录下生成db.properties.bak文件,并直接启用新外接数据库。如下图所示:

3.3 迁移成功

等待一段时间,迁移成功后,根据迁移时的情况,可能会跳出不同的弹窗提示。

注:请勿在迁移过程中刷新页面。

1)新外接数据库,使用了原 finedb 数据库的数据。

则提示「已成功启用目标数据库」。点击「确定」即可,迁移成功。如下图所示:

2)新外接数据库,使用了该数据库中原有的数据,且原 finedb 数据库为内置数据库。

则提示「已成功切换至目标数据库!新旧数据库若存在数据差异可能影响系统运行,建议重启工程以确保正常使用」。

点击「确定」后,重启报表工程,方迁移成功。如下图所示:

3)新外接数据库,使用了该数据库中原有的数据,且原 finedb 数据库为外接数据库。

则跳出两个提示:

  • 已成功切换至目标数据库!新旧数据库若存在数据差异可能影响系统运行,建议重启工程以确保正常使用

  • 原数据库配置已备份至config文件夹下,如有需要可以使用备份文件还原数据库配置

点击「确定」后,重启报表工程,方迁移成功。如下图所示:

1611286418590120.png

3.4 删除内置库数据连接

「内置 FineDB 数据库」为HSQL数据库,使用时会建立内存数据库,数据量大时会占用大量内存。

因此配置完外接数据库后,请检查数据连接中是否存在「内置 FineDB 数据库」的数据连接。

若存在相关数据连接,请及时删除,否则会持续占用服务器内存。