Dalam persekitaran pengeluaran, tidak kira betapa besar atau kecil pangkalan data PostgreSQL anda, sandaran tetap merupakan aspek penting dalam pengurusan pangkalan data. Dalam artikel ini, anda akan belajar bagaimana untuk membuat sandaran dan memulihkan pangkalan data PostgreSQL.
Kami menganggap bahawa anda sudah mempunyai pemasangan kerja sistem pangkalan data PostgreSQL. Jika tidak, baca artikel berikut kami untuk memasang PostgreSQL pada taburan Linux anda.
Anda mungkin juga suka:
- Cara memasang postgresql dari sumber di linux
- Cara Memasang PostgreSQL dan Pgadmin4 di Ubuntu 20.04
- Cara Memasang PostgreSQL 15 dan Pgadmin di RHEL 9
- Cara Memasang PostgreSQL dan PGADMIN di CentOS 8
- Cara memasang postgresql dan pgadmin di rhel 8
Mari bermula ...
Sandarkan pangkalan data PostgreSQL tunggal
PostgreSQL menyediakan utiliti pg_dump untuk membantu anda membuat sandaran pangkalan data. Ia menghasilkan fail pangkalan data dengan arahan SQL dalam format yang boleh dipulihkan dengan mudah pada masa akan datang.
Untuk menyandarkan pangkalan data PostgreSQL , mulakan dengan log masuk ke pelayan pangkalan data anda, kemudian beralih ke akaun pengguna Postgres , dan jalankan PG_DUMP seperti berikut (ganti tecmintdb
dengan nama pangkalan data yang anda ingin sandarkan). Secara lalai, format output adalah fail skrip SQL teks biasa.
<code>$ pg_dump <strong>tecmintdb</strong> > <strong>tecmintdb.sql</strong></code>
PG_DUMP menyokong format output lain juga. Anda boleh menentukan format output menggunakan pilihan -F
, di mana c
bermaksud fail arkib format tersuai, d
bermakna arkib format direktori, dan t
bermaksud fail arkib format tar: Semua format sesuai untuk input ke pg_restore .
Contohnya:
<code>$ pg_dump -F c tecmintdb > tecmintdb.dump OR $ pg_dump -F t tecmintdb > tecmintdb.tar</code>
Untuk membuang output dalam format output direktori, gunakan bendera -f
(yang digunakan untuk menentukan fail output) untuk menentukan direktori sasaran dan bukannya fail. Direktori yang akan dibuat oleh pg_dump tidak boleh wujud.
<code>$ pg_dump -F d tecmintdb -f tecmintdumpdir</code>
Untuk menyandarkan semua pangkalan data PostgreSQL , gunakan alat PG_DUMPALL seperti yang ditunjukkan.
<code>$ pg_dumpall > all_pg_dbs.sql</code>
Anda boleh memulihkan sampah menggunakan PSQL seperti yang ditunjukkan.
<code>$ psql -f all_pg_dbs.sql postgres</code>
Memulihkan pangkalan data PostgreSQL
Untuk memulihkan pangkalan data PostgreSQL , anda boleh menggunakan utiliti PSQL atau PG_Restore . PSQL digunakan untuk memulihkan fail teks yang dicipta oleh pg_dump manakala pg_restore digunakan untuk memulihkan pangkalan data postgreSQL dari arkib yang dibuat oleh pg_dump dalam salah satu format bukan teks (adat, tar, atau direktori).
Berikut adalah contoh cara memulihkan pembuangan fail teks biasa:
<code>$ psql <strong>tecmintdb</strong> tecmintdb.sql</code>
Seperti yang disebutkan di atas, pembuangan format adat bukan skrip untuk PSQL , jadi ia mesti dipulihkan dengan pg_restore seperti yang ditunjukkan.
<code>$ pg_restore -d tecmintdb tecmintdb.dump OR $ pg_restore -d tecmintdb tecmintdb.tar OR $ pg_restore -d tecmintdb tecmintdumpdir</code>
Sandaran pangkalan data PostgreSQL yang dimampatkan
Jika pangkalan data yang anda sandarkan adalah besar dan anda ingin menghasilkan fail output yang lebih kecil, maka anda boleh menjalankan pembuangan mampat di mana anda perlu menapis output pg_dump melalui alat mampatan seperti gzip atau mana -mana kegemaran anda:
<code>$ pg_dump <strong>tecmintdb</strong> | gzip > <strong>tecmintdb.gz</strong></code>
Jika pangkalan data sangat besar, anda boleh membuang selari dengan membuang jadual Number_of_jobs secara serentak menggunakan bendera -j
, seperti yang ditunjukkan.
<code>$ pg_dump -F d -j 5 -f tecmintdumpdir</code>
Adalah penting untuk diperhatikan bahawa pilihan dump selari mengurangkan masa pembuangan sampah, tetapi sebaliknya, ia juga meningkatkan beban pada pelayan pangkalan data.
Sandaran Pangkalan Data PostgreSQL Jauh
PG_DUMP adalah alat klien PostgreSQL biasa, ia menyokong operasi pada pelayan pangkalan data jauh. Untuk menentukan pelayan pangkalan data jauh PG_DUMP harus dihubungi, gunakan pilihan baris arahan -h
untuk menentukan hos jauh dan -p
menentukan port jauh pelayan pangkalan data sedang didengarkan. Selain itu, gunakan bendera -U
untuk menentukan nama peranan pangkalan data untuk disambungkan sebagai.
Ingatlah untuk menggantikan 10.10.20.10 dan 5432 dan TECMIntdB dengan alamat IP host jauh atau nama host, port pangkalan data, dan nama pangkalan data masing -masing.
<code>$ pg_dump -U tecmint -h 10.10.20.10 -p 5432 tecmintdb > tecmintdb.sql</code>
Pastikan pengguna menyambung dari jauh mempunyai keistimewaan yang diperlukan untuk mengakses pangkalan data, dan kaedah pengesahan pangkalan data yang sesuai dikonfigurasikan pada pelayan pangkalan data, jika tidak, anda akan mendapat ralat seperti yang ditunjukkan dalam tangkapan skrin berikut.
Ia juga mungkin untuk membuang pangkalan data secara langsung dari satu pelayan ke yang lain, gunakan utiliti PG_DUMP dan PSQL seperti yang ditunjukkan.
<code>$ pg_dump -U tecmint -h 10.10.20.10 tecmintdb | pqsl -U tecmint -h 10.10.20.30 tecmintdb</code>
Pangkalan Data PostgreSQL Auto Backup Menggunakan Kerja Cron
Anda boleh melakukan sandaran secara berkala menggunakan pekerjaan cron . Pekerjaan Cron adalah cara yang biasa digunakan untuk menjadualkan pelbagai jenis tugas untuk dijalankan pada pelayan.
Anda boleh mengkonfigurasi kerja cron untuk mengautomasikan sandaran pangkalan data PostgreSQL seperti berikut. Ambil perhatian bahawa anda perlu menjalankan arahan berikut sebagai Superuser PostgreSQL:
<code>$ mkdir -p /srv/backups/databases</code>
Seterusnya, jalankan arahan berikut untuk mengedit crontab untuk menambah pekerjaan cron baru.
<code>$ crontab -e</code>
Salin dan tampal baris berikut pada akhir Crontab. Anda boleh menggunakan mana -mana format pembuangan yang dijelaskan di atas.
<code>0 0 * * * pg_dump -U postgres tecmintdb > /srv/backups/postgres/tecmintdb.sql</code>
Simpan fail dan keluar.
Perkhidmatan Cron secara automatik akan mula menjalankan pekerjaan baru ini tanpa memulakan semula. Dan pekerjaan Cron ini akan berjalan setiap hari pada tengah malam, ia adalah penyelesaian minimum untuk tugas sandaran.
Untuk maklumat lanjut mengenai cara menjadualkan pekerjaan cron, lihat: Cara Membuat dan Mengurus Pekerjaan Cron di Linux
Itu sahaja buat masa ini! Adalah idea yang baik untuk membuat data sandaran sebahagian daripada rutin pengurusan pangkalan data anda. Untuk menghubungi kami untuk sebarang pertanyaan atau komen, gunakan borang maklum balas di bawah. Untuk maklumat lanjut, lihat halaman rujukan PG_DUMP dan PG_RESTORE.
Atas ialah kandungan terperinci Cara membuat sandaran dan memulihkan pangkalan data PostgreSQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apabila menghadapi masalah DNS, mula -mula semak fail /etc/resolv.conf untuk melihat sama ada nameserver yang betul dikonfigurasi; Kedua, anda boleh menambah DNS awam secara manual seperti 8.8.8.8 untuk ujian; Kemudian gunakan arahan NSLOOKUP dan Dig untuk mengesahkan sama ada resolusi DNS adalah normal. Sekiranya alat ini tidak dipasang, anda boleh memasang pakej DNSutils atau Bind-UTILS terlebih dahulu; Kemudian periksa status perkhidmatan yang diselesaikan SystemD dan fail konfigurasi /etc/systemd/resolved.conf, dan tetapkan DNS dan fallbackDNS seperti yang diperlukan dan mulakan semula perkhidmatan; Akhirnya periksa status antara muka rangkaian dan peraturan firewall, sahkan bahawa port 53 tidak

