[HADOOP] 하이브 : 기존 하이브 데이터베이스의 이름을 바꿀 수 있습니까?
HADOOP하이브 : 기존 하이브 데이터베이스의 이름을 바꿀 수 있습니까?
비슷한 요구 사항이 https://issues.apache.org/jira/browse/HIVE-4847에있는 것으로 보입니다.
그러나 문제의 설명에서 제안 된 구문 - 'ALTER DATABASE dbname RENAME to newdbname'을 시도하면 다음과 같은 오류가 발생합니다.
ALTER DATABASE testdb RENAME TO testdb1;
NoViableAltException(26@[])
at org.apache.hadoop.hive.ql.parse.HiveParser.alterDatabaseStatementSuffix(HiveParser.java:7881)
at org.apache.hadoop.hive.ql.parse.HiveParser.alterStatement(HiveParser.java:6588)
at org.apache.hadoop.hive.ql.parse.HiveParser.ddlStatement(HiveParser.java:2183)
at org.apache.hadoop.hive.ql.parse.HiveParser.execStatement(HiveParser.java:1392)
at org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1030)
at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:199)
at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:166)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:414)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:332)
at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:988)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1053)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:924)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:914)
at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:269)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:221)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:431)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:367)
at org.apache.hadoop.hive.cli.CliDriver.processReader(CliDriver.java:464)
at org.apache.hadoop.hive.cli.CliDriver.processFile(CliDriver.java:474)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:756)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:694)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:633)
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:212)
FAILED: ParseException line 3:15 cannot recognize input near 'testdb' 'RENAME' 'TO' in alter database statement
해결법
-
==============================
1.현재 Apache 하이브 릴리스는이 기능을 지원하지 않습니다. 이 아파치 Hive Jira HIVE-4847에서는 이것이 새로운 기능이며 패치를 사용할 수 있지만 아직 특정 릴리스에 병합되고 태그가 지정되지 않았 음을 알 수 있습니다. 이 기능은 이후 릴리스에서 기대할 수 있습니다.
현재 Apache 하이브 릴리스는이 기능을 지원하지 않습니다. 이 아파치 Hive Jira HIVE-4847에서는 이것이 새로운 기능이며 패치를 사용할 수 있지만 아직 특정 릴리스에 병합되고 태그가 지정되지 않았 음을 알 수 있습니다. 이 기능은 이후 릴리스에서 기대할 수 있습니다.
from https://stackoverflow.com/questions/29481237/hive-is-it-possible-to-rename-an-existing-hive-database by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] hadoop의 데이터 노드가 시작되지 않습니다. (0) | 2019.08.04 |
---|---|
[HADOOP] Hadoop - java.net.ConnectException : 연결이 거부되었습니다. (0) | 2019.08.04 |
[HADOOP] Spark fillNa가 null 값을 대체하지 않습니다. (0) | 2019.08.04 |
[HADOOP] Hadoop MapReduce log4j - userlogs / job_ dir의 사용자 정의 파일에 메시지를 기록 하시겠습니까? (0) | 2019.08.04 |
[HADOOP] classpath를 설정 한 후에 org.apache.hadoop.conf 패키지가 존재하지 않습니다. (0) | 2019.08.04 |