ITPub博客

首页 > 数据库 > 国内数据库 > golang连接sm3认证加密

golang连接sm3认证加密

原创 国内数据库 作者:瀚高PG实验室 时间:2022-05-06 13:52:25 0 删除 编辑

瀚高数据库
目录
环境
文档用途
详细信息

环境
系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:4.5
文档用途
golang连接安全版sm3认证加密数据库,驱动程序详见附件。

详细信息
1.下载Linux golang安装包 go1.17.3.linux-amd64.tar.gz(详见support技术支持平台附件https://support.highgo.com/#/index/docContentHighgo/22565fef021b3e0c)
1.1. 解压安装包

tar xvf go1.17.3.linux-amd64.tar.gz -C /opt/apps/go

1.2. 创建路径

mkdir /opt/dev/go -p

1.3. 添加环境变量

vim ~/.bashrcexport GOROOT=/opt/apps/goexport PATH=$PATH:/opt/apps/go/binexport GOPATH=/opt/dev/gosource  ~/.bashrc

2.将解压后的pq目录放到如下路径

mkdir /opt/dev/go/src/github.com/lib/pq

3.测试:将如下代码保存为go文件执行

package mainimport (
    "database/sql"
    "fmt"
    _ "github.com/lib/pq")const (
    host     = "192.168.21.138"
    port     = 5871
    user     = "test"
    password = "hg123456"
    dbname   = "test")func connectDB() *sql.DB{
    psqlInfo := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s sslmode=disable",host, port, user, password, dbname)
    db, err := sql.Open("postgres", psqlInfo)
    if err != nil {
        panic(err)
    }
    err = db.Ping()
    if err != nil {
        panic(err)
    }
    fmt.Println("Successfully connected!")
    return db}func query(db *sql.DB){
    var name string
    rows,err:=db.Query("select '数据库版本:['||version()||']' as name")
    if err!= nil{
        fmt.Println(err)
    }
    defer rows.Close()
    for rows.Next(){
        err:= rows.Scan(&name)
        if err!= nil{
            fmt.Println(err)
        }
    }
    err = rows.Err()
    if err!= nil{
        fmt.Println(err)
    }
    fmt.Println(name)}func main()  {
    db:=connectDB()
    query(db)}

4.运行结果


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69994931/viewspace-2892482/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 全角转半角函数
请登录后发表评论 登录
全部评论
瀚高PG实验室(Highgo PG Lab)依托于瀚高DBA运维团队及瀚高数据库PG内核研发团队,旨在深入研究PostgreSQL技术、使用技巧、内核探秘、PG教学等,并进行分享。欢迎大家关注、交流。

注册时间:2021-02-18

  • 博文量
    184
  • 访问量
    126090