草庐IT

$PostgreSQL

全部标签

postgresql - docker postgres pgadmin 本地连​​接

我已经用nginx、php和postgres创建了一个ubuntu镜像。我想将我当前镜像中的postgres数据库与位于我本地计算机上的pgadmin连接起来。我曾尝试使用dockerinspector尝试使用图像ip与我的本地pgadmin建立连接,但没有多大成功。我还尝试在本地配置一些端口以使连接正常工作。 最佳答案 这是一个有效的问题,不知道为什么人们会觉得“似乎无法回答这个问题”。所以,这就是我如何做你想做的事情:从DockerHub拉取postgres镜像dockerpullpostgres:latest使用以下命令运行容

postgresql - 无法连接到 docker 容器内的 postgresql

我正在编写一个go应用程序,它在2个容器中进行了dockerized:db和app。启动容器“docker-composeup”时,我看到消息:dialtcp:lookupdbpgsqlon127.0.0.11:53:nosuchhostDB_ENV_DB=cldbDB_ENV_USER=cldbDB_ENV_PASS=cldbDB_PORT_5432_TCP_ADDR=dbpgsqlDB_PORT_5432_TCP_PORT=5432这是我的docker-compose.ymlversion:'2'services:server:hostname:appimage:golang:1.

postgresql - 如何防止 PostgreSQL JSON/JSONB 字段中的 SQL 注入(inject)?

HowcanIpreventSQLinjectionattacksinGowhileusing"database/sql"?这解决了单值字段问题,因为您可以删除引号,但我无法过滤JSON/JSONB字段,如下所示,因为$1被视为字符串:`SELECT*FROMfooWHEREbar@>'{"baz":"$1"}'`以下是可行的,但它容易出现SQL注入(inject):`SELECT*FROMfooWHEREbar@>'{"baz":"`+"qux"+`"}'`我该如何解决?在@mkopriva的评论后编辑:如何使用jsonb_*函数构建此json[{"foo":$1}]?尝试了以下但没

postgresql - 如何使用 lib/pq 将 hstore 对象插入到 postgres

对于这张表,#\dtableTable"public.table"Column|Type|Collation|Nullable|Default------------+-----------------------------+-----------+----------+--------------------id|uuid||notnull|uuid_generate_v4()my_field|hstore|||Indexes:"table_pkey"PRIMARYKEY,btree(id)如何使用lib/pq更新my_field?我试着跟随,package"main"import

postgresql - 限制 pq 连接 SetMaxOpenConns

我在go中使用pq驱动程序(http://github.com/lib/pq)写入postgres数据库,但是当大量事务同时发生时,驱动程序会出现错误并执行以下操作:pq:sorry,toomanyclientsalready为了防止这种行为,我想使用SetMaxOpenConns(如http://golang.org/pkg/database/sql/中所述),但编译器说:db.SetMaxOpenConnsundefined(type*sql.DBhasnofieldormethodSetMaxOpenConns)我认为sql中的函数也可以在pq中使用,但显然它们不是。我的代码:p

postgresql - Golang lib/pg 无法连接到 postgres

我有这样的代码:packagemainimport("database/sql""fmt""log"_"github.com/lib/pq")funcmain(){db,err:=sql.Open("postgres","user=postgresdbname=vagrantsslmode=disable")iferr!=nil{log.Fatal(err)}rows,err:=db.Query("SELECT3+5")iferr!=nil{log.Fatal(err)}fmt.Println(rows)}结果是:[vagrant@localhostgo-postgres]$gorun

postgresql - 建议的 Golang 架构,用于频繁轮询用户帐户

我正在创建一个小型服务,我经常(每5秒左右)轮询大约100个帐户(在类似Twitter的服务中)以检查新消息,因为该服务尚未提供流式API(就像Twitter实际上所做的那样)。在我的脑海中,我将架构计划为每5秒为每个用户排队一次Ticker。勾号触发后,我对该服务进行API调用,检查他们的消息,然后调用SELECT到我的Postgres数据库以获取特定用户详细信息并检查最新消息的日期,如果有是比UPDATE条目更新的消息并通知用户。重复广告恶心。我在后端事物和架构方面不是很有经验,所以我想确保这不是一个绝对荒谬的设置。对数据库的调用量是否合理?我在滥用goroutines吗?

postgresql - 使用 sql.ErrNoRows 的数据库/sql 中的示例崩溃并烧毁

我有一个使用postgresql数据库的小型Go程序。其中有一个查询不能返回任何行,我用来处理这个问题的代码无法正常工作。//Getthekarmavaluefornickfromthedatabase.funcgetKarma(nickstring,db*sql.DB)string{varkarmainterr:=db.QueryRow("SELECTSUM(delta)FROMkarmaWHEREnick=$1",nick).Scan(&karma)varkarmaStrstringswitch{caseerr==sql.ErrNoRows:karmaStr=fmt.Sprintf

postgresql - 更新 golang 中的 Jsonb 列

我正在尝试更新特定行的Jsonb列值。我运行了查询UPDATEinstruction.fileSET"details"=(jsonb_set("details",'{"UploadBy"}','"test@test.com"'::jsonb,true))WHEREid=820;这在pgAdmin3中工作正常。当我尝试在我的Go代码中执行相同操作时。我收到错误:“pq:json类型的输入语法无效”我的Go代码:funcmain(){uname:="test@test.com"err:=Init()//Dbinitiferr!=nil{fmt.Println("Error",err)ret

postgresql - Golang Postgresql 数组

如果我有一个返回如下内容的表:id:1names:{Jim,Bob,Sam}names是一个varchar数组。如何在Go中将其扫描回[]字符串?我正在使用lib/pg现在我有类似的东西rows,err:=models.Db.Query("SELECTpKey,namesFROMfoo")forrows.Next(){varpKeyintvarnames[]stringerr=rows.Scan(&pKey,&names)}我不断得到:panic:sql:Scanerroroncolumnindex1:unsupportedScan,storingdriver.Valuetype[]u