本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7919231.html?templateId=171...

【问题分类】功能兼容

【关键字】YAS-07202、YAS\_MY ERROR ,不兼容

【问题描述】

本项目的架构是hadoop+hive+yashandb

使用崖山数据库,将mysql相关的创建表语句进行初始化同步

使用崖山23.3版本兼容mysql数据库,新建表和查询表都出现问题

查询报错

mysql> SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS NUCLEUS\_TYPE,A0.CREATE\_TIME,A0.LAST\_ACCESS\_TIME,A0.OWNER,A0.OWNER\_TYPE,A0.RETENTION,A0.IS\_REWRITE\_ENABLED,A0.TBL\_NAME,A0.TBL\_TYPE,A0.TBL\_ID FROM TBLS A0 LEFT OUTER JOIN DBS B0 ON A0.DB\_ID = B0.DB\_ID ;

ERROR 7202 (HY000): YAS-07202 plugin execution error, YAS\_MY error, unsupported datatype

output

创建表报错

output (1)

【问题原因分析】

初步分析是jdbc连接层出现的问题,类型方法不兼容

于是尝试替换将崖山驱动jdbc 1.8jar 替换成mysql原始jdbc 5.1.4 jar

替换的步骤如下,由于官网上面步骤不完善,不能配置成功,因此本文进行正确的配置

1、确认yashandb 版本23.3.2.100

2、配置mysql监听服务文件

$YASDB\_DATA/config/service.ini

可参照官网

https://doc.yashandb.com/yashandb/23.3/zh/开发手册/MySQL兼容模式参考手册/MySQL监听服务.html

3、生成秘钥方式

openssl genrsa -out private\_key.pem 2048

openssl rsa -in private\_key.pem -pubout -out public\_key.pem

4、配置项目hive连接崖山数据的配置(注意端口是不是1688)

修改hive-site.xml 添加如下配置

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://192.168.23.100:1279/HIVE?allowPublicKeyRetrieval=true</value>

</property>

<!--指定Hive连接MySQL的驱动全类名-->

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.cj.jdbc.Driver</value>

</property>

5、重启崖山服务

yasboot cluster restart -c yashandb

【解决/规避方法】

重启之后,通过额外1279监听配置,连接到yashandb

之后查询和创建等基本操作就正常了

output (2)

output (3)


YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...