备份门户

适用于私有云的 Edge v4.18.05

本部分介绍了如何使用 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 Web 根目录。默认的网站根目录位置为 /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 根目录和私有文件。