Articles of postgresql

PostgreSQL,1个服务器,X个用户,X个分隔的环境

我是PostgreSQL数据库的新手,有些东西是在MySQL中解决的。 我有问题如何最简单地添加分离的用户从数据库中的其他对象。 我想创build用户,应该有权限template1。 他必须能够创build数据库并且可以login。 我希望她的数据库只对她可见。 我希望她不要以这种方式列出/查看/拥有对其他用户数据库的任何权限。 什么是简单的解决scheme来获得这个? 感谢帮助

postgresql数据库的时间不正确

我有一个运行postgresql 8.3.5的XP VM(Xen)。 一切都很好,直到上个星期,时间提前了1个小时。 所以XPconfiguration为Mountain时间,没有ntp或任何其他同步 – 这台机器没有任何互联网接入。 Postgres在postgresql.conf中有所有的默认设置,所以它应该拾取系统时间。 这是各种命令的输出…当我运行这些命令时,当前的山区时间是“14:06”….(请忽略下面的分钟/秒/毫秒差异) SHOW TIME ZONE; "US/Mountain" select now() "2011-11-01 15:06:42.885-06" select now()::timestamptz "2011-11-01 15:06:51.828-06" select localtime "15:06:59.799" select timezone('MST'::text, now()) "2011-11-01 14:07:10.535" 正如你所看到的,只有最后一个命令才能正确显示时间。 我不知道为什么突然要提前1小时。 其他有趣的观察: 运行在同一台机器上的JBOSS应用程序服务器具有相同的行为 另一个独立的Java应用程序显示正确的时间虽然… 因此,如果在操作系统级别出现问题,应该在操作系统上运行的所有应用程序中保持一致…但其中一些像JBOSS,postgresql显示的是15:06,但其他像我的独立Java应用程序show 14:06

PostgreSQL更新工具?

有没有一个工具(PHP,Perl,Ruby,shell,在线SaaS)可以进行PostgreSQL数据库转储,新架构和迁移(没有数据丢失)? 处理丢弃和添加依赖是一件麻烦事。

为什么我没有从Postgresql表中删除所有这个大小?

我在Postgresql 8.4中有一个103GB(pgAdmin III在表中“统计”表中报告)。 我放下了它。 从那以后,它的唯一的恢复约60GB的空间回到系统…. 其余的去哪里,我能做些什么来恢复它?

用PostgreSQL设置trac – 如何设置编码为UTF8?

所以我一直在寻找安装trac到我的debian服务器上的PostgreSQL 。 我按照文档设置一切,但是当试图运行trac-admin /path initenv我得到这个数据库编码错误: DataError: character 0xe282ac of encoding "UTF8" has no equivalent in "LATIN1" 从进一步阅读(并看到我所有的数据库都设置为编码“LATIN1”后)似乎我需要改变为UTF8,但我怎么能做到这一点? 如果我这样创build我的数据库: createdb -U user -O user -E UTF8 trac 我得到: createdb: database creation failed: ERROR: encoding UTF8 does not match server's local en_GB DETAIL: The server's LC_CTYPE setting requires encoding LATIN1. 它看起来应该很容易通过更改编码来修复,但search了一下后,我不知道该怎么做!

PostgreSQL:性能下降由于索引bloatper

我正在CentOS 4.4系统上运行PgSQL 8.1(不幸的是不能升级)。 有一个Java应用程序运行在PgSQL守护进程之上,我们需要每2个月左右对数据库进行重新索引。 同样重要的是:数据库没有增长。 看起来膨胀现在比以前快了,这往往会增加。 我的configuration在这里可用,autovacuum守护进程已启用,并经常运行:pastebin.com/RytNj7dK 你也可以find这个查询的输出wiki.postgresql.org/wiki/Show_database_bloat 运行reindex后3小时: http ://pastebin.com/raw.php?i= 75fybKyd 运行reindex后72小时: http ://pastebin.com/raw.php?i= 89VKd7PC 有没有人有任何想法,我应该调整,以摆脱日益膨胀? 谢谢你的帮助 PS:由于反垃圾邮件预防系统,我不得不删除前两个链接的前两个http://前缀。

在Volusion网站上使用Postgres

好的,我很抱歉,如果这是非常基本的,我应该知道答案,但我不知道还有什么可以解决的。 我想用Volusion开始一个小店铺的网站。 我想要一些自定义ASP代码来查询我目前在Postgres数据库中的数据。 我希望能够通过ftp将数据库文件移动到Volusion服务器上,并从我的商店站点(通过自定义ASP)访问它们。 我是否需要将Postgres安装到服务器上才能执行此操作,或者只需将我的数据库文件进行ftp并使用ASP代码访问它们即可? 我想我需要安装Postgres,但是如果可能的话,不想安装这样的安装。

脚本postgres同步 – 这是安全的?

我已经编写了一个脚本来同步(从头重新创build)一个生产数据库和一个开发数据库,​​并且我想了解潜在的安全缺陷/问题,这个脚本如下所示。 服务器出于安全目的禁用了远程访问,并且使用公钥authentication来pipe理sshauthentication。 #!/bin/bash #this is pretty seriously sketchy script… current_time=`date +%s` dump_file_name=/tmp/temporary_dump_$current_time.dump echo SSHing and dumping to $dump_file_name ssh -t [email protected] << EOT pg_dump -U postgres -Fc dbName > $dump_file_name PASSWORD #password in plain text exit EOT echo SCPing the file locally to: `pwd`$dump_file_name scp [email protected]:$dump_file_name $dump_file_name echo Cleaning up the remote file ssh -t […]

Postgresql不会启动“套接字冲突”

我在Gentoo上启动Postgresql时遇到问题。 $ /etc/init.d/postgresql-9.1 start * Socket conflict. * A server is already listening on: * /var/run/postgresql/.s.PGSQL.5432 * HINT: Change PGPORT to listen on a different socket. 我删除了文件/var/run/postgresql/.s.PGSQL.5432服务启动并运行良好。 我猜服务器closures了,把文件留在那里。 我检查了netstat,看是否有一个进程正在监听那个端口,但是没有。 我的问题是,我将来如何避免这个问题呢?

如果我有Postgresstream式复制,我仍然需要存档我的WAL文件?

我已经设置了两台运行Postgres 9.1的服务器,其中一台使用stream式复制configuration为另一台热备份。 鉴于此,是否有任何理由将我的WAL文件归档? 我知道归档的WAL文件允许我“回溯到”以前的数据库快照,但是对于我的特定应用程序,只要待机状态正常,我不需要这样的function。 还有其他什么原因让他们?