备份门户

本部分介绍如何使用 Postgres pg_dumppg_restore 命令备份和恢复 Apigee 开发者服务门户(简称“门户”)的本地安装。

在您备份之前

必须知道门户数据库的名称才能备份门户。

门户安装配置文件中的 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

备份门户

如需备份门户,请执行以下操作:

  1. 切换到 Drupal 目录(默认为 /opt/apigee/apigee-drupal):
    cd /opt/apigee/apigee-drupal
  2. 使用 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 命令会创建数据库的副本。

  3. 备份整个 Drupal 网站根目录。默认 Webroot 位置为 /opt/apigee/apigee-drupal/wwwroot
  4. 备份公开文件。默认情况下,这些文件位于 /opt/apigee/apigee-drupal/wwwroot/sites/default/files。如果这是正确的位置,系统会在第 3 步中备份这些文件。如果您从默认位置删除了这些文件,则必须明确备份这些文件。
  5. 备份 /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 Web 根目录和不公开文件。