Articles of postgresql

Postgresql 8.4调优指南

我正在努力寻找一些有用的指导,指向正确的方向。 我有一个小的数据库(〜100MB,最大的表有800k条logging),但基于几个联合联接的数据提取看起来非常缓慢,尽pipe在EXPLAIN(主要是索引使用,部分Seq扫描)中语句看起来很好。 请让我知道你觉得有用的指南。 非常感谢!

Postgres在Mac OS X上运行时如何popupencryption磁盘?

我已经用TrueCrypt创build了一个encryption的卷,它目前安装在Mac OS X(v10.6.6)上。 我已经将MySQL和Postgres(v8.4)数据移到了我的encryption卷上,并为它们创build了符号链接。 当MySQL守护进程运行时,popup卷,它将popup没有问题。 但是,当Postgres守护进程运行时,我试图popup卷,popup一个通知, The disk wasn't ejected because one or more programs may be using it. 有没有解决这个问题的方法?

从CPU超载保护Java服务器采取哪些步骤?

我写了一个Java服务器应用程序,用于我正在处理的软件解决scheme。 服务器使用multithreading来处理套接字和postgresql作为数据库。 我担心潜在的恶徒,就像现在,有人很容易就能通过反复快速地连接我的服务器。 基本上我正在寻找一种方法来接受来自计算机的连接,这些计算机在过去一秒钟之内还没有连接。 我想我可以注册所有的连接,并设置一个计时器,但我也认为,服务器可能仍然过载,不得不同时检查多个连接,尽pipe没有计时器那么多。 我search了stackoverflow和serverfault没有结果这个特定的问题:/。 设置非常简单。 所有连接都在主要方法中被接受并被转发到相应的线程: public static void main(String[] args) { gui = new mainFrame(); try { ServerSocket serverSock = new ServerSocket(80); while (true) { Socket sock = serverSock.accept(); new Thread(new listenThread(sock)).start(); } } catch (IOException ex) { methods.log("Couldn't create server"); ex.printStackTrace(); } } 将不胜感激任何帮助。 麦克风。

从Postgresql获取磁盘空间

我有一个数据库在Linux服务器上有大量的数据。 由于更新和删除操作,它消耗了我硬盘中的大部分。 主要原因是我们使用的版本(8.1)没有定期的自动过程。 为了解决这个问题,我已经把真空放在特定的表格上,真空指令运行超过15个小时,并继续运行。 所以我刚刚停止真空执行,因为其他进程无法访问该表15小时。 有什么办法可以克服这个问题,回收内存而不影响其他进程。 谢谢

如何从PostgreSQL转储表的一部分?

我有一个多Gb表(包含某些事件的日志)的PostgreSQL数据库。 我需要把最新的事件传给分析师 – 比方说,他只需要上个月的事件。 我怎样才能产生一个转储只有那些有说, created_at > '2012-05-01' ?

无法设置postgres用户密码

尝试在CentOS 6.5上使用Ruby on Rails和Nginx来安装PostgreSQL,使用以下指南: http : //karolgalanciak.com/blog/2013/07/19/centos-6-4-server-setup-with-ruby-on-轨-nginx的,和PostgreSQL的/ 安装后我去configuration用户,所以发出命令sudo su postgres然后psql 。 当我这样做,我得到以下错误: could not change directory to "/root": Permission denied psql (9.3.4) 忽略这个,我发布了命令: alter user postgres with password 'postgres-user-password'; 然后我去auth方法更改为MD5镝做: sudo vi /var/lib/pgsql/9.3/data/pg_hba.conf 当我这样做时,我会看到提示符: [sudo] password for postgres: 不pipeinput什么密码,我都会告诉Sorry, try again. 即使密码正好是我刚刚设置的密码。 尝试按照user716468从这篇文章的指示,但没有运气: 新的安装后postgres的默认超级用户名/密码是什么? 当我做sudo -u postgres psql postgres我被告知: postgres is not in the sudoers […]

哪个数据库(DBMS)可以最好地利用多核和多内存?

我感兴趣的数据库是:SQL Server 2008,MySQL和PostgreSQL 9.0。 一般来说,我想知道哪些会“放大”最好的。 我已经读过PostgreSQL用于比MySQL更好的扩展 ,但是与MySQL的更新版本的差别缩小了。 除了一般信息外,我也在为我的具体情况寻找build议: 我有一个拥有20年股票数据和2年期权数据的64位SQL Server 2008 R2开发者版数据库。 硬件是英特尔i7至尊与6核心,12 GB RAM,64位Windows 7。 数据库是相当大的,强烈的计算,如移动平均,可能需要长达7分钟。 此外,甚至在查询竞争之后,磁盘活动也相当可观。 我正在做存储过程中的所有计算。 我的系统太慢了,我正在努力提高它的性能和效率。 我目前正在改进我的数据模型并调整软件设置。 有什么build议么? 另外,什么时候应该考虑使用MySQL Cluster? (既然我在问,我相信答案是,“不是你的!”)

Postgresql和硬件

只是关于你的Postgresql服务器的问题。 在什么硬件上运行Postgresql? (CPU,内存,磁盘configuration,RAID …) 我打算为我的postgresql实例购买一台专用服务器: – Dell R710 – Xeon E5520 x 1 – 内存:24GB – 2x146GB SAS 15K RAID1(适用于OS + pg_xlog) – 3×450 SAS 15K RAID5或4x450GB SAS 15K RAID10适用于数据库。 你对这个configuration有什么看法? 谢谢!

尽pipe磁盘使用率低,但诊断PostgreSQL的磁盘空间不足错误

我有一个使用PostgreSQL 9.3数据库的Django Web应用程序,偶尔会引发错误: File "/usr/local/my_site/.env/lib/python2.7/site-packages/django/db/utils.py", line 94, in __exit__ six.reraise(dj_exc_type, dj_exc_value, traceback) File "/usr/local/my_site/.env/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute return self.cursor.execute(sql, params) OperationalError: could not write block 2432320 of temporary file: No space left on device HINT: Perhaps out of disk space? 它运行在EC2 / RDS上,我找不到任何磁盘空间不足的东西。 EC2实例有一个9GB的驱动器,只有38%在使用。 RDS PostgreSQL数据库有20GB的存储空间,只有1%的使用率。 我认为这可能是EC2实例中的一个低inode问题,但是df -i显示只有33%被使用。 什么会造成这个错误?

postgres在64位Linux或64位Windows Server 2008?

Postgres没有一个64位二进制文​​件的Windows服务器 引用 “由于在Windows上通常没有理由使用shared_buffers> 256 – 512MB,所以没有很大的动力去投入64位端口所需的努力” 为什么通常没有理由在Windows上运行大量内存? 将64位的Linux安装更有效率? 如果是这样,哪个? 这个服务器有8Gb的内存,这个数字可能会增加到12Gb。 我们打算把几乎所有的内存分配给postgres。 对于我在做什么,我可以愉快地做到没有用户界面。