1. 程式人生 > >hive 啟動問題記錄 及解決方法

hive 啟動問題記錄 及解決方法

問題1: Caused by: javax.jdo.JDODataStoreException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables" NestedThrowables: org.datanucleus.store.rdbms.exceptions.MissingTableException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"         at org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:461)         at org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:732)         at org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:752)         at org.apache.hadoop.hive.metastore.ObjectStore.setMetaStoreSchemaVersion(ObjectStore.java:6664) 解決方法: if ((this.readOnlyDatastore) || (this.fixedDatastore))      {        this.autoCreateTables = false;        this.autoCreateColumns = false;        this.autoCreateConstraints = false;      }      else      {        boolean autoCreateSchema = conf.getBooleanProperty("datanucleus.autoCreateSchema");        if (autoCreateSchema)        {          this.autoCreateTables = true;          this.autoCreateColumns = true;          this.autoCreateConstraints = true;        }        else      {          this.autoCreateColumns = conf.getBooleanProperty("datanucleus.autoCreateColumns");          this.autoCreateTables = conf.getBooleanProperty("datanucleus.autoCreateTables");          this.autoCreateConstraints = conf.getBooleanProperty("datanucleus.autoCreateConstraints");        }    }    看來關鍵是 this.readOnlyDatastore        this.fixedDatastore 這2個欄位   而且autoCreateSchema 這個設定為true 就可以決定了其他的設定,所以其他設定在此都無效了   繼續追蹤org.datanucleus.store.AbstractStoreManager 發現了這2個欄位的設定程式碼   this.readOnlyDatastore = conf.getBooleanProperty("datanucleus.readOnlyDatastore");   this.fixedDatastore = conf.getBooleanProperty("datanucleus.fixedDatastore");   修改的配置的內容如下     <property>         <name>datanucleus.readOnlyDatastore</name>         <value>false</value>     </property>     <property>          <name>datanucleus.fixedDatastore</name>         <value>false</value>      </property>     <property>          <name>datanucleus.autoCreateSchema</name>          <value>true</value>      </property>     <property>         <name>datanucleus.autoCreateTables</name>         <value>true</value>     </property>     <property>         <name>datanucleus.autoCreateColumns</name>         <value>true</value>     </property> 問題2: 15/02/04 09:21:14 WARN conf.HiveConf: DEPRECATED: Configuration property hive.metastore.local no longer has any effect. Make sure to provide a valid value for hive.metastore.uris if you are connecting to a remote metastore. 15/02/04 09:21:14 WARN conf.HiveConf: HiveConf of name hive.metastore.local does not exist Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-0.14.0.jar!/hive-log4j.properties Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x         at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)         at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:672)         at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:616)         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)         at java.lang.reflect.Method.invoke(Method.java:597)         at org.apache.hadoop.util.RunJar.main(RunJar.java:160) Caused by: java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x         at org.apache.hadoop.hive.ql.session.SessionState.createRootHDFSDir(SessionState.java:529)         at org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:478)         at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:430)         ... 7 more 解決方法: [[email protected] ~]# hadoop fs -chmod -R 777 /tmp/hive [[email protected] ~]# hadoop fs -ls /tmp Found 1 items drwxrwxrwx   - root supergroup          0 2015-02-04 08:48 /tmp/hive 問題3: 15/02/04 09:33:13 WARN conf.HiveConf: DEPRECATED: Configuration property hive.metastore.local no longer has any effect. Make sure to provide a valid value for hive.metastore.uris if you are connecting to a remote metastore. 15/02/04 09:33:13 WARN conf.HiveConf: HiveConf of name hive.metastore.local does not exist Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-0.14.0.jar!/hive-log4j.properties Exception in thread "main" java.lang.RuntimeException: java.net.ConnectException: Call to hadoop/192.168.52.139:9000 failed on connection exception: java.net.ConnectException: Connection refused         at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)         at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:672)         at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:616)         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)         at java.lang.reflect.Method.invoke(Method.java:597)         at org.apache.hadoop.util.RunJar.main(RunJar.java:160) Caused by: java.net.ConnectException: Call to hadoop/192.168.52.139:9000 failed on connection exception: java.net.ConnectException: Connection refused 解決方法: 此問題是因為 hadoop沒有啟動,啟動hadoop後問題解決 問題4: [
[email protected]
~]# hive 15/02/04 09:38:06 WARN conf.HiveConf: DEPRECATED: Configuration property hive.metastore.local no longer has any effect. Make sure to provide a valid value for hive.metastore.uris if you are connecting to a remote metastore. 15/02/04 09:38:06 WARN conf.HiveConf: HiveConf of name hive.metastore.local does not exist Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-0.14.0.jar!/hive-log4j.properties hive> 解決方法: 在0.10  0.11或者之後的HIVE版本 hive.metastore.local 屬性不再使用。 在配置檔案裡面:  <property>  <name>hive.metastore.local</name>   <value>false</value>   <description>controls whether to connect to remove metastore server or open a new metastore server in Hive Client JVM</description> </property> 刪除掉,再次登入警告就消失了 問題5: Exception in thread "main" java.lang.RuntimeException: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

        at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:672)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:616)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:160)
