Hive 如何在配置单元外壳中运行.sql文件

Hive 如何在配置单元外壳中运行.sql文件,hive,Hive,我试图在配置单元shell中运行.sql文件,如下所示。但是得到下面的错误 hive> hive -f /home/centos/DB2.sql; NoViableAltException(24@[]) at org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1300) at org.apache.hadoop.hive.ql.parse.ParseDriver.pars

我试图在配置单元shell中运行.sql文件,如下所示。但是得到下面的错误

hive> hive -f /home/centos/DB2.sql;
NoViableAltException(24@[])
        at org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1300)
        at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:204)
        at org.apache.hadoop.hive.ql.parse.ParseUtils.parse(ParseUtils.java:77)
        at org.apache.hadoop.hive.ql.parse.ParseUtils.parse(ParseUtils.java:70)
        at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:468)
        at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1316)
        at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1456)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1236)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1226)
        at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:233)
        at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:184)
        at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:403)
        at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:821)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:759)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:686)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
FAILED: ParseException line 1:0 cannot recognize input near 'hive' '-' 'f'

sql文件包含DDL查询。

@anilkumar您应该在命令提示符下执行sql命令,而不是在配置单元提示符下执行。同时,还应移除:;在命令字符串的末尾。只有在hive>提示符下才需要这些提示来建议HQL语句的结束。您的命令不是hql语句,您的hql在sql文件中