go-sql-driver / mysql

Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package
https://pkg.go.dev/github.com/go-sql-driver/mysql
Mozilla Public License 2.0
14.45k stars 2.3k forks source link

Why must use port 3306? #1573

Closed StLeoX closed 5 months ago

StLeoX commented 5 months ago

version: mysql@1.8.0

According to https://github.com/go-sql-driver/mysql/issues/1004, port except 3306 should be allowed.

But code on /root/go/pkg/mod/github.com/go-sql-driver/mysql@v1.8.0/dsn.go:647

func ensureHavePort(addr string) string {
    if _, _, err := net.SplitHostPort(addr); err != nil {
        return net.JoinHostPort(addr, "3306")
    }
    return addr
}

Check and forbid non-3306 ports.