我有一个15 GB的压缩PostgreSQL转储(作为pgbackup),提取时接近60 GB。 我有一个只有69GB可用空间的云服务器(将pgbackup拷贝到磁盘盒上后是54GB),我想知道是否有一种巧妙的方法可以将pgbackup分割成许多较小的压缩pgbbackup文件,删除原始的大的pgbackup,然后遍历小的pgbackup,解压缩,执行它们,然后删除它们,这样我就可以在PostgreSQL数据库中以磁盘约束结束整个数据集。
Heroku Postgres看起来像一个很好的服务,减轻了数据库pipe理的痛苦。 就我个人而言,我没有pipe理数据库集群的经验,所以我非常喜欢这个服务。 但是,我想知道是否有人可以提供一些服务的经验,如果价格昂贵是值得的。 假设我有一个具有3.75GB内存的Fugu实例,这将花费我每个月400 USD 。 我怎么能certificate340 USD / 666%的价格差异到一个SSD支持的VPS上的自我托pipe的Postgres实例,在ramnode上有4GB的RAM,这会花费我60USD ?
我在Gentoo / Linux 2.6.14r5上使用了PostgreSQL 8.1。 我的数据库服务器的磁盘空间如下所示: db postgresql # df -l Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda3 9775248 2018528 7756720 21% / udev 1557872 88 1557784 1% /dev shm 1557872 0 1557872 0% /dev/shm /dev/sda4 281096760 244270836 36825924 87% /var/lib/postgresql /dev/sdb1 961402192 244780080 667785712 27% /mnt/sdb1 我无法重新启动./etc/init.d/postgresql,因为/ var / lib / postgresql下的子目录数据是空的。 PostgreSQL8.1从8.0更新,所以/ […]
我有2台物理服务器,每台服务器将包含2台虚拟机; 一个运行Postgres(9.2)的虚拟机,以及一个运行Python软件(将连接到Postgres服务器)的虚拟机。 我没有任何关于故障转移工具的types等方面的任何东西。有没有办法避免有一个脑裂的问题,因为我只有2个物理服务器? 我目前的理解是,当我的主Postgres服务器(或它驻留的机器)死亡时,从属数据库将恢复主服务器的angular色。 如果主服务器重新启动,它会认为它仍然是主…这个问题是由现代Postgres版本处理,还是仍然是一个严重的问题,如果是这样,为什么不更多的人谈论它呢? 似乎很less有任何关于它的信息。
我正在研究一个中央用户数据库系统的项目。 系统的其中一个要求是所有应用程序只能有一组用户。 FreeRADIUS和Samba是两个使用LDAP作为后端的应用程序。 由于用户必须与包含许多其他应用程序的整个系统相同,我必须从中央数据库读取用户列表,并在Samba和FreeRADIUS的LDAP目录中重新创build它们。 问题是用户从另一个实体发送给我,我可以用他们的散列密码将它们保存在数据库中。 我没有访问他们的明文密码。 我想知道是否可以用我的首选散列机制直接在LDAP中为新用户input散列密码。 如果没有,任何人都可以告诉我我必须使用什么策略? 我在UBUNTU 12.04上运行我的服务器,所有其他应用程序是最新版本。 我的数据库系统是PostgreSQL 9.2。 谢谢
我有一个PostgreSQL的9.1分贝,我刚刚升级到9.3使用 /usr/lib/postgresql/9.3/bin/pg_upgrade -b /usr/lib/postgresql/9.1/bin -B /usr/lib/postgresql/9.3/bin -d /var/lib/postgresql/9.1/main/ -D /var/lib/postgresql/9.3/main/ -O "-c config_file=/etc/postgresql/9.3/main/postgresql.conf" -o "-c config_file=/etc/postgresql/9.1/main/postgresql.conf" 按照这里的指示,不幸的是,在这之后我并没有仔细观察最后一点。 在升级之后(这是成功的),我发现,而不是数据目录的默认位置(在这种情况下是/var/lib/postgresql/9.3/main ),升级的选项现在configuration了我所有的PostgreSQLconfiguration文件位于/etc/postgresql/9.1/main/ 。 我花了一段时间寻找一种方法来改变这一点,到目前为止,我发现虽然hba_file和ident_file可以很容易地在postgresql.conf本身进行更改,但除了通过postgres命令行界面外,不能设置config_file 。 我尝试使用-o "-c config_file=/var/lib/postgresql/9.3/main"选项来使用postgres ,但似乎这只是试图启动服务的另一个实例,与service postgresql start的服务分开。 运行pg_ctl status -D ~/9.3/main/我得到 `/usr/lib/postgresql/9.3/bin/postgres "-D" "/var/lib/postgresql/9.3/main" "-c" "config_file=/etc/postgresql/9.3/main/postgresql.conf"` 我认为这意味着-c… /etc…被传递给开始服务的任何东西。 基于我有限的知识,我相信这是/etc/init.d/postgresql与start参数。 考虑到这一点,它似乎引用/usr/share/postgresql-common/init.d-functions其中包含以下顶部 do_ctl_all() { [ "$1" ] || { echo "Error: invalid command '$1'" >&2; exit […]
我从一台旧的Ubuntu机器上用postgresql 8.4 wiandth postgis 1.5抛弃了一个数据库。 在新的Ubuntu 12.04上,我已经安装了Postgresql 9.1和Postgis 1.5。 (使用postgis.sql和spatial_ref_sys.sql创buildpostgis_template)。 当我在新的机器上恢复转储时,数据是build立,但我得到这样的25错误消息 … pg_restore: [archiver (db)] Error from TOC entry 711; 1255 18533 FUNCTION gidx_in(cstring) postgres pg_restore: [archiver (db)] could not execute query: ERROR: function public.gidx_in(cstring) does not exist Command was: DROP FUNCTION public.gidx_in(cstring); pg_restore: [archiver (db)] Error from TOC entry 34; 1255 17743 FUNCTION geometry_send(geometry) […]
我想用postfix + postgresql和dovecot设置邮件服务器。 目前,我可以发送电子邮件到邮件服务器,但我不能连接到它与我的邮件客户端,因为它说,密码是错误的…还有我的服务器日志上类似的错误。 我也使用postfix-admin和dovecot 2.2.10。 这是我的服务器日志。 Jan 15 20:06:34 myserver dovecot[18749]: auth: Debug: sql([email protected],83.32.150.111,<Dnt42AfwnQBTIJZv>): MD5-CRYPT(mypassword) != 'b6486d12312310sa90sa98312df96acf7 Jan 15 20:06:36 myserver dovecot[18749]: auth: Debug: client passdb out: FAIL 1 [email protected] 关于我的sql查询的更多细节 — Logs begin at Tue 2013-07-30 12:31:36 UTC, end at Thu 2014-01-16 11:06:05 UTC. — Jan 16 11:03:05 myserver dovecot[14711]: auth: Debug: sql([email protected],83.32.150.111,<OuSwXhTw9gBTIJZv>): […]
在我的/var/lib/pgsql9/data/postgresql.conf我添加了port = 55434 ,如果我启动Postgres与/usr/bin/pg_ctl start -D /var/lib/pgsql9/data/作为postgres用户然后Postgres是听正确的端口lsof -i -nP : COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME postgres 12127 postgres 3u IPv4 49394 0t0 TCP *:55434 (LISTEN) postgres 12127 postgres 4u IPv6 49395 0t0 TCP *:55434 (LISTEN) postgres 12127 postgres 10u IPv4 49402 0t0 UDP 127.0.0.1:57562->127.0.0.1:57562 postgres 12130 postgres 10u IPv4 49402 0t0 […]
这是我的情况。 我有一个LAN上的Windows服务器上安装Postgresql。 我有一个IISnetworking服务器设置在局域网外。 我想从Web服务器连接到postgresql数据库。 Postgresql服务器IP:192.168.x.1 防火墙内部IP:192.168.x.2 防火墙外部IP:72.xx100 Webserver IP – 内部局域网访问:192.168.x.3 Webserver IP – 外部LAN访问:70.xx100 pg_hba.conf文件有一个条目: host all all 0.0.0.0/24 md5 postgresql.conf文件有一个条目: listen_addresses = '*' 这应该从数据库端删除所有的访问限制。 我的最终目的是让GIS应用程序访问这个数据库,将数据合并到一个地图网站中。 在这一点上,我只是想使用PgAdmin从Web服务器访问postgresql。 使用此configuration,假设防火墙上的5432端口已正确打开,则应在PGAdmin服务器连接的Host框中放置什么IP地址? 我最初的想法是,它应该是Firewall External IP: 70.xx100 ,但这是正确的? 最后,如果需要的话,我将把它分解成一个新的问题:从性能和安全的angular度来看,这种configuration是否合乎逻辑?还是应该以不同的方式进行讨论?