Hỏi về việc full đĩa khi build database trong Postgresql

Các bạn và anh chị thân mến. Mình đang gặp vấn đề như sau:

Mình build một postgresql database từ các file csv. Mình đang trên ubuntu server 18.04. Khi đang build thì nó bị lỗi full disk. Trong khi mình có một phân vùng đã mount vào còn dư tới 300gb.

Câu hỏi của mình là làm sao biết cái database postgresql được build nó nằm ở đâu. Làm sao ép nó vào cái phân vùng còn trống của mình.

Mình hoàn toàn newbie linux nên mong các ban chia sẻ kinh nghiệm. Mình cảm ơn nhiều.

Có vẻ đây là cái bạn cần

3 Likes

Cảm ơn bạn, mình cũng vừa tìm ra cái này.

Cho mình hỏi thêm là nếu move qua một vị trí mới, nhưng sau đó lỡ có ai vô tình xóa cái folder chưa cái data directory thì nó đi luôn cái data directory của postgres thì sao nhỉ. Thường trong thực tế họ xử lý sao ta.

Các cách backup bảo toàn dữ liệu m biết.

  • Cách 1: dùng pgdump backup toàn bộ database theo chu kỳ (vd 1 ngày 1 lần) giữ file backup ở 1 chỗ an toàn nếu xảy ra mất dữ liệu thì restore lại. ưu điểm của sài cách này là đơn giản, phù hợp với dữ liệu nhỏ, nhược điểm là nếu dữ liệu mới insert/update/delete mà chưa đến chu kỳ backup thì mất.
  • Cách 2: sử dụng tính năng Replication của postgres, nguyên lý là chỉ có 1 node ghi dữ liệu, dữ liệu ở node này được replicate, sao chép lại sang 1 node khác real-time nên ko lo bị mất dữ liệu, cách này nhược điểm là bạn phải có thêm ít nhất 1 máy chủ khác để backup, tốn thêm tí tiền :smiley: .
  • Cách 3: sài postgres cloud của aws, google cloud, azure thì nó có sẵn chế độ backup rồi, ổ đĩa chắc tốt nên ko cần lo lắng phần backup, lo cho túi tiền thôi :)).
  • Cách 4: nếu muốn 1 hệ thống có khả năng mở rộng, triển khai đơn giản hơn cách 2, ko muốn phụ thuộc vào bất cứ bên cloud nào (tự lắp server…) thì có thể sài 1 số Distributed SQL như yugabytedb, Tidb. Ở Việt Nam m thấy có zalopay đang sài Tidb https://medium.com/zalopay-engineering/tagged/tidb
5 Likes

Cảm ơn bạn, mình sẽ suy nghĩ các phương án bạn đề xuất.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?