我每隔2小时在服务器上运行一个使用cron的ETL进程。 ETL过程填充运行Greenplum的报告数据库。 我注意到ETL过程通常会停滞,通常是“闲置交易”。 对于这些过程,我该如何去研究它起源于哪种服务? 我猜测,但我不是很确定,因为当我运行“sudo /etc/init.d/apache2优雅”它通常清除闲置事务closures。 我正在使用Sun Java在Ubuntu服务器上运行ETL过程。 希望能有一些debugging技术或解决scheme来改进这个过程。
我已经设置了pam-pgsql来通过Saslauthd在Postfix的数据库中查找密码。 我可以使用命令行testing凭据: $ sudo testsaslauthd -u [email protected] -p password 0: NO "authentication failed" 身份validation将失败,我不知道为什么。 $ sudo tail /var/log/auth.log Feb 5 15:33:12 saslauthd[7460]: pam_unix(imap:auth): check pass; user unknown Feb 5 15:33:12 saslauthd[7460]: pam_unix(imap:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost= Feb 5 15:33:14 saslauthd[7460]: DEBUG: auth_pam: pam_authenticate failed: Authentication failure Feb 5 15:33:14 saslauthd[7460]: do_auth […]
我在Amazon RDS上有一个相当大的postgres数据库(压缩时大约9GB),有时我们需要复制它,并在我们的本地机器上做一些testing。 做一个数据库转储(pg_dump)并下载它太简单了,老实说,我们试过了几次。 有一个简单的方法来以聪明的方式获取数据库的一部分? 例如,只能得到最近10天的更改,然后我们可以将它们与本地数据库合并,也可以将数据块分块等等。 我确定我不是第一个有这种需求的人,但是找不到一个体面的方法或教程来解释最好的方法。 谢谢!
在服务器上我有一个用户user_a postgresql数据库。 我已经做了一个转储: pg_dump postgres > db1.bak 在服务器B我有一个用户user_b数据库。 我试图从服务器A上的转储恢复数据库,并失败: psql my_db < db1.bak psql: FATAL: role "user_b" does not exist 我真的必须在serverB上创builduser_a吗? 我想避免这种情况,因为在serverB上我只想拥有user_b。 有针对这个的解决方法吗?
我想主办一个网站,后端将是一个PostgreSQL数据库服务器。 我想有多个Web服务器,在不同的数据中心冗余。 然后,我会循环DNS每个Web服务器来分配负载。 要做到这一点,我应该也有多个数据库,并使用某种复制? 或者,有一个数据库并让每个Web服务器通过互联网指向它会更好吗? 更新1 这个想法被提出,多个Web服务器应该有多个数据库服务器,以消除单点故障。 我真的希望在每个数据中心都有一个重复的设置。 我会在每个数据中心都有一个Web服务器和一个数据库服务器。 我不确定这是否可能,所以我保持开放的想法,只有一个数据库服务器,或所有数据库在一个位置。 但理想情况下,每个数据中心都有自己的。
我试图从MySQL过渡到PostgreSQL,但发现用户帐户/权限系统是完全不同的。 使用mysql,所有账户都由mysql内部处理。 与postgres似乎我需要在系统内,以及在postgres内的帐户。 有什么系统用户帐户与postgres用户帐户相关的指南? postgres手册似乎没有详细说明这一点。
我正在考虑从我的机器上升级Postgres 8.3.3到8.4.2(它有Windows Vista)。 对于可从enterprisedb.com下载的Postgres 8.4.2的Windows Installer(单击安装程序)只提供全新安装(它不能识别我当前安装的v8.3.3)。 是否有可能升级所有现有的数据库转换和可见(自动迁移?)升级后的新版本? 或者我必须做更多的事情 – 手动备份/恢复我所有的数据库?
我正在使用postgreSQL进行科学应用(无监督集群)。 python程序是multithreading的,所以每个线程pipe理自己的postmaster进程(每个核心一个)。 因此,它们是很多并发的。 每个线程进程通过两个SQL查询无限循环。 第一个是阅读,第二个是写作。 读操作考虑500次写操作考虑的行数。 这是dstat的输出: —-total-cpu-usage—- ——memory-usage—– -dsk/total- –paging– –io/total- usr sys idl wai hiq siq| used buff cach free| read writ| in out | read writ 4 0 32 64 0 0|3599M 63M 57G 1893M|1524k 16M| 0 0 | 98 2046 1 0 35 64 0 0|3599M 63M 57G 1892M|1204k 17M| 0 […]
我们有专门的PostgreSQL(9.0.4)服务器(ubuntu 10.04.2LTS)和2CPU(共8个内核)。 在一些查询postgres进程吃掉了所有的CPU,我们无法ssh到我们的服务器。 我想知道是否有可能为操作系统/系统的使用贡献一个内核?
我有1个物理机器与2个VM(VMWare esxi) – 一个用于数据库(PostgreSQL 9.2.1),一个用于应用程序。 我想我的应用程序以高效的方式连接到我的数据库,我听说使用文件系统套接字比networking套接字(TCP开销,IIRC)更有效。 有没有办法使用上述设置的文件系统套接字? 要么… 有推荐的另一种有效的连接方法吗?