【问题分类】数据导入导出
【关键字】数据同步,kettle,数据迁移,pg_hba.conf
【问题描述】使用 kettle 同步 postgresql 至崖山数据库时提示以下报错信息:
信息: New Caching Service registered
2024/10/10 17:00:21 - Pan - 开始运行.
2024/10/10 17:00:21 - public.T1 - 为了转换解除补丁开始 [public.T1]
log4j:ERROR No output stream or file set for the appender named [pdi-execu
在 YashanDB 中执行与 Oracle 相同的建表语句并插入大整型数字时,出现错误“YAS-00013 value is larger than INTEGER allowed”。原因是 YashanDB 的 int 类型取值范围为 -2,147,483,648 到 2,147,483,647,而问题中的整型数字有 16 位,超出了此范围。Oracle 使用 NUMBER 类型,INT 不是其标准类型。解决方法是将字段修改为 Number 或 Bigint。影响版本:YashanDB 所有版本。
在崖山数据库中执行某些 SQL 语句时出现报错(YAS-04316 not a single-group group function),而这些语句在 MySQL 中能成功执行。原因是崖山遵循 SQL-92 标准,不允许选择列表中包含未在 GROUP BY 子句中指定的非聚合列,而 MySQL 默认允许这种操作。解决办法包括:使用聚合函数处理非聚合列或拆分查询为两层,先进行 GROUP BY 再排序。总结来说,SQL-92 更严格,确保数据一致性,MySQL 在 5.7 及以上版本也默认遵循此标准。
oracle 数值类型只有 number 类型,float 和 integer 都只是 number 类型的子类。
且 oracle 的类型 number 类型还有未定义状态,此时取精度(precision)和刻度(scale)
都是不准确的,如果是未定义状态,还是通过精度和刻度判断是否能够转换为整型也是不严谨的,
某客户C# ASP.NET应用在使用yashandb ODBC驱动时,因驱动不支持绑定变量执行SQL语句而报错“YAS-08008 not all variables bounded”,导致应用无法正常运行。影响所有yashandb及ODBC驱动版本。解决方法为避免使用绑定变量或升级驱动版本。通过简化场景成功复现问题。
**问题分类:安装部署**
在对YashanDB主备集群进行在线缩容时,使用yasboot将IP为192.168.33.168的节点1-3踢出集群,但YCM托管时提示需重新加入该主机,并报错“host003 not found in node map”。原因是yasboot仅清理了node信息,未清理om中的host信息。解决方法是手动修改om主机上的sqlite数据库,清理残留信息。此问题影响23.2.3.100及之前版本,尚未修复。