您可以备份和还原数据库。

备份数据库

要备份数据库,请在设备中运行以下命令之一:

  • 对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)或更高版本的设备:
    /usr/local/desktone/scripts/backup_db.sh –P '<postgres_db_password>'  -U admin -V true --dbport 6432
    
  • 对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备:
    /usr/local/desktone/scripts/backup_db.sh –P '<postgres_db_password>' -U admin -V true 

此命令会将 PostgreSQL 数据库提取到存档文件中,此过程会在 /usr/local/desktone/backup 文件夹中创建一个 <hostname>.<timestamp>.tar.gz 格式的备份文件。

注: “-V true”是一个可选参数,用于启用详细模式。

还原数据库

下面提供了还原数据库的过程。

请注意以下事项:

  • 必须在主设备上执行所有还原操作,然后重新初始化 slony 以将数据库填充到辅助设备。
  • 如果必须还原租户设备,则可能需要还原所有数据库(FDB、EDB 和 AVDB)。

要还原数据库,请执行以下操作:

  1. 运行 sudo bash,并进行身份验证。
  2. 停止两个服务提供程序设备或两个租户设备的 dtService:
    service dtService stop
  3. 停止 slony:
    service dtService stop
    killall slon
  4. 在主设备上,执行以下步骤。
    1. 将备份文件复制到 /tmp 中的某个目录(该文件的格式为 <hostname>.<timestamp>.tar.gz):
      mkdir /tmp/backup_working
      cp /usr/local/desktone/backup/<filename> /tmp/backup_working
      
    2. 提取备份文件:
       cd /tmp/backup_working
       tar zxvf <filename>
    3. 移至 .bak 文件所在的目录并执行还原操作。
      • 对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)或更高版本的设备:
        cd usr/local/desktone/backup
        /usr/local/desktone/scripts/restore_db.sh -d <type> -p <pswd> --dbport 6432 -f <filename>
      • 对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备:
        cd usr/local/desktone/backup
        /usr/local/desktone/scripts/restore_db.sh -d <type> -p <pswd> -f <filename>

      其中:

      • <type> 是文件类型(edb、fdb 或 avdb)。
      • <pswd> 是 postgres 数据库密码。
      • <filenname> 是提取的备份文件的名称。
  5. 在两个设备上,重新初始化 slony。有关说明,请参阅为桌面管理器或组织初始化 Slony
  6. 重新引导两个设备。