历史版本7 :[平台]MySQL8数据连接插件 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本JAR插件版本功能变动
10.0.112020-11-27
V1.0.0
-

1.2 应用场景

安装此插件用户可以直接 MySQL8 数据库。

1.3 功能介绍

本文仅适用于 10.0.11 之后的报表服务器,10.0.11 之前的报表服务器若要连接 MySQL8 数据库请参见:[平台]MySQL数据连接

注:不支持在设计器连接。

2. 操作方式编辑

2.1 安装插件

点击下载插件:fr-plugin-connection-mysql8-1.0.0.zip

服务器安装插件方法参照:服务器插件管理

2.2 配置信息

  驱动URL
驱动下载链接支持数据库类型

com.mysql.cj.jdbc.Driver

 jdbc:mysql://ip:port/<数据库名>?useSSL=false&serverTimezone=UTC插件内置 mysql-connector-java-5.1.49.jar 驱动包,无需下载8.0.20

用户如果想要连接 MySQL8 其他小版本,可以更换驱动包进行尝试,详情请参见:3. 替换驱动包

URL说明:

增加参数「&serverTimezone=UTC」是为了防止时区导致的数据库乱码问题,其中 UTC 为世界标准时,即零时区。若用户使用的系统、报表服务器等使用的时间是北京时区也就是东八区,此时会出现在 FineReport 数据预览界面的数据时间比数据库中时间快八小时,可修改参数为 &serverTimezone=GMT%2B8 ,其中「GMT%2B8」为北京时间东八区。即可保证数据库中时间字段与 Finereport 数据预览界面时间字段一致。

2.3 连接步骤

1)管理员登录数据决策系统,点击「管理系统>数据连接>数据连接管理」,点击「新建数据连接」,在所有选项下选择MySQL8,如下图所示:

注:如果非管理员用户想要配置数据连接,需要管理员给其分配管理系统下数据连接节点的权限,具体操作请查看 数据连接控制 

12.png

2)按照本文 2.2 章节的配置信息,输入对应的数据连接信息。其中高级设置可选填,详情请参见:[平台]数据连接 。输入信息后界面如下图所示:

13.png

若出现中文乱码和日期错乱(填报&预览)的情况:

可以修改 URL 为: 

jdbc:mysql://localhost:端口号/<数据库名>?generateSimpleParameterMetadata=true&useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai

  • serverTimezone=Asia/Shanghai -- 设置以"上海时区"为准

  • characterEncoding=utf8  -- 编码转化

有关 MySQL 数据库中文乱码问题详情请参见:MySQL数据库中文乱码

3)点击「测试连接」,若弹出「连接成功」提示框,则表示成功连接上数据库,如下图所示:

14.png

4)点击「保存」,就新建完成一个 MySQL8 的数据链接,如下图所示:

15.png

3. 替换驱动包编辑

若用户使用的是 MySQL8 的其余小版本,可以尝试更换一下驱动包。

由于 MySQL8 小版本繁多,更换驱动包后也不能全部保证连接无误,所以有条件的用户建议直接使用 MySQL 8.0.20 版本数据库。

3.1 操作步骤

1)关闭设计器工程。

2)从 MySQL官网 下载对应当前 MySQL 小版本的连接驱动包。以 MySQL 8.0.17 版本为例,下载驱动包 mysql-connector-java-8.0.17.jar 

3)删除%FineReport_10.0%\webapps\webroot\WEB-INF\plugins\plugin-com.fr.plugin.connection.mysql8-1.0.0下的「mysql-connector-java-8.0.20」文件,并将下载的驱动包拷贝到该路径下

16.png

3)换好驱动后,重启设计器工程,对照 2.2 节、2.3 节连接数据库即可。