(此文档仅供参考)
问题现象
因用户使用需要,想要将smartbi的知识库用mysql8数据库,但实际mysql8驱动和mysql8以下版本的数据库驱动并不兼容,二者只能取其一,那smartbi要如何配置才能配置mysql8作为知识库?
PS:经我们目前了解,受限于mysql驱动不相互兼容的原因,所以,在V9以下的smartbi版本只能使用其中一个mysql版本,不支持同时使用多个版本的mysql,如果能找到兼容多个版本的mysql驱动,也可以参考此方式更换数据库驱动。
实现步骤
1、war包正常是可以用压缩工具双击打开的,然后直接通过删除旧的添加新的文件方式进行替换里边的文件,注意不能手动解压后又自己压缩回去的方式替换,这样有可能会导致目录层级不对,从而使war包不能正常使用。进行驱动替换前请先将war包备份。
2、将新的mysql驱动添加到war包的 web-inf/lib 同样路径下:
其他注意事项:
1、如果启动后出现如下错误:
启动服务器不成功,查看smartbi.log日志文件,出现下面信息:
问题原因:知识库字符集不对导致。
解决方案:字符集不对,最简单的处理方式就是使用可以指定数据库数据集的工具新建一个是GBK字符集或者utf-8的知识库 。或者用SQL语句创建指定gbk或者utf-8 字符集的数据库,如mysql的创建数据库语句:create database test_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;