Caused by: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
        at org.apache.hadoop.fs.Path.initialize(Path.java:148)
        at org.apache.hadoop.fs.Path.<init>(Path.java:126)
        at org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:487)
        at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:430)
        ... 7 more
Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
        at java.net.URI.checkPath(URI.java:1804)
        at java.net.URI.<init>(URI.java:752)
        at org.apache.hadoop.fs.Path.initialize(Path.java:145)
        ... 10 more
解決方法:
在配置檔案hive-site.xml裡找"system:java.io.tmpdir"把他們都換成絕對路徑如:/home/grid/apache-hive-0.14.0-bin/iotmp
hive-site.xml 完整的內容如下: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration>     <property>          <name>javax.jdo.option.ConnectionURL</name>          <value>jdbc:mysql://192.168.52.139:3306/hive?createDatabaseIfNotExsit=true;characterEncoding=UTF-8</value>      </property>      <property>          <name>javax.jdo.option.ConnectionDriverName</name>          <value>com.mysql.jdbc.Driver</value>     </property>     <property>         <name>javax.jdo.option.ConnectionUserName</name>         <value>hive</value>     </property>     <property>          <name>javax.jdo.option.ConnectionPassword</name>          <value>hive</value>      </property>      <property>         <name>datanucleus.readOnlyDatastore</name>         <value>false</value>     </property>     <property>          <name>datanucleus.fixedDatastore</name>         <value>false</value>      </property>     <property>          <name>datanucleus.autoCreateSchema</name>          <value>true</value>      </property>     <property>         <name>datanucleus.autoCreateTables</name>         <value>true</value>     </property>     <property>         <name>datanucleus.autoCreateColumns</name>         <value>true</value>     </property> </configuration>

相關推薦

hive 啟動問題記錄 解決方法

問題1: Caused by: javax.jdo.JDODataStoreException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires thi

python 使用中遇到的問題,記錄解決方法

ref source ror 遇到的問題 per with open 解決方法 sip oba 1、讀取configparser 配置文件報錯 : 提示: ConfigParser.MissingSectionHeaderError when parsing rsyn

python 使用中遇到的問題,記錄解決方法

1、讀取configparser 配置檔案報錯   : 提示:  ConfigParser.MissingSectionHeaderError when parsing rsyncd config file with global options 解決方法: https://sta

Hive常見問題解決方法

在啟動hive時,可能會遇到以下異常: java.sql.SQLException: Column name pattern can not be NULL or empty. 錯誤產生的原因是因為使用了高版本的mysql驅動,當然你可以使用較低版本的mysql驅動,網上很

【Vue學習筆記】問題解決方法記錄

chart 管理 父頁面 路徑 面繪制 event for 直接 art 1、父組件傳遞 props 到子組件過程中,報錯或者沒有值。 參考鏈接:http://www.jb51.net/article/117447.htm 2、vue工程項目中style設置ba

啟動httpd服務失敗解決方法

httpd服務啟動失敗剛剛安裝完php7(已經安裝有php5,兩個版本同在)想執行apachectl graceful的時候,利用-t檢查配置,發現以下報錯。[root@AliKvn ~]# /usr/local/apache2.4/bin/apachectl start/usr/local/apache2.

服務器啟動的原因解決方法

服務器 服務器故障 一:服務器無法啟動的主要原因 : ①市電或電源線故障(斷電或接觸不良) ②電源或電源模組故障 ③內存故障(一般伴有報警聲) ④CPU故障(一般也會有報警聲) ⑤主板故障 ⑥其它插卡造成中斷沖突二、服務器無法啟動 1、檢查電源線和各種I/O接線是否連接正常。2、檢查連接