Sebagai pentadbir sistem, anda mungkin mendapati diri anda (hari ini atau pada masa akan datang) bekerja di persekitaran di mana Windows dan Linux wujud bersama. Bukan rahsia lagi bahawa beberapa syarikat besar lebih suka (atau harus) menjalankan beberapa perkhidmatan pengeluaran mereka di Windows Boxes

Dibina pada enjin V8 Chrome, Node.js adalah persekitaran runtime JavaScript yang didorong oleh acara terbuka yang dibuat untuk membina aplikasi berskala dan API backend. Nodejs dikenali sebagai ringan dan cekap kerana model I/O yang tidak menyekat dan

Dalam sistem Linux, 1. Gunakan arahan IPA atau HostName-I untuk melihat IP peribadi; 2. Gunakan curlifconfig.me atau curlipinfo.io/ip untuk mendapatkan ip awam; 3. Versi desktop boleh melihat IP peribadi melalui tetapan sistem, dan penyemak imbas boleh mengakses laman web tertentu untuk melihat IP awam; 4. Perintah umum boleh ditetapkan sebagai alias untuk panggilan cepat. Kaedah ini mudah dan praktikal, sesuai untuk keperluan tontonan IP dalam senario yang berbeza.

LinuxcanrunonmodesthardwareWithSpecificMinimumRequirements.a1ghzprocessor (x86orx86_64) disediakan, withadual-corecpurecommended.r Amshouldbeatleast512mbforcommand-lineuseor2gbfordesktopenvironments.diskspacerequiresaminimumof5-10gb, walaupun25gbisbetterforad

Ditulis dalam C, MySQL adalah sumber terbuka, silang platform, dan salah satu sistem pengurusan pangkalan data relasi yang paling banyak digunakan (RDMS). Ini adalah bahagian penting dalam timbunan lampu dan merupakan sistem pengurusan pangkalan data yang popular dalam hosting web, analisis data,

Ubuntu telah lama berdiri sebagai benteng aksesibiliti, menggilap, dan kuasa dalam ekosistem Linux. Dengan ketibaan Ubuntu 25.04, yang dinamakan "Puffin Plucky", kanonik sekali lagi menunjukkan komitmennya untuk menyampaikan

MongoDB adalah pangkalan data NoSQL yang berorientasikan dokumen yang sangat berskala tinggi yang dibina untuk menguruskan trafik yang berat dan sejumlah besar data. Tidak seperti pangkalan data SQL tradisional yang menyimpan data dalam baris dan lajur dalam jadual, data struktur MongoDB dalam j
