标签: postgresql

是否有 pgadmin 插件的存储库?

我已经将 PostgreSQL 与 PGAdmin III 一起使用了一段时间,但一直困扰着我,有一个插件菜单选项是空的。我在谷歌上搜索了一些并在这里和那里找到了一个插件,但我想知道是否有我错过的存储库?

如果您不知道 repo 但知道其他插件,请也让我知道它们。

postgresql pgadmin

5
推荐指数
1
解决办法
764
查看次数

在不执行 pg_dumpall 的情况下升级 Postgres

我正在从 postgres 8.4 升级到 9.0 并查看手册,看起来这是我唯一的选择:

pg_dumpall -p 5432 | psql -d postgres -p 6543
Run Code Online (Sandbox Code Playgroud)

这意味着我需要停止对数据库的任何写入并等待传输几 GB 的数据。

有没有更好的方法可以使用预写日志 (WAL) 将任何新 SQL 重播到新数据库上?

postgresql upgrade

5
推荐指数
1
解决办法
805
查看次数

Linux (Ubuntu) 上的 PostgreSQL 数据库逆向工程工具

请推荐一个工具来将 PostgreSQL 数据库逆向工程为实体关系图 (ERD) 或等效的 ??

理想情况下,我正在寻找一种易于使用的格式(SVG、PDF 或任何常见的 UML 文件格式)的简单 ERD 或 UML 类图。

到目前为止,我只为 MySQL 和 Windows 创建了软件,但这不是解决方案。

postgresql erd database-design linux ubuntu

5
推荐指数
1
解决办法
1万
查看次数

启动 postgresql 服务并指定数据目录

我最近使用 apt-get install 在 Ubuntu 10.0.4 上安装了 pg 8.4。

它将 pg 安装为一项服务,该服务在机器启动时启动。但是,我已经在我希望 postgres 使用的特定位置创建了一个数据库集群。

这是我如何创建集群的命令行输出:

username@jupiter:~$ sudo /usr/lib/postgresql/8.4/bin/initdb --encoding=UTF8 --pgdata=/mydata/pgdbdata/
initdb: cannot be run as root
Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.
username@jupiter:~$ /usr/lib/postgresql/8.4/bin/initdb --encoding=UTF8 --pgdata=/mydata/pgdbdata/
The files belonging to this database system will be owned by user "username".
This user must also own the server process.

The database cluster will be initialized with locale en_US.utf8.
The default text search …
Run Code Online (Sandbox Code Playgroud)

postgresql ubuntu

5
推荐指数
1
解决办法
2万
查看次数

Jetty 8.1.0 和 BTM 的数据库异常

我们正在使用 BTM 2.1.2 运行 Jetty 8.1.0。

我们使用 Postgres 作为我们的数据库。

一切都很好,除了当我们在某个表的主要=空的条件下运行任何查询时,服务器会失去与数据库的连接。以下是我们看到的异常:

