Tôi tự hỏi liệu có cách nào để nhập danh sách máy chủ của tôi từ pgAdmin 3 sang pgAdmin 4 không (để tôi không phải tạo lại máy chủ một lần nữa).
Tôi tự hỏi liệu có cách nào để nhập danh sách máy chủ của tôi từ pgAdmin 3 sang pgAdmin 4 không (để tôi không phải tạo lại máy chủ một lần nữa).
Câu trả lời:
Đối với Windows trong C: \ Users \% user% \ AppData \ Roaming \ pgAdmin, bạn có thể tìm thấy pgadmin4.db, nơi pgAdmin4 lưu cấu hình của nó. Đó là định dạng SQLite 3 và với trình duyệt SQLite, bạn có thể mở nó và chèn các máy chủ vào bảng máy chủ, sau đó lưu và chúng được thêm vào pgAdmin4. Lưu ý rằng mật khẩu được lưu mã hóa, vì vậy hãy để NULL nhập chúng sau. Bây giờ bạn có thể tạo tập lệnh sql đọc xuất khẩu đăng ký từ pgAdmin III và chèn vào bảng để xử lý hoàn toàn tự động.
Trong linux (Ubuntu 16.04, trong trường hợp của tôi, nhưng nó cũng phải có trên các hệ thống khác), bạn sẽ tìm thấy một .pgadmin3
tệp trong thư mục chính của bạn. Trong tập tin cấu hình này có các mục như
[Servers/1]
Server=dezso.com
HostAddr=
Description=random
Service=
ServiceID=
DiscoveryID=
Port=5432
StorePwd=false
Rolename=
Restore=true
Database=postgres
Username=dezso
...
Phần 'Máy chủ' ở trên đề cập đến một nhóm máy chủ, điều quan trọng cần lưu ý.
Với một số kỹ năng, bạn có thể trích xuất dữ liệu cần thiết từ đây theo một định dạng phù hợp (nó thậm chí có thể là một loạt các INSERT
tuyên bố, xem bên dưới).
Trong thư mục chính của bạn, bạn sẽ tìm thấy một pgadmin4.db
tệp (vị trí chính xác có thể phụ thuộc vào cách bạn cài đặt pgAdmin4). Đây là cơ sở dữ liệu SQLIte 3 (cũng được mô tả trong câu trả lời khác ) và có một server
bảng trong đó:
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)
);
Trước tiên, bạn phải tạo (các) nhóm máy chủ, điều đó được thực hiện tốt hơn từ UI, vì nó sẽ cho bạn user_id
biết rằng bạn cần để tạo một máy chủ bằng cách sử dụng INSERT INTO server ...
.