Articles of postgresql

Ubuntu(Postgres)用户的身份validation失败

我在Ubuntu上安装了Postgres。 通过pgAdmin我可以连接Postgres与我创build的用户,但是当我尝试使用相同的用户名和密码的其他应用程序时,我得到:用户的身份validation失败。 为什么通过pgAdmin我可以连接,并通过一个Python客户端,我得到上述错误信息? 谢谢!

PostgreSQL不能从python / psycopg连接

我有问题通过Python / Psycopg2连接到PostgreSQL。 PostgreSQL服务器运行在CentOS 5.5的192.168.1.6上。 我已经可以通过局域网工作站使用Navicat进行连接了,我很确定我在iptables中打开了正确的文章。 但是从Python / psycopg2连接时,我得到了这个错误 conn = psycopg2.connect(database='test', user='sql', host='192.198.1.6', password='sql') Traceback (most recent call last): File "<pyshell#11>", line 1, in <module> conn = psycopg2.connect(database='test', user='sql', host='192.198.1.6', password='sql') OperationalError: could not connect to server: Connection timed out (0x0000274C/10060) Is the server running on host "192.198.1.6" and accepting TCP/IP connections on port […]

什么单位用来衡量xlog位置?

为了监视从一个PostgreSQL服务器到另一个PostgreSQL服务器的复制延迟,我使用一个简单的脚本,在主服务器上运行查询“SELECT pg_current_xlog_location()”,在从服务器上运行“SELECT pg_last_xlog_receive_location()”。 然后我把结果从hex转换成十进制,并计算差异来获得复制延迟。 我的问题是我无法弄清楚这个xlog_location返回什么单位。任何人都可以解释这一点?

Windows上的Postgresql:postmaster.pid保持不变,如果服务崩溃,则阻止重新启动

在Windows 2008 R2上,作为Windows服务运行的Postgresql 9.1.1 x64遇到了一个烦人的问题。 Postgres服务崩溃的原因不明,它在磁盘上留下一个postmaster.pid文件,防止服务重新启动。 有没有办法来configuration这个文件的创build?

Postgres的subprocess吃掉了很多的内存

我们有一个postgres 9.0实例运行在一个非常强壮的机器上(96G的RAM / 24核心)。 在最近几个星期里,我们遇到了由于OOM杀手内存不足而导致postgres被杀的儿童进程的崩溃。 看起来,由于使用连接池,这些subprocess是长寿命的(这是合理的,因为打开和closures连接需要时间),问题在于它们在内存消耗上逐渐增长以至达到9Gig / process。 你可以想象,其中有10个,填补了可用的公羊和OOM杀手踢。 问题是: 如果我们使用默认configuration参数,那么进程如何分配这么多的内存呢? 为什么这些stream程并没有释放内存呢? 作为参考,可能影响内存的设置: max_connections = 950 shared_buffers = 32MB 所有其他设置不会被覆盖,这意味着我们正在使用默认值。

Debian启动 – 在postgresql之后启动一个守护进程

我正在configuration我的debian服务器,我不能正确启动一个守护进程。 为了开始,我的守护进程必须findPostgresql套接字(位于/var/run/postgresql/.s.PGSQL.5432),但守护进程不会启动。 我检查了日志,它写道: 加载地图图层时发生错误:无法连接到服务器:没有这样的文件或目录。 服务器在本地运行并接受连接n Unix域套接字'/var/run/postgresql/.s.PGSQL.5432'? 起初,我使用了update-rc.d mydaemon defaults ,并且由于结果如此,我试过了update-rc.d mydaemon start 30 2 3 4 5 . stop 30 0 1 6 . update-rc.d mydaemon start 30 2 3 4 5 . stop 30 0 1 6 . ,但结果还是一样的。 我使用的是Debian 6.0.6(Squeeze),而postgre“rc.d start level”似乎是23,因为ls /etc/rc3.d | grep postgre ls /etc/rc3.d | grep postgre返回S23postgresql 。 rc.d脚本metainfo: […]

PostgreSQL和Mongodb在制作中

我们有一个产品使用Postgres的RDBMSish数据(账户,账单等)和MongoDB的每个账户数据(显然不能在Postgres维护)。 在本地开发中,我们设置了我们的盒子,使psql实例和mongod实例在同一个盒子里(伴随着应用服务器和web服务器),但是随着我们进入testing阶段,我想知道什么是最好的或者更容易build立和维护。 一个实例(云服务器)把两个数据库放在一起,还是应该分割实例,每个实例都有自己的机器? (显然第二个选项总是更好) 有没有人有过这样的设置经验,并有一些见解? 我们也考虑到完全迁移到MongoDB的可能性,但这种可能性还在后面。

来自远程客户端的PostgreSQL 9.1中的密码authentication失败

我在Debian Squeeze服务器上运行PostgreSQL 9.1.9(使用backports)。 pg_hba.conf文件的内容是: local all postgres trust # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 host all all 192.168.1.237/32 md5 我已经为postgres用户设置了密码: alter user postgres with […]

在Ubuntu上进行apt-get安装时构build必要的依赖关系

我有一个Ubuntu 12.04.2服务器,我想安装Postgres 9.2.4。 如果我想构build所有的依赖关系,我不能使用apt-get build-dep (至less没有一些finagling),因为只有9.1可用于apt-get install 。 这让我陷入了“自9.1以来添加了新的依赖关系”的问题。 所以,我决定检查Postgres 9.1的依赖关系 ,所以我做了一个空运行: me@my-server:~$ sudo apt-get build-dep postgresql-9.1 –dry-run Reading package lists… Done Building dependency tree Reading state information… Done The following NEW packages will be installed: bison comerr-dev debhelper dh-apparmor docbook docbook-dsssl docbook-xsl flex gettext html2text intltool-debian krb5-multidev libbison-dev libcroco3 libedit-dev libexpat1-dev libfl-dev libgettextpo0 libgssrpc4 […]

如何将PostgreSQL应用于所有表格?

正如GRANT SELECT对postgresql中所有表的问题所讨论的那样,从PG 9.0开始,可以使用如下命令对所有现有表批量授予用户u权限: GRANT ALL ON ALL TABLES IN SCHEMA public TO u; 作为你login,你现在可以做到这一点预先存在的表a: SELECT * FROM a; 但是,如果您现在创build表b并执行: SELECT * FROM b; 你得到: ERROR: permission denied for relation b SQL state: 42501 这可以通过重新执行来弥补 GRANT ALL ON ALL TABLES IN SCHEMA public TO u; 但是每次创build表之后,必须记住这样做是个问题。 有没有办法让PostgreSQL自动将这些全局授权应用到新创build的表中? 〜在此先感谢〜肯