org.postgresql.util.PSQLException:错误:整数的无效输入语法:“null”
at
...
...长堆栈转储随之而来...
...
2012 年 6 月 15 日下午 12:20:19 org.eclipse。 jetty.server.AsyncHttpConnection 句柄信息:EndPoint 不长进度:stack 100dump SCEP@162b333{l(/74.93.245.209:60506)<->r(/10ensues.99.21.87:80),d=true,open=true ,ishut=false,oshut=false,rb=false,wb=false,w=false,i=5r}-{AsyncHttpConnection@18fc7ca,g=HttpGenerator{s=3,h=-1,b=20909,c= -1},p=HttpParser{s=0,l=16,c=0},r=1} AsyncHttpConnection@18fc7ca,g=HttpGenerator{s=3,h=-1,b=20909,c=-1 },p=HttpParser{s=0,l=16,c=0},r=1 2012 年 6 月 15 日下午 12:20:19
org.eclipse.jetty.server.AsyncHttpConnection 句柄警告:关闭端点没有任何进展:200 SCEP@162b333{l(/74.93.245.209:60506)<->r(/10.99.21.87:80),d=true,open =true,ishut=false,oshut=false,rb=false,wb=false,w=false,i=5r}-{AsyncHttpConnection@18fc7ca,g=HttpGenerator{s=3

此事件后的任何查询均会因以下异常而中断

它发生在我们的生产服务器上!是什么导致了这个问题?

更新:

这是代码!

我知道我们不应该使用 primarykey = null 查询,因为 primary 永远不能为 null。但是它的参数和空验证被遗漏了!

令人惊讶的是,Jetty 6 与它配合得很好!即使在运行此查询之后,它也完全没有问题。它只是 Jetty 8-1-0,在运行此类查询时永久丢失数据库连接。直到我重新启动服务器

String query = "select * from table where primarykey="+parameter; 
Statement lStatement   = null;  
Connection lConnection  = null;  
ResultSet lResultSet   = …
Run Code Online (Sandbox Code Playgroud)

postgresql

5
推荐指数
1
解决办法
473
查看次数

Postgresql:两个并发COPY FROM

我正在将几个巨大的 csv 文件导入一个表 - 所以我想知道如果我同时运行 COPY FROM 作业会发生什么?

postgresql import

5
推荐指数
1
解决办法
1068
查看次数

在启动时从 WAL 错误中恢复 PostgreSQL 数据库?

我正在尝试使用switch2osm.org 上列出的 Ubuntu 包在 Ubuntu 12.04 机器上设置 OpenStreetMap 服务器。我最初使用仅限美国东北部的地图提取物安装并设置了所有内容,但现在我想安装整个地图星球。我下载了planet-latest.osm.bz2并osm2pgsql --slim -C 60000 planet-latest.osm.bz2以对数据库具有写权限的用户身份运行;这与之前安装 us-northeast.osm.pbf 的命令相同。第二天我回来发现这个命令似乎成功完成,但由于某种原因渲染守护进程没有从新数据生成新的图块。我尝试重新启动渲染,当没有效果时,我尝试使用sudo /etc/init.d/postgresql restart. 但是,服务器启动失败,日志中出现以下错误:

2012-07-13 18:54:59 UTC WARNING:  page 1525147 of relation base/16385/477861 was uninitialized
2012-07-13 18:54:59 UTC WARNING:  page 2247965 of relation base/16385/477861 was uninitialized
...500 more lines like this...
2012-07-13 18:54:59 UTC WARNING:  page 2262926 of relation base/16385/477861 was uninitialized
2012-07-13 18:54:59 UTC PANIC:  WAL contains references to invalid pages
2012-07-13 18:55:00 UTC LOG:  startup process (PID 22826) …
Run Code Online (Sandbox Code Playgroud)

postgresql ubuntu corruption

5
推荐指数
1
解决办法
3921
查看次数

恢复后串行字段的默认值更改

今天我在恢复一个PostgreSQL数据库后发现一个奇怪的行为:所有serial字段默认值的模式都被修剪掉了。

例如:

CREATE TABLE testschema.testtable
(
   id serial, 
   name character varying(255), 
   CONSTRAINT pk_testtable PRIMARY KEY (id)
) 
WITH (
  OIDS = FALSE
)
;


SELECT a.attnum, n.nspname, c.relname, d.adsrc AS default_value
FROM pg_attribute AS a
JOIN pg_class AS c ON a.attrelid = c.oid
JOIN pg_namespace AS n ON c.relnamespace = n.oid
LEFT OUTER JOIN pg_attrdef AS d ON d.adrelid = c.oid AND d.adnum = a.attnum
WHERE a.attnum > 0 
  AND n.nspname = 'testschema' 
  AND c.relname = 'testtable' 
Run Code Online (Sandbox Code Playgroud)

该 …

postgresql

5
推荐指数
1
解决办法
3228
查看次数

当 9.1“主”已经存在时,如何将“主”集群从 8.4 升级到 9.1?

我有一个现有的 8.4 集群(名为main),我想升级到 9.1。但是,当我去升级它时,我收到一个错误,因为 9.1 已经有一个名为的集群main(显然是我执行 a 时创建的默认集群sudo apt-get install postgresql-9.1-postgis):

$ pg_upgradecluster 8.4 main
Error: target cluster 9.1/main already exists
Run Code Online (Sandbox Code Playgroud)

我该怎么办?
删除默认的 9.1/主集群?如何?
重命名 9.1/主集群?如何?

Postgresql 默认main集群有什么特别之处吗?

Ubuntu 11.10 Oneiric、Postgresql 8.4.8 和 9.1.4

更新:我刚刚发现了这个AskUbuntu 问答,它说首先做一个pg_dropcluster --stop 9.1 main 我试过的,它奏效了。所以现在我想知道默认 9.1main集群中是否有任何数据、配置设置等可能会因为删除而丢失?

postgresql ubuntu upgrade

5
推荐指数
1
解决办法
3478
查看次数

在一个脚本中删除多个数据库

我想弄清楚如何在一个 sql 脚本中删除 PostgreSQL 上的多个数据库。我最好需要它在pgAdmin控制台中执行时和在psql命令行工具中使用时都能工作。当我做:

DROP DATABASE db1;
DROP DATABASE db2;
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

无法从函数或多命令字符串执行 DROP DATABASE

有没有办法解决这个问题?即,有没有办法单独运行每个命令(比如在 MSSQL 上使用“GO”语句时),或者其他一些明智的方法来轻松删除多个数据库?我在开发过程中需要此功能用于维护脚本。

postgresql pgadmin psql scripting

5
推荐指数
1
解决办法
2万
查看次数