备份门户

开发者服务门户 v. 4.17.01

本文档介绍了如何使用 Postgres pg_dumppg_restore 命令在门户的本地安装中执行备份和恢复任务。

备份前须知

您可以在门户安装配置文件中使用 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. 备份您的 Drupal 数据库实例。pg_dump 命令会创建数据库的副本:

    pg_dump --dbname=devportal --host=192.168.56.101 --username=drupaladmin --password --format=c > /tmp/portal.bak

    其中:
    • dbname 用于指定数据库名称,该名称由门户安装配置文件中 PG_NAME 属性指定。
    • host 用于指定门户节点的 IP 地址。
    • username 指定门户安装配置文件中的 DRUPAL_PG_USER 属性所指定的门户访问数据库所用的 Postgres 用户名。
    • 系统会提示您输入门户安装配置文件中的 DRUPAL_PG_PASS 属性所定义的 Postgres 用户密码。
  3. 备份整个 Drupal 网络根目录。
    默认安装位置为 /opt/apigee/apigee-drupal,但您可能已对其进行了更改。

    如果您不确定此目录的位置,请使用 drush status 命令或 Drupal 菜单中的 Configuration > Media > File 条目来确定公共文件系统和私有文件系统路径的位置(以便执行下一步)。
  4. 备份 /opt/apigee/data/apigee-drupal-devportal/private 中的文件。

恢复门户

如需从备份恢复到现有数据库,请使用以下命令:

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

如需从备份恢复并创建新数据库,请使用以下命令:

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

您还可以将备份文件恢复到 Drupal Web 根目录和私有文件。