CentOS 上用 Golang 连接 MySQL 与 PostgreSQL:安装、示例与排查
时间:2026-08-23 | 作者:半糖攻略君 | 阅读:0在CentOS上搞定Golang的数据库连接,其实跟其他Linux发行版没什么两样,流程几乎是通用的。下面直接上干货,分别演示MySQL和PostgreSQL的接入方式,代码和步骤都贴出来了,照着走就行。
- 安装Golang
如果还没装Golang,先搞定它。用下面的命令下载并解压到/usr/local,再配一下环境变量。注意版本号可以根据需要调整,但别用太老的。
wget https://golang.org/dl/go1.16.5.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz
echo "export PATH=$PATH:/usr/local/go/bin" >> ~/.bashrc
source ~/.bashrc
装完跑一下go version确认,OK就继续。
- 安装数据库驱动
MySQL用go-sql-driver/mysql,PostgreSQL用pq。直接go get搞定,简单粗暴:
go get -u github.com/go-sql-driver/mysql
go get -u github.com/lib/pq
这里注意,如果网络环境不好,可能需要设置袋里,但这是另一个话题了。
- 编写Golang代码连接数据库
创建一个main.go文件,把下面的代码贴进去。先看MySQL的:
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func main() {
dsn := "username:password@tcp(localhost:3306)/dbnamecharset=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 MySQL!")
}
再来看PostgreSQL的:
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)
}
defer db.Close()
err = db.Ping()
if err != nil {
panic(err)
}
fmt.Println("Connected to PostgreSQL!")
}
关键提醒:代码里的username、password、localhost、端口号(MySQL默认3306,PostgreSQL默认5432)、数据库名,统统替换成你自己的实际配置。另外,PostgreSQL的连接字符串里sslmode=disable适用于开发环境,生产环境建议用require或verify-full。
- 运行程序
终端里进入main.go所在目录,直接跑:
go run main.go
如果一切顺利,你会看到类似这样的输出:
Connected to MySQL!
或者
Connected to PostgreSQL!
这就意味着CentOS上的Golang已经成功连上了数据库。整个过程没什么坑,只要驱动装对、连接串写对,基本一次过。如果遇到问题,先检查数据库服务是否启动、端口是否开放、防火墙有没有拦截,这些都比代码本身更容易出问题。
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- Golang 在 CentOS 上怎么配置数据库连接:MySQL 与 PostgreSQL 实战说明
- 时间:2026-08-25
-
- CentOS 上 Python 版本怎么选:先保系统,再看项目与稳定性
- 时间:2026-08-25
-
- CentOS 下如何配置 Golang 并发模型
- 时间:2026-08-25
-
- CentOS 上安装 Python 需要哪些依赖?从基础环境到编译与项目隔离一次讲清
- 时间:2026-08-25
-
- CentOS 系统部署 Golang 应用,安全配置该从哪些环节下手
- 时间:2026-08-25
-
- Golang 在 CentOS 上如何搭建调试环境
- 时间:2026-08-25
-
- CentOS 下如何调试运行 Python 脚本:从 print 到 pdb 的实用选择
- 时间:2026-08-25
-
- CentOS 中 Golang 依赖库怎么安装
- 时间:2026-08-25
精选合集
更多大家都在玩
大家都在看
更多-
- 2026年9月17日小鸡庄园答案
- 时间:2026-09-16
-
- 蚂蚁庄园今日答案2026年9月17日
- 时间:2026-09-16
-
- 蚂蚁庄园小课堂今日最新答案2026年9月17日
- 时间:2026-09-16
-
- 蚂蚁庄园小鸡答题今日答案2026年9月17日
- 时间:2026-09-16
-
- 褪黑素主要由人体哪个器官分泌 蚂蚁庄园今日答案9.17
- 时间:2026-09-16
-
- 蚂蚁庄园今天答题答案2026年9月17日
- 时间:2026-09-16
-
- 蚂蚁庄园答题今日答案2026年9月17日
- 时间:2026-09-16
-
- 研学旅游指导师的核心服务对象是 蚂蚁新村今日答案2026.9.16
- 时间:2026-09-16
