-
将达梦数据库驱动 DmJdbcDriver18-8.1.2.192.jar 导入到 hive 的 lib 文件夹下
-
修改 hive 配置文件,增加 dm 数据库相关信息
c<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:dm://127.0.0.1:5236?SCHEMA=hive</value> <description> JDBC connect string for a JDBC metastore. To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL. For example, jdbc:postgresql://myhost/db?ssl=true for postgres database. </description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>dm.jdbc.driver.DmDriver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>SYSDBA</value> <description>Username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>SYSDBA</value> <description>Username to use against metastore database</description> </property> <property>
-
在导入数据时,出现无法识别 "COMMENT" 关键字错误,报 return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask, MetaException(message:Add request failed : INSERT INTO COLUMNS_V2 ...)错误,如下图:
(1)经过排查 hive lib包下 datanucleus-rdbms-4.1.19.jar 源代码,缺少 "COMMENT" 关键字
datanucleus-rdbms-4.1
(2)官方源码地址::链接
(3)修改 org.datanucleus.store.rdbms.adapter 下的 BaseDatastoreAdapter类 或者 org/datanucleus/store/rdbms/adapter/SQLConstants.java 类,在
SQL99_RESERVED_WORDS 增加 "COMMENT"
(4)重新打包后,替换Hive/lib下 的 datanucleus-rdbms-4.1.19.jar 包,重新执行hive命令即可成功
(5)已经重新打包的 datanucleus-rdbms-4.1.19.jar提取码:1234
-
与原作者沟通后,得到回复大概意思是 "COMMENT" 在SQL92、SQL99、SQL2003 标准中不是保留关键字,所以后续也不会增加这个关键字,如有需求自行添加打包使用。
Hive 使用达梦DM8 无法识别 “COMMENT” 问题
freedom_Mr2023-09-20 6:03
相关推荐
tatasix10 分钟前
MySQL UPDATE语句执行链路解析南城花随雪。23 分钟前
硬盘(HDD)与固态硬盘(SSD)详细解读儿时可乖了24 分钟前
使用 Java 操作 SQLite 数据库懒是一种态度26 分钟前
Golang 调用 mongodb 的函数天海华兮28 分钟前
mysql 去重 补全 取出重复 变量 函数 和存储过程gma9991 小时前
Etcd 框架爱吃青椒不爱吃西红柿️1 小时前
华为ASP与CSP是什么?Yz98762 小时前
hive的存储格式lzhlizihang2 小时前
python如何使用spark操作hive武子康2 小时前
大数据-230 离线数仓 - ODS层的构建 Hive处理 UDF 与 SerDe 处理 与 当前总结