用于只读副本的 golang sql 包

Vis*_*h K 5 mysql go database-replication

我们正在将原型服务转移到生产环境。我没有找到任何在 golang sql 库中进行 mysql 读取复制的最佳库/方法。

我们的Mysql数据库服务运行在AWS RDS上(一主二从)。

需要进行以下操作。

  1. 插入/更新/删除应该转到master
  2. 从任何数据库读取(包括主数据库也可以)

目前我们只有一个数据库连接。

import (
    "database/sql"
    _ "github.com/go-sql-driver/mysql"
)


db, err := sql.Open("mysql", "root:password@tcp(localhost:3306)/test")
Run Code Online (Sandbox Code Playgroud)

我们如何使我们的数据库实例与 golang 中的只读副本一起使用?谢谢。