页面树结构
转至元数据结尾
转至元数据起始

正在查看旧版本。 查看 当前版本.

与当前比较 查看页面历史

« 前一个 版本 5 下一个 »

概述


1、使用产品的备份/恢复知识库,而非数据库工具的备份/恢复。【??】

比如从Oracle备份出来,由于oracle中知识库的表都是大写,因此备份文件中的表的建表语句都是 create table T_USER(xxxxxx)。使用该语句恢复到其他数据库,比如区分大小写的达梦数据库时,在达梦数据库中生成的表便是T_USER,而实际上区分大小写的达梦数据库,产品所需要的表是小写的t_user。


但是如果在确认两者的大小写策略一致的情况下,使用数据库工具备份是否更高效?更不容易出问题。



2、备份知识库会进行“系统检查”,若以下项检查出问题,则建议修复之后重新备份。

表结构



2、注意源环境知识库表名、列名 与目标环境知识库表名、列名大小写的策略是否一致。

尤其是目标环境为达梦数据库


3、注意源环境知识库与目标环境知识库的表数据大小写策略是否一致。

若源环境知识库表数据区分大小写,则在使用过程中可能在知识库中产生数据一样只是大小写不一样的数据。比如在源环境中可以创建2个用户,名称分别为Zhangsan、zhangsan,这两个用户由于知识库表数据区分大小写,因此数据库会认为是两条不一样的数据,是可以正常保存的。

此时若目标环境表数据并不区分大小写,则将源环境知识库恢复到目标环境 或将源环境的“用户管理“模块”导入到目标环境时,目标环境的知识库会认为 Zhangsan、zhangsan是同一条数据,而用户名称字段刚好是主键,因此就会出现主键冲突。系统抛错违反唯一约束。


解决方案有以下两种:
1)修改目标环境知识库为表数据大小写敏感。具体修改方式可参考数据库工具文档。

2)修改备份文件/导出文件中对应表的xml,使用编辑器打开xml文件,将其中一条记录如zhangsan,统一修改为其他数据如zhangsan1。保存xml文件之后重新恢复/导入。
注:但此种方案并不适用于所有场景,如果主键冲突的数据是通过数据源的数据库管理添加到smartbi中的表名、字段名等,是无法通过此种方式处理的。


4、字符集是否一致



  • 无标签