在CentOS上使用Golang连接数据库,首先需要确保已经安装了相应的数据库驱动。以下是针对MySQL和PostgreSQL的示例。
在终端中运行以下命令来安装MySQL驱动:
go get -u github.com/go-sql-driver/mysql
创建一个名为main.go
的文件,并添加以下代码:
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)
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
panic(err)
}
fmt.Println("Connected to the MySQL database!")
}
将username
、password
、localhost
、3306
和dbname
替换为实际的数据库连接信息。
在终端中运行以下命令来编译并运行程序:
go run main.go
如果一切正常,您将看到输出“Connected to the MySQL database!”。
对于PostgreSQL,您需要执行以下步骤:
在终端中运行以下命令来安装PostgreSQL驱动:
go get -u github.com/lib/pq
创建一个名为main.go
的文件,并添加以下代码:
package main
import (
"database/sql"
"fmt"
_ "github.com/lib/pq"
)
func main() {
// 数据库连接信息
connStr := "user=username password=password dbname=dbname sslmode=disable host=localhost port=5432"
// 连接到数据库
db, err := sql.Open("postgres", connStr)
if err != nil {
panic(err)
}
defer db.Close()
// 测试数据库连接
err = db.Ping()
if err != nil {
panic(err)
}
fmt.Println("Connected to the PostgreSQL database!")
}
将username
、password
、localhost
、5432
和dbname
替换为实际的数据库连接信息。
在终端中运行以下命令来编译并运行程序:
go run main.go
如果一切正常,您将看到输出“Connected to the PostgreSQL database!”。