在Ubuntu上使用Go语言(Golang)连接数据库,通常需要遵循以下步骤:
sudo apt update
sudo apt install mysql-server
对于PostgreSQL,可以使用:
sudo apt update
sudo apt install postgresql postgresql-contrib
go-sql-driver/mysql:go get -u github.com/go-sql-driver/mysql
lib/pq:go get -u github.com/lib/pq
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func main() {
// 数据库连接字符串
dsn := "username:password@tcp(localhost:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local"
// 打开数据库连接
db, err := sql.Open("mysql", dsn)
if err != nil {
panic(err.Error())
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
panic(err.Error())
}
fmt.Println("成功连接到MySQL数据库!")
}
package main
import (
"database/sql"
"fmt"
_ "github.com/lib/pq"
)
func main() {
// 数据库连接字符串
connStr := "user=username dbname=dbname password=password sslmode=disable"
// 打开数据库连接
db, err := sql.Open("postgres", connStr)
if err != nil {
panic(err.Error())
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
panic(err.Error())
}
fmt.Println("成功连接到PostgreSQL数据库!")
}
请确保将上述代码中的username、password、localhost、3306(MySQL的默认端口)、dbname等占位符替换为你的实际数据库凭据和配置。
.go文件中,例如main.go,然后在终端中运行它:go run main.go
如果一切设置正确,你应该能够看到连接成功的消息。
请注意,这些步骤假设你已经有了基本的Go语言知识,并且你的Ubuntu系统已经配置好了网络和防火墙规则,允许Go程序连接到数据库服务器。如果你的数据库服务器运行在远程主机上,你需要将localhost替换为远程主机的IP地址或域名,并确保相应的端口是开放的。