Cara Sandaran dan Pulihkan Pangkalan Data PostgreSQL (5 petua)

Cara Sandaran dan Pulihkan Pangkalan Data PostgreSQL (5 petua)

PostgreSQL Pelayan Pangkalan Data (juga dikenali sebagai Postgres) adalah sistem pengurusan pangkalan data pendahuluan. Pelayan Postgres menyediakan PSQL, pg_dump dan pg_dumpall utiliti baris arahan untuk membuat sandaran dan memulihkan pangkalan data.

Artikel ini akan menerangkan pelbagai cara untuk menggunakan pg_dump Perintah ke pangkalan data sandaran. Anda juga akan belajar cara memulihkan sandaran pangkalan data postgres melalui baris arahan.

Sandaran dan pulihkan pangkalan data di postgres

Berikut adalah beberapa pilihan sambungan yang boleh anda gunakan untuk menghubungkan pelayan jauh atau pelayan yang disahkan dengan semua pertanyaan yang diberikan dalam artikel ini.

  • -d, --dbname = dbname Nama pangkalan data
  • -H, -HOST = NAME HOST nama hos pelayan pangkalan data atau IP
  • -p, --port = port Nombor Port Pelayan Pangkalan Data (Lalai: 5432)
  • -U, --username = nama Sambungkan sebagai pengguna pangkalan data yang ditentukan
  • -W, -Password memaksa kata laluan
  • --peranan = rolename Adakah menetapkan peranan sebelum membuang

1. Pangkalan Data Single PostgreSQL

  • Sandaran satu pangkalan data dalam pelayan PostgreSQL. Gunakan pilihan baris Comamnd "-d" untuk memberikan nama pangkalan data ke arahan pg_dump. Pastikan untuk mengganti nama pangkalan data sebenar anda di tempat Mydb.
    pg_dump -h localhost -u postgres -w -d mydb> mydb.SQL  
  • Pulihkan satu pangkalan data dari sandaran di postgresql. Cukup gunakan arahan "PSQL" untuk memulihkan pangkalan data PostgreSQL.
    psql -h localhost -u postgres -w -d mydb < mydb.sql  

2. Sandaran postgresql semua pangkalan data

  • Sandaran Semua pangkalan data dalam PostgreSQL menggunakan pg_dumpall utiliti.
    pg_dumpall -h localhost -u postgres -w> alldbs.SQL  
  • Kembalikan: Semua sandaran pangkalan data menggunakan arahan berikut.
    psql -h localhost -u postgres -w < alldbs.sql  

3. Jadual single sandaran postgresql

  • Sandaran: satu jadual bernama MyTable dari pangkalan data Mydb.
    pg_dump -h localhost -u postgres -d mydb -w -t table_1> mydb -table_1.SQL  
  • Kembalikan: sandaran jadual tunggal ke pangkalan data. Pastikan fail sandaran anda hanya mengandungi sandaran jadual tunggal yang ingin anda pulihkan.
    psql -h localhost -u postgres -w -d mydb < mydb-table_1.sql  

4. Sandaran dan pulihkan pangkalan data yang dimampatkan

  • Sandaran Pangkalan Data PostgreSQL dalam format termampat. Gunakan utiliti baris komando gzip untuk menerima data sandaran paip dan buat fail arkib.
    pg_dump -h localhost -u postgres -w -d mydb | gzip> mydb.SQL.Gz  
  • Pulihkan pangkalan data dari fail sandaran dimampatkan secara langsung. Di sini Gunzip akan mengeluarkan fail sandaran dan menghantar data ke arahan PSQL melalui antara muka paip.
    Gunzip -c mydb.SQL.Gz | psql -h localhost -u postgres -w -d mydb  

5. Sandaran berpecah dalam pelbagai fail dan pulihkan

  • Sandaran: Pangkalan Data PostgreSQL dan Sandaran Berpecah dalam pelbagai fail dengan saiz yang ditentukan. Ia membantu kami membuat sandaran pangkalan data yang besar dan dipindahkan ke tuan rumah lain dengan mudah. Seperti di bawah contoh, ia akan membahagikan fail sandaran 100MB.
    pg_dump -h localhost -u postgres -w -d mydb | berpecah -b 100m - mydb.PQL  
  • Pulihkan: sandaran pangkalan data dari pelbagai fail sandaran berpecah.
    kucing mydb.SQL* | psql -h localhost -u postgres -w -d mydb  
  • Sandaran: pangkalan data dalam fail split yang dimampatkan dengan saiz yang ditentukan.
    pg_dump -h localhost -u postgres -w -d mydb | gzip | berpecah -b 100m - mydb.SQL.Gz  
  • Pulihkan: pangkalan data dari pelbagai fail fail termampat.
    kucing mydb.SQL.gz* | Gunzip | psql -h localhost -u postgres -w -d mydb  

Kesimpulan

Dalam tutorial ini, anda telah belajar mengenai sandaran dan memulihkan pangkalan data PostgreSQL Server, Jadual.