反饋已提交

網絡繁忙

管理平台應用-配置MySQL8外接資料庫

一、概述

1
版本。
報表伺服器版本功能變更
10.0.11
-
10.0.18遷移外接資料庫,且不勾選【遷移資料至要啟用的資料庫】時,自動檢查新老資料庫對應工程版本是否一緻


2
功能簡介。
  1. 報表系統配置外接資料庫後,遇到叢集環境或資料量較大情況時,可保證報表系統的穩定性。

  2. 使用者可在【初始化時】配置外接資料庫或在【平台中】配置 MySQL 8 版本的外接資料庫。

注:若配置了外接資料庫,請勿輕易修改外接資料庫的帳號和密碼,否則會導緻工程啟動失敗。

      如需修改,請參照:修改外接資料庫帳號密碼

二、資料庫配置

1
資料庫版本。
  1. 外接資料庫支援的型別及版本如下表所示。

資料庫型別報表伺服器版本支援資料庫版本
MySQL810.0.11

8.0.11,8.0.16,8.0.20

2
硬體配置。
配置型別最低配置推薦配置
記憶體1GB2GB
CPU4核8核
網速
50Mbps100Mbps
佔用空間1GB2GB
磁盤讀寫速度50MB/s100MB/s

注1:佔用空間需要結合使用度進行調整,可以根據webapps/webroot/WEB-INF/embed/finedb資料夾大小配置,並根據實際大小預估未來使用大小,增大1~2倍。

注2:推薦記憶體為預留給工程配置庫的記憶體。

注3:外接資料庫盡量和報表工程在同一網段,避免網路波動等問題。

3
建立資料庫。
  1. 建立一個資料庫,用於儲存平台相關資料。

  2. 標準建庫語句:【CREATE DATABASE `finedb` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin】。

  3. 推薦設定資料庫預設字元集為 utf8 ,預設排序規則為 utf8_bin。如下圖所示。

  4. 資料庫名:只允許包含數字、字母、底線和「.」。

  5. 字元集:1)平台外接 MySQL 資料庫時,需要設定字元集排序規則(大小寫敏感);2)推薦使用 utf8 – UTF-8 Unicode 編碼。

  6. 排序規則:MySQL 中存在多種格式的 utf8 編碼的排序規則,其中最常見的兩種為:1)utf8_bin(推薦):將字串中的每一個字元用二進制資料儲存,區分大小寫(範例:Alex 和 alex 被認為是兩個不同的值);2)utf8_general_ci:ci 為 case insensitive 的縮寫,即大小寫不敏感,為 utf8 預設編碼(範例:Alex 和 alex 被認為是相同的值)。

注:不同 FineReport 工程,不可共用同一個外接資料庫,否則資料可能會出現錯亂。

4
更換驅動。
  1. FineReport 10.0 內建了 MySQL5 版本的驅動,如使用 MySQL8 版本的外接資料庫,需要手動更換驅動。

  2. 關閉報表工程。

  3. 下載對應版本的 MySQL8.0 驅動,聯集傳至工程【webapps\webroot\WEB-INF\lib】目錄下。

  4. 删除工程【webapps\webroot\WEB-INF\lib】目錄下的【mysql-connector-java-5.1.39-bin.jar。

  5. 重啓報表工程。

三、配置外接資料庫

1
外接資料庫配置入口。
  1. 外接資料庫的配置入口,有三種形式:

  2. 超級管理者第一次登入數據決策系統時,即可為系統配置外接資料庫。如下圖1所示。

  3. 對於使用內建資料庫的系統,管理者登入數據決策系統,點選【管理系統】→【系統管理】→【標準】→【外接資料庫】→【待配置】,可為系統第一次配置外接資料庫。如下圖2所示。

  4. 對於已啟用外接資料庫的系統,管理者登入數據決策系統,點選【管理系統】→【系統管理】→【標準】→【外接資料庫】→【已配置】,可為系統遷移至新的外接資料庫。如下圖3所示。

2
配置外接資料庫。
  1. 進入到外接資料庫配置介面後,選擇資料庫型別,輸入實際資料庫相應的資訊即可。如下圖所示。

3
設定項。
  1. 各設定項說明如下表所示。


設定項說明
資料庫型別選擇 MySQL
驅動FineReport已內建 MySQL8的驅動,無需修改,會自動配置
資料庫名稱第二章第3節建立的資料庫名稱

