Utwórz kopię zapasową portalu

W tej sekcji opisano, jak utworzyć kopię zapasową i przywrócić lokalną instalację portalu Apigee Developer Services (lub po prostu portalu) za pomocą poleceń Postgres pg_dump i pg_restore.

Zanim utworzysz kopię zapasową

Zanim utworzysz kopię zapasową portalu, musisz znać nazwę jego bazy danych.

Właściwość PG_NAME w pliku konfiguracji instalacji portalu określa nazwę bazy danych portalu. W przykładowym pliku konfiguracji w instrukcjach instalacji portalu użyto nazwy „devportal”. Jeśli nie masz pewności, jaka jest nazwa bazy danych, sprawdź plik konfiguracyjny lub użyj tego polecenia psql, aby wyświetlić listę baz danych:

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

Gdzie -U określa nazwę użytkownika Postgres używaną przez portal do uzyskiwania dostępu do bazy danych. Jest to wartość właściwości DRUPAL_PG_USER w pliku konfiguracji instalacji portalu. Pojawi się prośba o podanie hasła do bazy danych.

To polecenie wyświetla tę listę baz danych:

    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

Tworzenie kopii zapasowej portalu

Aby utworzyć kopię zapasową portalu:

  1. Przejdź do katalogu Drupal, domyślnie /opt/apigee/apigee-drupal:
    cd /opt/apigee/apigee-drupal
  2. Utwórz kopię zapasową instancji bazy danych Drupal za pomocą polecenia pg_dump:
    pg_dump --dbname=portal_db --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.bak

    Gdzie:

    • portal_db to nazwa bazy danych. Jest to właściwość PG_NAME w pliku konfiguracji instalacji portalu. Jeśli nie masz pewności co do nazwy bazy danych, zapoznaj się z sekcją Zanim utworzysz kopię zapasową.
    • host_IP_address to adres IP węzła portalu.
    • drupaladmin to nazwa użytkownika Postgres używana przez portal do uzyskiwania dostępu do bazy danych. Zostało to zdefiniowane za pomocą właściwości DRUPAL_PG_USER w pliku konfiguracji instalacji portalu.

    Gdy pg_dump poprosi Cię o hasło użytkownika Postgres, użyj hasła określonego we właściwości DRUPAL_PG_PASS w pliku konfiguracji instalacji portalu.

    Polecenie pg_dump tworzy kopię bazy danych.

  3. Utwórz kopię zapasową całego katalogu głównego witryny Drupal. Domyślna lokalizacja katalogu głównego serwera WWW to /opt/apigee/apigee-drupal/wwwroot.
  4. Utwórz kopię zapasową plików publicznych. Domyślnie te pliki znajdują się w folderze /opt/apigee/apigee-drupal/wwwroot/sites/default/files. Jeśli to właściwa lokalizacja, kopia zapasowa zostanie utworzona w kroku 3. Jeśli zostały przeniesione z domyślnej lokalizacji, musisz jawnie utworzyć ich kopię zapasową.
  5. Utwórz kopię zapasową prywatnych plików w aplikacji /opt/apigee/data/apigee-drupal-devportal/private.

    Jeśli nie masz pewności, gdzie znajduje się ten katalog, użyj polecenia drush status, aby określić lokalizację prywatnego systemu plików.

Przywracanie portalu

Po utworzeniu kopii zapasowej portalu możesz przywrócić go z kopii zapasowej za pomocą polecenia pg_restore.

Aby przywrócić dane z kopii zapasowej do istniejącej bazy danych, użyj tego polecenia:

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

Aby przywrócić dane z kopii zapasowej i utworzyć nową bazę danych, użyj tego polecenia:

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

Możesz też przywrócić pliki kopii zapasowej do katalogu głównego Drupal i plików prywatnych.