有人现在是一个简单而快速的方法来实现以下目标: 我有一个PostgreSQL 8.2.9 DBMS与几个(10左右)不同的数据库,这一切都服务于各自的Web应用程序。 这些数据库被分成不同的scheme,当然这些scheme被分成不同的表格。 我正在使用postgres超级用户连接到我的Web应用程序中的数据库。 现在我想重新思考我的安全概念,因此创build一个权限较低的用户,只能执行以下操作:对所有数据库的所有表执行INSERT,DELETE,UPDATE和SELECT。 这个用户是否可以访问所有的数据库并不重要,我不想为所有的Web应用程序创build单独的用户。 无论如何,应该有一些方法来创build它后给用户授予这些特权,就像 授予select,插入,更新,删除。 TO new_user; 我只知道如何将这些权限授予单个表,但是这将是一个在10个数据库上分布的超过10000个表的奥德赛。 我已经阅读了一些关于读取pg_tables metatable来获取所有表的列表,但它不知道我的版本。 也许你也可以回答,如果实际上有一个PostgreSQL数据库站在所有数据库之上,并包含有关所有数据库的元信息! 我只注意到在每个数据库中都有一个名为information_schema的模式,它托pipe有关当前数据库的信息? 非常感谢你。
我有一个在Postgres(8.4)上运行的数据库,我想定期备份这些数据的一部分。 我们有非常重要的数据,我们需要定期备份,以防硬件着火。 但同一个数据库包含大量的二进制数据,每个条目的增长非常快(每天容易超过一GB)。 现在,这个数据并不重要。 如果我们失去了,那当然是烦人的,但这是可以接受的。 有没有简单的方法来备份一些我们的表与Postgres,或者我必须手动编写查询来复制一切之前,我可以pgdump吗? 奖励:如果大的二进制表可以备份最后的X条目,这将是完美的,但我相当肯定,我将不得不手动做这样复杂的事情。
在客户的地方,我们在服务器上有一个postgres数据库,还有一些客户。 我们通过ODBC驱动程序连接它们,所有机器都运行Windows(通常是XP)。 现在我们遇到了一些烦人的问题: 客户端“忘记”ODBC驱动程序中的某些标志,例如ByteA作为LO。 每当有任何变化,我们必须重置,并input密码,有时甚至是服务器的IP。 在运行Windows 7的x64机器上,configuration这个是很麻烦的,因为系统设置对话框默认只显示64位连接。 最重要的是:如果服务器由于客户重新启动或更换交换机而更改IP,则所有连接都将丢失。 令人烦恼的是,这只能纠正IP才能解决,但是我们必须检查每个地方(甚至是hba_conf),因为所有的设置都会奇迹般的消失。 我们的客户往往是非常小的公司,其中“服务器”的意思是“在另一个房间的一台PC”,而不是“在地牢的Oracle主机”,所以我们不想依赖他们不重新启动交换机。 有没有比依靠这些非常不稳定的设置更好的方法? 这些设置是否在我可以手动编辑的文件的某个位置,使其更容易修复?
我是一个长期的Microsoft .NET开发人员。 ASP.NET / MSSQL / IIS在过去的6年里一直是我的面包。 现在,我越来越喜欢Ubuntu 10.xx服务器的“轻量级”了。 我也喜欢从我的Windows 7电脑上SSH,并使用真棒“apt-get”命令安装应用程序。 我现在也一直在用MySQL和HeidiSQL并且喜欢它。 感觉像pipe理工作室。 然而,我读过PostgreSQL“可能”比MySQL更好,我在我的Moodle框中遇到了一些MySQL重载(但是这可能只是我的一个小小的调整)。 我的问题是,运行这个configuration是个好主意吗? ASP.NET 4.0 PostgreSQL(我可以apt-get的最新版本!)带有运行在Apache上的Mono的Ubuntu 10.10 另外,我假设我将使用Npgsql Mono作为从ASP.NET到PostgreSQL的连接器?
我使用命令导出我的postgresql数据库 su – postgres -c "pg_dump –inserts –column-inserts mydb" > export.sql 但是当我用vi打开导出的文件时,带有重音符号的字母不能正确显示,但是从这个数据库读取数据的Web应用程序确实显示出来了。 任何提示? 谢谢。
我最近被欺骗运行其中一个registry清理程序(RegistryBooster)。 这似乎工作正常,直到我试图启动我的postgres服务。 出于某种原因,“可执行文件path”不再设置在服务属性页面上,显然不会在没有path的情况下启动。 我怎么才能修复现有的服务或卸载/重新安装只是服务,而不重新安装postgres? postgres 8.4的Windows XP SP3 编辑:在试图解决这个问题,我不小心删除了服务。 所以问题变成:我如何重新安装服务而不重新安装整个postgres? 再次感谢…
我们现在正在一个相当小的环境中testingHyperic 4.5.1。 目前只有1-5个代理商,可能不会超过10-15个。 当我运行ps ax ,有20(!)个postgres进程正在运行。 对于像这样的小型设置,这不是必要的,可以吗? 我是一个软件开发人员,并没有太多的设置服务器等经验,所以不知道。 无论哪种方式,什么设置适合这样的小型Hyperic设置? 当前 ,默认和未触及的configuration文件 hqdb / data / postgresql.conf: # —————————– # PostgreSQL configuration file # —————————– # # This file consists of lines of the form: # # name = value # # (The '=' is optional.) White space may be used. Comments are introduced # with […]
我有一台运行PostgreSQL的Ubuntu服务器和一个非常轻量级的自定义Web服务器。 我知道这会发生,但我太忙了,现在磁盘有0个字节的空闲。 我不需要在数据库中的所有数据,我已经删除了一些表中的大量的行,但空间不会被释放,直到数据库“真空”,并做真空,我需要大量的免费磁盘空间。 我能做什么? 这是一个Amazon EC2实例。
即时通讯在PL / TCL的触发器上工作,插入数据库A的tableA插入数据到数据库B的表B. 两个数据库都在同一台服务器上。 我想出了这个: CREATE OR REPLACE FUNCTION add_to_erp() RETURNS trigger AS $$ BEGIN IF (TG_OP='INSERT') THEN perform dblink_connect('dbname=oerp_test user=postgres password=abouali'); perform dblink_exec('insert into product_template(standard_price, list_price, name) values ('||NEW.pricebuy||','||NEW.pricesell||','||NEW.name||');'); perform dblink_exec('insert into product_product(product_tmpl_id) values (currval(''product_template_id_seq''::regclass));'); perform dblink_disconnect(); END IF; RETURN NEW; END; $$ LANGUAGE 'plpgsql'; CREATE TRIGGER add_to_erp_trigger AFTER INSERT ON products FOR EACH […]
我需要使用一个PostgreSQL安装来托pipe多个客户站点。 什么是最好的方式来分裂他们 – 通过架构或实例? 这些因素将使pipe理员更容易(特别是个别站点的备份/恢复),站点的性能以及内存使用的整体效率。 感谢Jason