jmeter+ant+Jenkins 報錯解決方法記錄

解決方法 nbsp efs plane csv def orm put erp 1.Ant將Jmeter的jtl文件轉為html文件報“前言中不允許有內容” 在JMeter的bin目錄中找到jmeter.properties; 將文件中#jmeter.save.savese

Hive 載入HDFS資料建表, 掛載分割槽遇到問題解決方法

1.建立臨時表: CREATE EXTERNAL TABLE IF NOT EXISTS tmp.tmp_tb_jinritoutiao_log ( content string COMMENT 'json內容格式' ) COMMENT '今日頭條視訊內容' PARTITIONED

學習《Django By Example》的錯誤解決方法(個人學習記錄

使用的環境:pycharm2018.1+Django2.1 第一章: 1.錯誤:author = models.ForeignKey(User, related_name='blog_posts') TypeError: __init__() missing 1 required posit

無法啟動MYSQL服務,發生系統錯誤1067,程序意外中止原因解決方法

本人的另外一篇部落格有定位啟動失敗原因的方法,在此基礎上檢視啟動失敗的原因。 https://blog.csdn.net/a1257427517/article/details/84927457 通過檢視日誌,發現 unknown variable 'innodb_checksum

SpringBoot專案打成war包在tomcat中啟動兩次原因解決方法

筆者新建了一個QQ群:571278542 。歡迎大家加入! tomcat重啟兩次的原因是appBase和Context中docBase設定的值導致的,只需要把appBase置為空,docBase寫專案的

ubuntu docker啟動jupyter問題解決方法

1 問題: [email protected]:/home/oo# sudo nvidia-docker run -it -p 8888:8888 tensorflow/tensorflow:latest-gpu docker: Error response f

Tomcat啟動一閃而過就消失的原因解決方法

引言:Tomcat啟動一閃而過怎麼辦? 這成為了許多剛接觸tomcat開發環境工作者的一個大問題,許多使用者朋友都不知道是因為什麼問題導致出現這種情況,下面就一起來了解一下吧。 原因一:  (1)首先要搞明白啟動不起來的原因。方法是在命令列下,執行startup.bat檔案,這

mysql 不能啟動的兩種錯誤提示解決方法

在linux系統中安裝mysql伺服器詳細步驟並解決ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passw 1. 提示 /tmp/mysql.sock 丟失 service mys

安裝SQL2005出現伺服器啟動失敗或者安裝後啟動伺服器失敗的原因解決方法

紀念一下,本人在社群的第一篇部落格,在經歷了兩天無數重複的解答和失敗的嘗試後,終於找到了解決辦法,希望可以幫到其他人,同時表達一下對各社群翻來覆去的無用解答的憤慨。具體安裝過程可以參考郝斌老師的教程。點選開啟連結下面我分享一下我所經歷的失敗:安裝過程中的錯誤:1.安裝SQL時

HBase啟動時IP地址解析不正確的問題解決方法

HBase啟動時遇到IP地址解析不正確,連不上Regionserver , 配置檔案上寫的 192.168.100.28, 錯誤資訊  Problem binding to /202.102.110.204:60020 : Cannot assign requested address 。 配置的地

Redis啟動失敗的原因解決方法

跑了近半年的Redis,今天早上來開啟電腦執行程式的時候發現提示無法連線redis,暗想自己明明設定了開機自啟的阿,以前也一直沒問提,今天怎麼就連不上了?重啟了下redis就提示如下錯誤網上搜了好久都沒找到解決辦法,後來想起來去查看了下redis的日誌檔案發現提示當前版本的r

啟動pip時,< Fatal error in launcher: Unable to create process using '"' >問題的原因解決方法

create 文件 希望 launch erro alt http 我希望 們的 根本原因 要啟動的pip程序,中指定的python程序路徑不對 實例分析 我的window電腦上同時安裝了python2.7和python3.6,他們的安裝路徑如下圖: 註意圖pytho

安裝hadoop和hive時候遇到的問題解決方法

#----------------------------------------------------------------- # 安裝JDK 1. 檢視並解除安裝Linux自帶的JDK 安裝好的CentOS會自帶OpenJdk,用命令 java -version ,