Hướng dẫn sao lưu và khôi phục PostgreSQL Database


Nếu bạn đang sử dụng PostgreSQL, điều quan trọng là phải thận trọng để đảm bảo dữ liệu của người dùng của bạn không bị mất. Bằng cách thường xuyên sao lưu database của bạn. Trong trường hợp vì một lý do nào đó, database của bạn bị lỗi,  bạn hoàn toàn có thể khôi phục nhanh hệ thống của mình.

PostgreSQL chứa các công cụ để thực hiện nhiệm vụ này đơn giản và dễ dàng. Qua bài viết này, vinasupport.com sẽ hướng dẫn các bạn cách sao lưu (backup) và khôi phục (restore) PostgreSQL 10 Database.

Nếu là người mới bắt đầu tìm hiểu về PostgreSQL thì các bạn có thể tham khảo bài viết: Hướng dẫn cài đặt PostgreSQL 10, để có cái nhìn tổng quan về hệ quản trị CSDL này.

1. Backup PostgreSQL Database

PostgreSQL cung cấp cho chúng ta công cụ pg_dump để thực hiện backup database dễ dàng.

Đầu tiên các bạn login vào tài khoản postgres (Tài khoản quản lý mặc định của PostgreSQL)

su - postgres

Sử dụng command sau để sao lưu

pg_dump vinasupport_com > /opt/backup/vinasupport_com.bak

Trong ví dụ trên, mình thực hiện backup database có tên là “vinasupport_com“, và lưu tại đường dẫn /opt/backup/vinasupport_com.bak

2. Khôi phục PostgreSQL Database

Để khôi phục một database từ file backup .bak của PostgreSQL, các bạn sử dụng command sau:

psql vinasupport_com < /opt/backup/vinasupport_com.bak

3. Backup PostgreSQL Database trên một remote server.

Nếu như bạn muốn backup một PostgreSQL Database từ một remote server về local của bạn, các bạn chỉ định thêm 2 tham số -h <server_ip>-p <server_port>

pg_dump -h 172.20.109.100 -p 5432 dbname > dbname.bak

4. Backup và sao lưu toàn bộ database của PostgreSQL

Để backup toàn bộ database của PostgreSQL, các bạn sử dụng công cụ pg_dumpall của PostgreSQL

pg_dumpall > all_pgdb_backup.bak

Để khôi phục toàn bộ database

psql -f all_pgdb_backup.bak postgres

Nguồn: vinasupport.com

 

 

             
SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web