Làm cách nào tôi có thể nhập danh sách máy chủ của mình từ pgAdmin 3 sang pgAdmin 4?


12

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).


4
Thật tệ khi họ quên thực hiện đường dẫn di chuyển để nhập pgAdmin 3 sang pgAdmin 4.
Sungam

1
Cảm ơn vì đăng. Còn về OSX thì sao?
chuỗi

Câu trả lời:


4

Đố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.


pgAdmin thiếu tính năng kết nối máy chủ xuất / nhập ...
Stephan

1

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 .pgadmin3tệ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 INSERTtuyê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.dbtệ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 serverbả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_idbiết rằng bạn cần để tạo một máy chủ bằng cách sử dụng INSERT INTO server ....

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.