如何设置beeline以在连接字符串中使用变量

r7xajy2e  于 2021-06-24  发布在  Hive
关注(0)|答案(1)|浏览(378)

目前在我们的开发环境中,我们已经将直线连接字符串硬编码为

beeline -u 'jdbc:hive2://zk0-hi-clu.3qy32mhqlj1ubaea5iyw5joamf.ax.internal.cloudapp.net:2181,zk1-hi-clu.3qy32mhqlj1ubaea5iyw5joamf.ax.internal.cloudapp.net:2181,zk6-hi-clu.3qy32mhqlj1ubaea5iyw5joamf.ax.internal.cloudapp.net:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2' --hivevar date=20190101 -f test.hql

我想看看是否有办法使connect动态,就像它会查找odbc.ini这样的配置文件一样。因此,当我们将代码升级到其他环境时,它将自动连接到正确的目标。这可能吗?

ia2d9nvy

ia2d9nvy1#

不完全是您的情况:我需要在shell中使用一些默认值并使用 alias 的功能 bash .

export BEELINE_CONNECTION_STRING='jdbc:hive2://myzookeeper1:2181,myzookeeper2:2181,myzookeeper3:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;'
alias beeline='beeline -u ${BEELINE_CONNECTION_STRING}'

在这个输入之后 beeline 原因如下:
直线连接到jdbc:hive2://myzookeeper1:2181,myzookeeper2:2181,myzookeeper3:2181/;servicediscoverymode=Zookeeper;zookeepernamespace=hiveserver2;连接到:apache hive(版本1.2.1000.2.6.5.0-292)驱动程序:hive jdbc(版本1.2.1000.2.6.5.0-292)事务隔离:事务\u可重复\u读取直线版本1.2.1000.2.6.5.0-292由apache hive 0:jdbc:hive2://myhive>

相关问题