Edge for Private Cloud 4.18.05
本節說明如何使用 Postgres pg_dump
和 pg_restore
指令,備份及還原 Apigee Developer Services 入口網站 (簡稱「入口網站」) 的內部安裝作業。
備份前
您必須先知道入口網站資料庫的名稱,才能備份入口網站。
入口網站安裝設定檔中的 PG_NAME
屬性會指定入口網站資料庫的名稱。入口網站安裝說明中的範例設定檔使用「devportal」這個名稱。如果您不確定資料庫名稱,請檢查設定檔,或使用下列 psql
指令來顯示資料庫清單:
psql -h localhost -d apigee -U postgres -l
其中 -U
會指定入口網站用來存取資料庫的 Postgres 使用者名稱。這是入口網站安裝設定檔中 DRUPAL_PG_USER
屬性的值。系統會提示您輸入資料庫密碼。
這個指令會顯示下列資料庫清單:
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
備份入口網站
如要備份入口網站,請按照下列步驟操作:
- 變更至 Drupal 目錄,預設為
/opt/apigee/apigee-drupal
:cd /opt/apigee/apigee-drupal
- 使用
pg_dump
指令備份 Drupal 資料庫執行個體:pg_dump --dbname=portal_db --host=host_IP_address --username=drupaladmin --password --format=c > /tmp/portal.bak
在此情況下:
- portal_db 是資料庫名稱。這是入口網站安裝設定檔中的
PG_NAME
屬性。如果不確定資料庫名稱,請參閱「備份前」一節。 - host_IP_address 是入口網站節點的 IP 位址。
- drupaladmin 是入口網站用來存取資料庫的 Postgres 使用者名稱。您在入口網站安裝設定檔中使用
DRUPAL_PG_USER
屬性定義此值。
當
pg_dump
提示您輸入 Postgres 使用者密碼時,請使用您在入口網站安裝設定檔中使用DRUPAL_PG_PASS
屬性指定的密碼。pg_dump
指令會建立資料庫的副本。 - portal_db 是資料庫名稱。這是入口網站安裝設定檔中的
- 備份整個 Drupal 網站根目錄。預設的網頁根目錄位置為
/opt/apigee/apigee-drupal/wwwroot
。 - 備份公開檔案。根據預設,這些檔案位於
/opt/apigee/apigee-drupal/wwwroot/sites/default/files
中。如果是正確的位置,系統會在步驟 3 備份這些檔案。如果您將檔案從預設位置移出,則必須明確備份這些檔案。 - 備份
/opt/apigee/data/apigee-drupal-devportal/private
中的私人檔案。如果您不確定這個目錄的位置,請使用
drush status
指令判斷私人檔案系統的位置。
還原入口網站
備份入口網站後,您可以使用 pg_restore
指令從備份還原。
如要從備份還原至現有資料庫,請使用下列指令:
pg_restore --clean --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak
如要從備份資料還原並建立新的資料庫,請使用下列指令:
pg_restore --clean --create --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak
您也可以將備份檔案還原至 Drupal 網站根目錄和私人檔案。