go - 如何在 Hana DB 上连接 SSL - SAP [SQL 错误 4321 - 只允许安全连接]
问题描述
按照链接SAP - Go (golang) Support a 制作了以下代码:
package main
import (
"database/sql"
_ "github.com/SAP/go-hdb/driver"
"log"
)
const (
driverName = "hdb"
hdbDsn = "hdb://user:password@hostname:port"
)
func main() {
db, err := sql.Open(driverName, hdbDsn)
if err != nil {
log.Print("error on sql open => " ,err)
}
err = db.Ping()
if err != nil {
log.Print("error on db.Ping() => " ,err)
}
}
但我有以下问题:
2019/11/04 14:59:24 error on db.Ping() => SQL Error 4321 - only secure connections are allowed
我,也试过这个:
hdbDsn = "hdb://user:password@hostname:port?encrypt=true"
但无法连接到 Hana 数据库。
有人可以帮助我吗?
解决方案
纯 Go HANA SQL 客户端库很可能不支持加密(类似于纯 Python 客户端)。您应该使用官方 HANA go 客户端(https://help.sap.com/viewer/0eec0d68141541d1b07893a39944924e/2.0.04/en-US/0ffbe86c9d9f44338441829c6bee15e6.html)并设置连接属性:
- 加密=真
- 验证证书=假
推荐阅读
- php - 如果 foreach 中的语句只检查最后一个值
- c# - UWP:不要缩放滚动查看器内媒体播放器元素的媒体传输控件
- javascript - JS 没有响应更新的 txt 文件
- java - 试图解压缩 BC1 纹理压缩的加扰块
- reactjs - 棱镜与 Gatsby 的集成导致构建中未定义窗口
- c++ - 用 C++ 中的模板方法覆盖类方法
- python - 运行在 ELF 程序上暴力破解大量数字的 python 脚本
- python - 根据值将一个数据帧拆分为具有相同列标题的多个数据帧
- react-native - 运行 expo start 命令后出现无效的正则表达式错误
- python - 创建和安装自定义本地 Anaconda 包时解决依赖关系