草庐IT

database-replication

全部标签

database - 支持 Go 的 NoSQL 数据库列表

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion是否有Go支持的NoSQL数据库驱动列表?我只找到了SQL数据库的列表:https://code.google.com/p/go-wiki/wiki/SQLDrivers

sql - 有没有办法在 golang 中使用 package database/sql 获取列的类型?

基本上,在事先不知道查询的结果结构可能是什么的情况下,我想查询数据库,并返回这样的结构(json-y)//Rows[//Row1[{ColumnName:"id",Value:1,Type:int},{ColumnName:"name",Value:"batman",Type:string},...],//Row2[{ColumnName:"id",Value:2,Type:int},{ColumnName:"name",Value:"superman",Type:string},...]]有没有办法在golang中使用包database/sql获取列的类型?我怀疑我想做的是将inte

sql - 有没有办法在 golang 中使用 package database/sql 获取列的类型?

基本上,在事先不知道查询的结果结构可能是什么的情况下,我想查询数据库,并返回这样的结构(json-y)//Rows[//Row1[{ColumnName:"id",Value:1,Type:int},{ColumnName:"name",Value:"batman",Type:string},...],//Row2[{ColumnName:"id",Value:2,Type:int},{ColumnName:"name",Value:"superman",Type:string},...]]有没有办法在golang中使用包database/sql获取列的类型?我怀疑我想做的是将inte

database - 用golang动态查询mongodb

我正在尝试使用golang(和mgo库)查询我的mongodb数据库,只有一个函数,我目前使用的方法是:er=c.Find(sel(items)).Sort("-createdAt").All(&result)其中items是一个映射,键是我在数据库中搜索的字段名称,值是我要搜索的内容。和sel()是:funcsel(querymap[string]string)bson.M{result:=make(bson.M,len(query))result[]="$in"fork,v:=rangequery{result[k]=v}returnresult目前它将返回所有结果,其中至少有一个

database - 用golang动态查询mongodb

我正在尝试使用golang(和mgo库)查询我的mongodb数据库,只有一个函数,我目前使用的方法是:er=c.Find(sel(items)).Sort("-createdAt").All(&result)其中items是一个映射,键是我在数据库中搜索的字段名称,值是我要搜索的内容。和sel()是:funcsel(querymap[string]string)bson.M{result:=make(bson.M,len(query))result[]="$in"fork,v:=rangequery{result[k]=v}returnresult目前它将返回所有结果,其中至少有一个

database - 在 Go 中模拟数据库/sql 结构

在测试数据库方法时,我在database/sql包上创建了一个最小包装器,以允许我针对接口(interface)进行测试,而不是设置具体类的困难(如果不是不可能的话)。但是,当我尝试模拟sql.Stmt时出现以下错误:cannotuse*sql.StmtastypeIStmtinreturnargument:*sql.StmtdoesnotimplementIStmt(wrongtypeforQuerymethod)haveQuery(...interface{})(*sql.Rows,error)wantQuery(...interface{})(IRows,error)这是我的界面

database - 在 Go 中模拟数据库/sql 结构

在测试数据库方法时,我在database/sql包上创建了一个最小包装器,以允许我针对接口(interface)进行测试,而不是设置具体类的困难(如果不是不可能的话)。但是,当我尝试模拟sql.Stmt时出现以下错误:cannotuse*sql.StmtastypeIStmtinreturnargument:*sql.StmtdoesnotimplementIStmt(wrongtypeforQuerymethod)haveQuery(...interface{})(*sql.Rows,error)wantQuery(...interface{})(IRows,error)这是我的界面

database - 在 Go 中为 SQL 连接设置 TCP 超时

当我使用VPN连接到数据库(使用标准gosql库)并且VPN接口(interface)关闭时,当我尝试执行SQL查询时会有75秒的超时,无论接口(interface)是否同时打开。我想将此超时减少到某个合理的时间,这样我的应用程序就不会在这种情况下被卡住75秒。db,err:=sql.Open(driverName,dataSourceName)是否可以通过db变量以某种方式设置它? 最佳答案 database/sql包没有提供一种通用的方法来使对database/sql.Open的调用超时。但是,个别驱动程序通过DSN(dataS

database - 在 Go 中为 SQL 连接设置 TCP 超时

当我使用VPN连接到数据库(使用标准gosql库)并且VPN接口(interface)关闭时,当我尝试执行SQL查询时会有75秒的超时,无论接口(interface)是否同时打开。我想将此超时减少到某个合理的时间,这样我的应用程序就不会在这种情况下被卡住75秒。db,err:=sql.Open(driverName,dataSourceName)是否可以通过db变量以某种方式设置它? 最佳答案 database/sql包没有提供一种通用的方法来使对database/sql.Open的调用超时。但是,个别驱动程序通过DSN(dataS

postgresql - 如何安全地丢弃 golang 数据库/sql 池连接,例如当它们指向只读副本时?

我们一直在将golang的database/sql和github.com/lib/pq与PostgreSQL集群一起使用,这意味着某个作为复制主服务器的数据库服务器可能在前一个主人失败后成为只读副本。最近,我们的低使用率服务设法在其连接池中保留一个连接(没有会打开第二个连接的并发请求),并且其目标已降级为只读副本。结果,对服务的每个写入操作都失败,直到它重新启动。如果与集群建立了新连接,就不会发生这种情况。问题是我找不到在某些类型的错误上丢弃连接的记录方式。database/sql中唯一听起来正确的公共(public)方法是Conn.Close,它将连接返回到池而不关闭它。不调用它会导