从Go连接PostgreSQL时出现“SSL is not enabled on the server”错误
大家好!我是Go新手,尝试连接运行在云服务器上的PostgreSQL。我使用`lib/pq`驱动。服务器要求SSL连接,但我无法配置它。
这是我的代码:
```go
package main
import (
"database/sql"
"fmt"
_ "github.com/lib/pq"
)
func main() {
connStr := "host=mycloudserver.com port=5432 user=myuser password=mypass dbname=mydb sslmode=disable"
db, err := sql.Open("postgres", connStr)
if err != nil {
panic(err)
}
defer db.Close()
err = db.Ping()
if err != nil {
fmt.Println("连接错误:", err)
} else {
fmt.Println("连接成功!")
}
}
```
运行时出现错误:`pq: SSL is not enabled on the server`。我明白问题出在`sslmode=disable`,但当我改为`sslmode=require`或`sslmode=verify-full`时,程序又出现其他错误:`pq: SSL is not supported`或`tls: first record does not look like a T