Golang Go语言如何使用 go-sql-driver 连接到 Aliyun RDS

发布于 1周前 作者 vueper 来自 Go语言

golang 库 go-sql-driver 在使用阿里云的数据库时候无法正常解析地址,xxx.mysql.xxx.aliyun.com 。不知道你们有没有遇到过


Golang Go语言如何使用 go-sql-driver 连接到 Aliyun RDS
8 回复

ip 白名单加了么

更多关于Golang Go语言如何使用 go-sql-driver 连接到 Aliyun RDS的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


rds 开放外网地址,然后添加 0.0.0.0/0 白名单

已解决,不是连接的问题,是我程序的问题有一步初始化,放在了数据库连接函数里面,从数据库里取东西,没取到也不报错我还以为,没连上数据库呢。打上日志才找到问题

这操作太骚了

#4 啥意思?

这不相当于把数据库暴露给外网任意可以连接了吗,不太安全

#6 哈?因为默认就是同一 vpc100%可以访问的,所以我开始猜想 op 想在外网连接 rds ,没开外网地址和白名单

在Golang中使用go-sql-driver/mysql库连接到阿里云RDS(Relational Database Service)是一个常见的操作。以下是具体步骤和示例代码:

  1. 安装依赖: 首先,确保你已经安装了go-sql-driver/mysql驱动。可以通过以下命令安装:

    go get -u github.com/go-sql-driver/mysql
    
  2. 编写代码: 使用database/sql包来管理数据库连接和操作。以下是一个简单的示例代码:

    package main
    
    import (
        "database/sql"
        _ "github.com/go-sql-driver/mysql"
        "log"
    )
    
    func main() {
        dsn := "username:password@tcp(rds-endpoint: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)
        }
    
        log.Println("Successfully connected to Aliyun RDS")
    }
    

    在上面的代码中,将usernamepasswordrds-endpointdbname替换为你的RDS实例的实际值。

  3. 运行代码: 确保你的Golang环境配置正确,然后运行你的程序。如果一切正常,你应该会看到“Successfully connected to Aliyun RDS”的输出。

通过这种方式,你可以轻松地在Go应用中连接到阿里云RDS并进行数据库操作。

回到顶部