禁止與其他工程共用資料庫,建議建立資料庫

資料庫名稱僅允許包含數字、字母、底線和「.」

帳號/主機/密碼/埠根據本地資料庫實際情況填寫

主機名稱僅允許包含數字、字母、底線、「-」和「.」

使用者需要具備 create、delete、alter、update、select、insert 權限


4
遷移資料至要啟用的資料庫。
  1. 使用者可根據自身需求選擇是否勾選【遷移資料至要啟用的資料庫】按鈕。具體如下:

  2. 勾選【遷移資料至要啟用的資料庫】,新外接資料庫為空:點選【啟用新資料庫】後,會將原 finedb 資料庫的平台資料遷移到新外接資料庫中。

  3. 勾選【遷移資料至要啟用的資料庫】,新外接資料庫中已存在平台資料:①點選【啟用新資料庫】後,跳出提示【該資料庫已存在平台資料,匯入資料前將情況原有平台資料,應答連結該資料庫?】。②點選【確定】將清空原有平台資料,將原 finedb 資料庫的平台資料遷移到新外接資料庫中。

  4. 不勾選【遷移資料至要啟用的資料庫】,新外接資料庫為空:①點選【啟用新資料庫】後,跳出提示【目標資料庫為新資料庫,將當前資料遷移至目標資料庫後方能使用】。②點選【確定】,將原 finedb 資料庫的平台資料遷移到新外接資料庫中。

  5. 不勾選【遷移資料至要啟用的資料庫】,新外接資料庫中已存在平台資料:①點選【啟用新資料庫】後,工程會自動檢查目標資料庫中資料對應的 JAR 包版本和當前工程的 JAR 包版本是否一緻。②若不一緻,則跳出提示【無法啟用!啟用新資料庫需要的工程版本:XXX。當前工程版本:XXX。請確定工程版本一緻!】。無法進行外接資料庫配置。

  6. 若 JAR 包版本一緻,且原 finedb 資料庫為內建資料庫,則直接啟用新外接資料庫。

  7. 若 JAR 包版本一緻,且原 finedb 資料庫為外接資料庫,遷移前將自動備份原資料庫的配置資訊,在【webapps\webroot\WEB-INF\config目錄下生成db.properties.bak】檔案,並直接啟用新外接資料庫。如下圖所示。

5
遷移成功。
  1. 等待一段時間,遷移成功後,根據遷移時的情況,可能會跳出不同的彈窗提示。

  2. 新外接資料庫,使用了原 finedb 資料庫的資料:則提示【已成功啟用目標資料庫】。點選【確定】即可,遷移成功。如下圖1所示:

  3. 新外接資料庫,使用了該資料庫中原有的資料,且原 finedb 資料庫為內建資料庫:則提示【已成功切換至目標資料庫!新舊資料庫若存在資料差異可能影響系統運作,建議重啓工程以確定正常使用】。點選【確定】後,重啓報表工程,方遷移成功。如下圖2所示。

  4. 新外接資料庫,使用了該資料庫中原有的資料,且原 finedb 資料庫為外接資料庫。則跳出兩個提示:已成功切換至目標資料庫!新舊資料庫若存在資料差異可能影響系統運作,建議重啓工程以確定正常使用。原資料庫配置已備份至config資料夾下,如有需要可以使用備份檔案還原資料庫配置。點選【確定】後,重啓報表工程,方遷移成功。如下圖3所示。

注:請勿在遷移過程中重新整理頁面。

四、注意事項

  1. 如果一開始資料庫排序規則沒有設定 utf8_bin ,但已經遷移過去了,那麼有兩張表 fine_conf_entity、 fine_conf_classname 需要修改為 utf8_bin,下面以 fine_conf_entity 為例。

  2. 查詢當前的字元集排序規則:

    show full columns from fine_conf_entit
  3. 設定字元集排序規則為 utf8_bin :

    設定列的預設校驗規則:

    ALTER TABLE fine_conf_entity MODIFY id VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_bin

    設定表的校驗規則:

    ALTER TABLE fine_conf_entity DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
  4. 查看是否修改成功 :

    show full columns from fine_conf_entit
  5. 用上面相同的步驟將 fine_conf_entity 更換為 fine_conf_classname 表,設定如下圖所示。

附件列表


主題: 數據決策系統
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