发布于2026-07-16 阅读(0)
扫一扫,手机访问
在CentOS上配置Golang的数据库连接,其实比想象中要简单不少。只要把Go环境搭好、数据库驱动装对、再写几行连接代码,基本就能跑通。下面直接进入正题。

如果机器上还没有Go,先到官网下载对应的Linux版本。推荐直接从 https://golang.org/dl/ 获取,选择适合CentOS的tar包,解压到 /usr/local 并配置环境变量就行。具体安装步骤这里不展开,网上教程很多,确保 go version 能正常输出即可。
Go语言本身不直接提供数据库驱动,需要根据你用的数据库类型去安装对应的第三方驱动。以最常见的MySQL为例,一行命令搞定:
go get -u github.com/go-sql-driver/mysql
如果是PostgreSQL、MongoDB或SQLite,也有对应的驱动(比如 lib/pq、mongo-driver 等),安装方式类似。这些驱动会在你的Go模块中自动注册,后面直接 import 进来就能用。
新建一个 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 database!")
}
这里有几处小提醒:_ 导入驱动是为了让驱动的初始化函数自动执行;defer db.Close() 确保函数退出时关闭连接,这是好习惯。另外,连接串中的 charset=utf8mb4 和 parseTime=True 是比较实用的选项,前者支持完整的UTF-8字符集,后者让Go自动把数据库的日期时间类型映射为 time.Time。
在终端里切换到 main.go 所在目录,执行:
go run main.go
如果一切正常,控制台会输出 Connected to the database!。如果出现错误,多半是连接串写错了、数据库没启动、端口没开或者防火墙拦截——逐一排查即可。
最后提一句:生产环境中千万别把数据库密码直接写在代码里,这属于基本的安全意识。推荐用环境变量或配置文件(比如 config.yaml)来管理连接信息,这样既方便切换环境,也避免代码仓库里泄露敏感数据。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8