Answers:
在linux下(在我的情况下为Ubuntu 16.04,但在其他系统上也必须存在),您会.pgadmin3
在主目录中找到一个文件。在此配置文件中,有类似
[Servers/1]
Server=dezso.com
HostAddr=
Description=random
Service=
ServiceID=
DiscoveryID=
Port=5432
StorePwd=false
Rolename=
Restore=true
Database=postgres
Username=dezso
...
上面的“服务器”部分指的是一个服务器组,需要注意。
通过一些努力,您可以以适当的格式从中提取必要的数据(它甚至可以是一堆INSERT
语句,请参见下文)。
在主目录下,您将找到一个pgadmin4.db
文件(确切位置可能取决于pgAdmin4的安装方式)。这是一个SQLIte 3数据库(也在另一个答案中描述),并且其中有一个server
表:
sqlite> .schema server
CREATE TABLE server (
id INTEGER NOT NULL,
user_id INTEGER NOT NULL,
servergroup_id INTEGER NOT NULL,
name VARCHAR(128) NOT NULL,
host VARCHAR(128) NOT NULL,
port INTEGER NOT NULL CHECK (port >= 1024 AND port <= 65535),
maintenance_db VARCHAR(64) NOT NULL,
username VARCHAR(64) NOT NULL,
ssl_mode VARCHAR(16) NOT NULL CHECK (
ssl_mode IN (
'allow', 'prefer', 'require', 'disable', 'verify-ca', 'verify-full'
)),
comment VARCHAR(1024), password TEXT(64), role text(64), discovery_id TEXT, hostaddr TEXT(1024), db_res TEXT, passfile TEXT, sslcert TEXT, sslkey TEXT, sslrootcert TEXT, sslcrl TEXT, sslcompression INTEGER default 0, bgcolor TEXT(10), fgcolor TEXT(10),
PRIMARY KEY (id),
FOREIGN KEY(user_id) REFERENCES user (id),
FOREIGN KEY(servergroup_id) REFERENCES servergroup (id)
);
您必须首先创建服务器组,最好通过UI user_id
进行创建,因为它将告诉您使用创建服务器组所必需的INSERT INTO server ...
。