为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决“无效的数据包大小,它比标头大小短”错误

如何解决“无效的数据包大小,它比标头大小短”错误

Go
海绵宝宝撒 2023-03-15 13:52:04
我正在尝试连接到我的数据库。但出现以下错误:2022/11/10 13:30:43 invalid packet size, it is shorter than header size我的代码:var server = "123.45.67.89"var port = 3030var user = "myUserId"var password = "MyPassword"var database = "myDB"func main() {    // Build connection string    connString := fmt.Sprintf("server=%s;user id=%s;password=%s;port=%d;database=%s;",        server, user, password, port, database)    var err error    // Create connection pool    db, err = sql.Open("sqlserver", connString)    if err != nil {        log.Fatal("Error creating connection pool: ", err.Error())    }    ctx := context.Background()    err = db.PingContext(ctx)    if err != nil {        fmt.Println("Catching ERR")        log.Fatal(err.Error())    }    fmt.Printf("Connected!\n")}在以下这一行中,它发现了一个错误:err = db.PingContext(ctx)有人知道吗,我该如何解决这个问题?请帮忙。
查看完整描述

1 回答

?
森栏

TA贡献1810条经验 获得超5个赞

我尝试了另一种连接数据库的方法。它对我有用。


package main


import (

    "database/sql"

    "fmt"


    _ "github.com/go-sql-driver/mysql"

)


func main() {


    fmt.Println("Golang: My Sql Connection Code:")


    db, err := sql.Open("mysql", "userName:password@tcp(123.45.67.89:3030)/myDB")

    if err != nil {

        panic(err.Error())

    }


    defer db.Close()


    fmt.Println("Connection Successful")


    data, err := db.Query("select * from my_user_table")


    if err != nil {

        panic(err.Error())

    }

}


查看完整回答
反对 回复 2023-03-15
  • 1 回答
  • 0 关注
  • 138 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信