草庐IT

postgresql_psycopg

全部标签

postgresql - 如何创建 docker-compose 版本 2 以使用卷拥有持久的 postgres 数据库?

我知道使用旧版本的docker-compose,我们可以创建另一个仅包含数据卷的容器,并使用volumes_from链接它以使其成为“仅数据容器”。但是,我想使用新语法进行测试。version:'2'services:app:build:.links:-psqlpsql:image:postgresvolumes_from:-psqldataports:-"5432:5432"psqldata:image:postgresvolumes:-psqlvolumes:/var/lib/postgresql/data/volumes:psqlvolumes:driver:local这是基于t

postgresql - 我应该如何使用 Postgresql docker 镜像/容器?

我是docker新手。我仍在努力解决所有这些问题。我正在构建一个节点应用程序(RESTapi),使用Postgresql来存储我的数据。我花了几天时间学习docker,但我不确定我是否按照我应该的方式做事。所以这是我的问题:我使用官方的dockerpostgres9.5镜像作为基础来构建自己的镜像(我的Dockerfile只在上面添加了plpython,并安装了一个自定义python模块以在plpython存储过程中使用)。我按照postgres图像文档的建议创建了容器:dockerrun--namesome-postgres-ePOSTGRES_PASSWORD=mysecretpa

postgresql - 如何使用 DataGrip 访问 Docker 虚拟网络后面的 PostgreSQL 实例?

我有dockerized数据库微服务。我可以使用以下命令运行手动查询:$sshuser@foo.domain.com$dockerexec-itpostgresbashdocker$psql-Upostgres-h127.0.0.1-dpostgresWeb服务都使用Docker桥接虚拟网络batman相互通信。networks:batman:driver:bridge根据PostgreSQL安全最佳实践-我确实不将PostgreSQL端口5432暴露给位于foo.domain.com的主机。只有同样在'batman'Docker网络中的同级容器才允许连接到数据库。在传统的DataGr

postgresql - Docker 备份和恢复 postgres

我使用dockerpostgres:9.4图像。我需要知道如何备份和恢复仅卷容器。创建的卷容器:dockerrun-v/var/lib/postgresql/data--namedbdatapostgres:9.4/bin/true使用音量dockerrun--name=postgres--volumes-from=dbdata-d-p6432:5432postgres:9.4备份卷容器dockerrun--volumes-fromdbdata-v$(pwd):/backuppostgres:9.4tarcvf/backup/backup.tar/var/lib/postgresql/

postgresql - 如何在容器内创建 postgres 扩展?

我必须将hstore安装到我的dockerpostgres这是我在shell中执行我需要的普通命令psql-dtemplate1-c'createextensionhstore';如果我删除我的容器的那一行,它可以工作,但我自己执行hstore安装,我必须告诉我项目中的每个人都这样做,这不是一个好习惯这是我的yml文件postgres:build:context:.dockerfile:dockerfiles/devdb.dockerfileenvironment:POSTGRES_USER:uihPOSTGRES_PASSWORD:uIhbod!POSTGRES_DB:uih_por

postgresql - 从主机连接到 docker 容器中的 postgres

如何从主机连接到docker中的postgres?docker-compose.ymlversion:'2'networks:database:driver:bridgeservices:app:build:context:.dockerfile:Application.Dockerfileenv_file:-docker/Application/env_files/main.envports:-"8060:80"networks:-databasedepends_on:-appdbappdb:image:postdock/postgres:1.9-postgres-extended9

python - Psycopg2 使用占位符插入表格

这可能是一个相当愚蠢的问题,但我在这里做错了什么?它创建了表格,但INSERTINTO不起作用,我想我对占位符做错了什么?conn=psycopg2.connect("dbname=postgresuser=postgres")cur=conn.cursor()escaped_name="TOUR_2"cur.execute('CREATETABLE%s(idserialPRIMARYKEY,daydate,elapsed_timevarchar,net_timevarchar,lengthfloat,average_speedfloat,geometryGEOMETRY);'%esc

python - 为什么 psycopg2 不执行我的任何 SQL 函数? (索引错误 : tuple index out of range)

我以最简单的SQL函数为例:CREATEORREPLACEFUNCTIONskater_name_match(INTEGER,VARCHAR)RETURNSBOOLAS$$SELECT$1IN(SELECTskaters_skater.competitor_ptr_idFROMskaters_skaterWHEREname||''||surnameILIKE'%'||$2||'%'ORsurname||''||nameILIKE'%'||$2||'%');$$LANGUAGESQL;如果我将它复制并粘贴到psql(PostgreSQL的shell)中,那么它会毫无问题地执行。如果我写一

python - 大型查询后 psycopg2 泄漏内存

我正在使用psycopg2(我升级到版本2.5)在python脚本中针对我的postgres数据库运行大型查询。查询完成后,我关闭游标和连接,甚至运行gc,但该过程仍然消耗大量内存(确切地说是7.3gb)。我错过了清理步骤吗?importpsycopg2conn=psycopg2.connect("dbname='dbname'user='user'host='host'")cursor=conn.cursor()cursor.execute("""largequery""")rows=cursor.fetchall()delrowscursor.close()conn.close()

python - psycopg - 获取格式化的 sql 而不是执行

我有一段Python代码,它通过psycopg与PostgreSQL数据库交互。所有文献都警告不要自己进行sql格式化,并建议让驱动程序去做。例如:cur.execute('selectname,agefrompeoplewherename=%s;',('ann',))然后驱动程序格式化sql字符串。假设我不想执行任何东西,但我只想要完全格式化的sql字符串。是否有任何功能可以在psycopg模块中获取此格式化的sql? 最佳答案 你会使用函数curs.mogrify():SQLstring=curs.mogrify('select