Cadangkan portal

Bagian ini menjelaskan cara mencadangkan dan memulihkan penginstalan portal Layanan Developer Apigee di infrastruktur lokal (atau cukup, portal) menggunakan perintah pg_dump dan pg_restore Postgres.

Sebelum melakukan pencadangan

Sebelum dapat mencadangkan portal, Anda harus mengetahui nama database portal.

Properti PG_NAME di file konfigurasi penginstalan portal menentukan nama database portal. Contoh file konfigurasi dalam petunjuk penginstalan portal menggunakan nama "devportal". Jika Anda tidak yakin dengan nama database, periksa file konfigurasi, atau gunakan perintah psql berikut untuk menampilkan daftar database:

psql -h localhost -d apigee -U postgres -l

Dalam hal ini, -U menentukan nama pengguna Postgres yang digunakan oleh portal untuk mengakses database. Ini adalah nilai properti DRUPAL_PG_USER dalam file konfigurasi penginstalan portal. Anda akan diminta untuk memasukkan kata sandi database.

Perintah ini menampilkan daftar database berikut:

    Name     | Owner  | Encoding |   Collate   |    Ctype    |  Access privileges  
-------------+--------+----------+-------------+-------------+---------------------
 apigee      | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/apigee         +
             |        |          |             |             | apigee=CTc/apigee  +
             |        |          |             |             | postgres=CTc/apigee
 devportal   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 newportaldb | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 postgres    | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/apigee          +
             |        |          |             |             | apigee=CTc/apigee
 template1   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/apigee          +
             |        |          |             |             | apigee=CTc/apigee

Cadangkan portal

Untuk mencadangkan portal:

  1. Ubah ke direktori Drupal, /opt/apigee/apigee-drupal secara default:
    cd /opt/apigee/apigee-drupal
  2. Cadangkan instance database Drupal Anda dengan perintah pg_dump:
    pg_dump --dbname=portal_db --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.bak

    Dengan keterangan:

    • portal_db adalah nama database. Ini adalah properti PG_NAME di file konfigurasi penginstalan portal. Jika Anda tidak yakin dengan nama database, lihat Sebelum mencadangkan.
    • host_IP_address adalah alamat IP node portal.
    • drupaladmin adalah nama pengguna Postgres yang digunakan oleh portal untuk mengakses database. Anda menentukan hal ini dengan properti DRUPAL_PG_USER di file konfigurasi penginstalan portal.

    Saat pg_dump meminta sandi pengguna Postgres, gunakan sandi yang Anda tentukan dengan properti DRUPAL_PG_PASS di file konfigurasi penginstalan portal.

    Perintah pg_dump membuat salinan database.

  3. Buat cadangan seluruh direktori root web Drupal Anda. Lokasi webroot default adalah /opt/apigee/apigee-drupal/wwwroot.
  4. Buat cadangan file publik. Secara default, file ini berada di /opt/apigee/apigee-drupal/wwwroot/sites/default/files. Jika itu adalah lokasi yang benar, foto akan dicadangkan pada Langkah 3. Anda harus mencadangkannya secara eksplisit jika memindahkannya dari lokasi default.
  5. Buat cadangan file pribadi di /opt/apigee/data/apigee-drupal-devportal/private.

    Jika Anda tidak yakin dengan lokasi direktori ini, gunakan perintah drush status untuk menentukan lokasi sistem file pribadi.

Pulihkan portal

Setelah mencadangkan portal, Anda dapat memulihkannya dari cadangan menggunakan perintah pg_restore.

Untuk memulihkan dari cadangan ke database yang ada, gunakan perintah berikut:

pg_restore --clean --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak

Untuk memulihkan dari cadangan dan membuat database baru, gunakan perintah berikut:

pg_restore --clean --create --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak

Anda juga dapat memulihkan file cadangan ke direktori utama web Drupal dan file pribadi tersebut.