在Ubuntu上使用Go语言(Golang)连接数据库,通常需要以下几个步骤:
sudo apt update
sudo apt install mysql-server
对于PostgreSQL,可以使用:
sudo apt update
sudo apt install postgresql postgresql-contrib
go get命令来安装go-sql-driver/mysql:go get -u github.com/go-sql-driver/mysql
对于PostgreSQL,可以安装lib/pq:
go get -u github.com/lib/pq
main.go,并编写代码来连接数据库。以下是连接MySQL和PostgreSQL的示例代码:MySQL 示例:
package main
import (
"database/sql"
"fmt"
"log"
_ "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 {
log.Fatal(err)
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
log.Fatal(err)
}
fmt.Println("成功连接到数据库!")
}
PostgreSQL 示例:
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/lib/pq"
)
func main() {
// 数据库连接字符串
connStr := "user=username dbname=dbname password=password sslmode=disable"
// 打开数据库连接
db, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
log.Fatal(err)
}
fmt.Println("成功连接到数据库!")
}
请将上述代码中的username、password、localhost:3306(MySQL)或user=username dbname=dbname password=password sslmode=disable(PostgreSQL)替换为你的实际数据库用户名、密码和连接信息。
main.go文件的目录,并运行以下命令来执行程序:go run main.go
如果一切设置正确,你应该会看到输出“成功连接到数据库!”,这表明你的Go程序已经成功连接到了数据库。
请注意,这些步骤假设你已经有了一个正在运行的数据库实例,并且你的防火墙和安全组设置允许从你的Go应用程序进行连接。如果你遇到连接问题,请检查数据库服务是否正在运行,以及你的连接字符串是否正确。