PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Làm thế nào để xác minh rằng một kho lưu trữ được tạo bởi kho lưu trữ pg_dump là OK và hợp lệ?

Có vẻ như bạn đang cố gắng xác minh tính hợp lệ và đúng đắn của kết xuất PostgreSQL mà bạn vừa thực hiện.

Sự hiểu lầm chính của bạn là bạn không phải khôi phục kết xuất vào cùng một cơ sở dữ liệu mà bạn đã tạo ra từ đó . Bạn có thể khôi phục lại cơ sở dữ liệu khác trên cùng một cụm, hoặc đối với một cơ sở dữ liệu trên một cụm (máy chủ) khác. Xác minh rằng kết xuất được khôi phục mà không có lỗi và dữ liệu giống như bạn mong đợi.

Để có thêm hoang tưởng, hãy dừng máy chủ PostgreSQL và sao chép các tệp trong thư mục dữ liệu. Bằng cách đó, bạn cũng có một bản sao lưu cấp tệp. Lưu ý rằng các bản sao cấp tệp của thư mục dữ liệu PostgreSQL có thể chỉ được đọc bởi cùng một phiên bản chính (8.1 / 8.2 / ...) của PostgreSQL được xây dựng với cùng một tùy chọn trên cùng một nền tảng - do đó, nếu dữ liệu từ 9.2.x trên Windows x64, nó chỉ có thể được đọc bởi Windows khác Máy chủ x64 có cài đặt 9.2.x.

Nếu bạn lo lắng về cơ sở dữ liệu gốc của mình thì có thể bạn không có bản sao lưu. Đây là một quan trọng vấn đề. Bạn cần đọc nhanh chương tài liệu về sao lưu và khôi phục và nhận được một tự động tốt chương trình dự phòng tại chỗ. Hãy xem barman .

Cập nhật sau khi chỉnh sửa câu hỏi :

-F t là một sự lựa chọn kỳ quặc; SQL thuần túy kết xuất hoặc -F c thường có ý nghĩa hơn.

Tệp bạn đã tạo không phải là .gz (nén gzip), dù sao, nó là một .tar lưu trữ, không nén. Nó có thể được trích xuất vào một thư mục chứa đầy các tệp SQL.

Để kiểm tra nó, hãy sử dụng pg_restore để khôi phục nó vào cơ sở dữ liệu trống mới được tạo bằng createdb hoặc CREATE DATABASE lệnh.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các hàm toán học PostgreSQL

  2. Đối với người mới bắt đầu, có nhiều sự khác biệt giữa MySQL và PostgreSQL không

  3. Cách liệt kê tất cả người dùng trong PostgreSQL

  4. Chuyển đổi mối quan hệ nhiều-nhiều thành một-nhiều trong PostgreSQL

  5. Cách phân tích cú pháp JSON trong postgresql