Tôi cần di chuyển và nâng cấp cơ sở dữ liệu PostGIS rất lớn (~ 320 GB) từ server1 (PostgreQuery 9.1, PostGIS 1.5) lên server2 (PostgreQuery 9.3, PostGIS 2.1).
Quá trình nâng cấp được ghi chép lại . Vấn đề là tôi không có đủ dung lượng trên server1 để kết xuất tệp ở đó, kiểm tra nó, sau đó sao chép nó vào server2 và xác minh các khoản tiền. Tôi đã thử:
- Đường ống đổ từ server1 đến server2 bằng cách sử dụng
nc
. - Viết tệp kết xuất trực tiếp vào hệ thống tệp server2 được gắn trên server1 bằng cách sử dụng
sshfs
.
Cả hai lần tệp kết xuất dường như đã bị hỏng. pg_restore
đã phá vỡ ở những nơi khác nhau với các lỗi như thế này:
pg_restore: [compress_io] could not uncompress data: incorrect data check
Bất cứ ai có thể đề xuất một cách tốt hơn để thực hiện di chuyển và nâng cấp này?
CẬP NHẬT: Đã thử NFS (và đã thử SSHFS một lần nữa). Rõ ràng là các hệ thống tập tin từ xa này không thể chuyển nhiều dữ liệu này . Các khối bị thiếu rõ ràng từ tệp SQL kết quả, gây ra lỗi cú pháp như thế này trong quá trình nhập:
ERROR: invalid input syntax for integer: "8266UPDATE spatial_ref_sys o set auth_name = n.auth_name, auth_srid = n.auth_srid, srtext = n.srtext, proj4text = n.proj4text FROM _pgis_restore_spatial_ref_sys n WHERE o.srid = n.srid;"