微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

golang连接开启kerberos的phoenix query server服务端

phoenix query server

其他语言可以连接phoenix 可以通过 phoenix query server 连接

calcite-avatica-go

  • 新建项目Phoenix-Golang项目
  • go.mod
module Phoenix-Golang
go 1.15
require github.com/apache/calcite-avatica-go/v5 v5.0.0 // indirect
  • example
package main

import (
	"database/sql"
	"fmt"
)
import _ "github.com/apache/calcite-avatica-go/v5"

func main() {
	db, _ := sql.Open("avatica", "http://xxx:8765/SYstem"+
		"?authentication=SPNEGO"+
		"&krb5Conf=/etc/krb5.conf"+
		"&serialization=PROTOBUF"+
		"&principal=xx/xx@HADOOP.COM"+
		"&keytab=/Users/xx/keytab/xx.keytab")
	rows, err := db.Query("SELECT TABLE_SCHEM,TABLE_NAME FROM CATALOG")
	if err != nil {
		panic(err)
	}
	defer rows.Close()

	var (
		TABLE_SCHEM  string
		TABLE_NAME string
	)

	for rows.Next() {

		err := rows.Scan(&TABLE_SCHEM, &TABLE_NAME)
		if err != nil {
			errors := fmt.Sprintln("err: ", err)
			print(errors)
		}

		result := fmt.Sprintln("result: ", TABLE_SCHEM, TABLE_NAME)
		print(result)
	}
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