Hive建立表格報Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException的錯誤
阿新 • • 發佈:2018-12-21
1.首先保證hive正常配置, 修改$HIVE_HOME/conf/hive-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>root</value> </property> </configuration>
注意:這裡指定的資料庫最好是hive , 不要寫hivedb什麼的,其原因是減少出現錯誤的概率和解決hive相關bug的難度
2. 進入mysql資料庫中刪除hive資料庫,重新建立,這裡是為了避免資料庫編碼出現問題
mysql -u root -p
drop database hive; create database hive; alter database hive character set latin1;
3.重啟hive
hive -hiveconf hive.root.logger=DEBUG,console
4.在hive中建立資料庫,指定資料庫, 建立表
create database test;
use test;
create table a(x int);
最後,終於可以建立資料表了!!!!問題解決!!