---
schema_version: "1"
id: 63670e9bc57e82a40c6a64cc7d74367941826ae00f6e1447648576875e6d915c
title: 执行 Tableau Server 的完整备份和还原
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/server-linux/backup_restore.md
canonical_url: https://help.tableau.com/current/server-linux/zh-cn/backup_restore.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 02e32c359ca2a96a588fd52296b7c9679ef88c84479df3c6464c319b16a6b4d5
description: Perform a full backup and restore of Tableau Server topology, configuration, and repository data.
---
[跳转到主要内容](#main-content)

# 执行 Tableau Server 的完整备份和还原

您可以使用以下步骤来备份 Tableau Server 部署。具体而言，这些步骤介绍如何通过备份数据和资产的集合恢复服务器的克隆。

**注意：**备份过程可能会长时间运行。由于备份在运行时无法运行其他作业，因此我们建议您在非工作时间运行备份。

## 备份数据类型

Tableau Server 可以生成两种类型的备份数据。如果您必须在恢复方案中还原服务器，我们建议对每种类型都执行定期备份：

- **Tableau Server**管理的数据****包含 Tableau PostgreSQL 数据库或存储库以及文件存储，其中包含工作簿和用户元数据、数据提取文件以及配置数据。使用 TSM 创建备份时，所有这些数据都保存在一个扩展名为 .tsbak 的文件中。此数据使用 `[tsm maintenance backup](https://help.tableau.com/current/server-linux/zh-cn/cli_maintenance_tsm.htm#tsm)` 命令进行备份。
    
    > [!IMPORTANT]
    > 
    > **注意：**配置外部文件存储后，您不能使用 `tsm maintenance backup` 命令备份 Tableau Server 数据。有关如何备份此数据的信息，请参见[使用外部文件存储进行备份和还原](https://help.tableau.com/current/server-linux/zh-cn/server_external_filestore_storage_backup_restore.htm)。
    
    - 您只能从身份存储与运行服务器类型相同的备份中进行还原。例如，使用本地身份验证的服务器中的备份只能还原到使用本地身份验证初始化的 Tableau Server，但使用 Active Directory 身份验证的服务器中的备份无法还原到使用本地身份验证初始化的服务器。
    - 您只能将备份文件还原到与在其上创建备份的版本相同或比该版本新的 Tableau Server 版本。您无法还原到 Tableau 的较旧版本。
    - **重要信息：** 如果您使用 [tsm maintenance（备份和还原）](https://help.tableau.com/current/server-linux/zh-cn/cli_maintenance_tsm.htm)方法执行蓝/绿升级或手动升级 Tableau Server 2021.4（或更低版本），则必须启用 `legacy-identity-mode`，然后才能还原到 Tableau Server 2022.1（或更高版本）。有关详细信息，请参见[对身份迁移问题进行故障排除](https://help.tableau.com/current/server-linux/zh-cn/identity_migration_troubleshoot.htm)。
    - 从版本 2022.3 开始，不支持使用 tabadmin 创建的备份（“TSM 之前的备份”）。您无法将 TSM 之前的备份还原到 Tableau Server 版本 2022.3 或更高版本。
- 配置和拓扑数据：包括完全恢复服务器所需的大多数服务器配置信息。SMTP、通知、某些身份验证资产都是可导出进行备份的配置数据的示例。拓扑数据定义 Tableau Server 进程在单服务器和多节点部署中的配置方式。配置和拓扑数据使用 `[tsm settings export](https://help.tableau.com/current/server-linux/zh-cn/cli_settings_tsm.htm#TSMExport)` 命令进行备份。

**注意：**您可以更改 `[tsm maintenance backup](https://help.tableau.com/current/server-linux/zh-cn/cli_maintenance_tsm.htm#tsm)` 命令使用的文件路径的默认值。有关详细信息，请参见[tsm File Paths](https://help.tableau.com/current/server-linux/zh-cn/cli_default_filepaths_tsm.htm)。

## 备份需要手动过程的资产

某些配置数据未包括在 `tsm settings export` 命令中，因此必须手动记录和还原。`tsm settings export` 操作中会排除以下配置数据。在备份维护过程中，您应记录以下 Tableau Server 配置数据：

- 系统用户帐户。Tableau Server 安装程序会创建非特权用户帐户 `tableau`。此帐户用于访问 Tableau Server 资源。可在安装期间更改此帐户。如果您未更改此帐户，则无需记录它。
- TSM 组成员身份。Tableau Server 会创建两个组：`tableau` 和 `tsmadmin`。如果在安装 Tableau Server 时配置了替代组，则您将需要记录组名称。
    
    在所有情况下，您都应记录这些组中的用户帐户。若要查看组中的成员身份，请运行以下命令：`grep <group_name> /etc/group`。
- 协调服务部署配置。如果运行多节点群集，请记录哪些群集在运行协调服务进程。若要查看节点上的进程配置，请运行 `tsm topology list-nodes -v`。
- 自定义设置。如果组织为 Tableau Server 网页使用自定义标题或登录徽标，您应随备份组合一起包括这些资产的副本。请参见[tsm customize](https://help.tableau.com/current/server-linux/zh-cn/cli_customize.htm)。
- 大多数身份验证资产。虽然文件的位置可能包含在导出的 `settings.json` 文件中，但 TSM 不会备份大多数证书文件、密钥文件、密钥表文件或者其他身份验证相关资产。验证您尝试移动的任何资产是否都不需要重新创建。
    
    有三种例外情况：
    
    - 将对内部 PostgreSQL 数据库（如果启用）的公共证书和私钥进行备份。
    - 将对外部 SSL 的证书和密钥进行备份并包括在配置数据中。
    - 将对通过 [tsm security custom-cert add](https://help.tableau.com/current/server-linux/zh-cn/cli_security_tsm.htm#custom-cert-add)（如果添加）安装的自定义证书进行备份。
    
    但是，将不会备份所有其他身份验证相关资产。举例来说，如果您使用 [tsm data-access repository-access enable](https://help.tableau.com/current/server-linux/zh-cn/cli_data-access.htm#repository-access-enable) 命令启用了对 PostgreSQL 数据库的访问，请确保记录您配置的每个帐户的名称/密码对。将不会备份这些凭据。相互 SSL 的证书和密钥不会包括在备份中。
- LDAP 资产。TSM 不会备份密钥表文件、配置文件或者其他 LDAP 相关资产。

内部服务器密文和存储库密码是不会导出的加密相关配置。不过，您无需记录配置值。在还原过程中初始化新实例时，将会创建新的密文。

## 为恢复备份 Tableau Server

Tableau Server 包括一些命令，您可以运行这些命令来生成 Tableau Server 的备份数据。

**注意：**在备份 Linux 版 Tableau Server 时，非特权用户必须对在其中写入备份文件的网络共享具有写入访问权限。否则备份将失败。

若要备份服务器拓扑和配置数据，请使用 [tsm settings](https://help.tableau.com/current/server-linux/zh-cn/cli_settings_tsm.htm) 命令。

1. 运行 `[tsm settings export](https://help.tableau.com/current/server-linux/zh-cn/cli_settings_tsm.htm#TSMExport)` 命令时，拓扑和配置数据都会包括在内。数据以 json 文件形式导出。通过运行以下命令来指定 json 文件的名称和位置：
    
    `tsm settings export -f <filename>.json`
    
    **注意：**由于备份包含密文，因此我们建议您对备份进行加密，并将其存储在安全的地方。有关 Tableau Server 密文的详细信息，请参见[管理服务器密文](https://help.tableau.com/current/server-linux/zh-cn/security_secret_storage.htm)。
2. 备份存储库和文件存储数据。存储库数据使用 `[tsm maintenance backup](https://help.tableau.com/current/server-linux/zh-cn/cli_maintenance_tsm.htm#tsm)` 命令进行备份。通过运行以下命令来指定备份文件的名称和位置：
    
    `tsm maintenance backup -f <filename>.tsbak -d`
    
    系统将在数据目录的临时位置中汇编备份文件，并将该文件写入 TSM `basefilepath.backuprestore` ：
    
    `` `/var/opt/tableau/tableau_server/data/tabsvc/files/backups/` ```<filename>.tsbak`
    
    有关备份文件的写入位置以及如何更改该位置的详细信息，请参见[tsm File Paths](https://help.tableau.com/current/server-linux/zh-cn/cli_default_filepaths_tsm.htm)。**注意：**即使您更改备份位置，备份过程也会使用数据目录中的临时位置来汇编备份文件。
    
    > [!IMPORTANT]
    > 
    > **注意：**如果文件存储是在 Tableau Server 外部配置的，则不能使用 tsm maintenance backup 命令来备份 Tableau Server 数据。有关如何备份此数据的详细信息，请参见[使用外部文件存储进行备份和还原](https://help.tableau.com/current/server-linux/zh-cn/server_external_filestore_storage_backup_restore.htm)。

## 还原核心 Tableau Server 功能

在恢复方案中，以下过程使用前两个部分中的资产重建 Tableau Server。

**注意：**如果只需要恢复其他方面功能正常的 Tableau Server 上的存储库，请参见[还原备份内容](https://help.tableau.com/current/server-linux/zh-cn/db_restore.htm#db)。如果运行分布式部署，并且初始节点已出现故障，请参见[从初始节点故障中恢复](https://help.tableau.com/current/server-linux/zh-cn/distrib_ha_init_node_fail.htm)。

拓扑和配置备份数据必须来自于 Linux 版 Tableau Server。您无法通过在 Windows 版 Tableau Server 中生成的备份文件还原配置数据。若要将通过 Windows 版 Tableau Server 生成的备份还原到 Linux 版 Tableau Server，请参见[将 Tableau Server 从 Windows 迁移到 Linux](https://help.tableau.com/current/server-linux/zh-cn/restore_from_backup_linux.htm)。

您必须准备好以下资产：

- 拓扑和配置数据：这是 `tsm settings export` 命令生成的 json 文件。
- 存储库备份文件：这是 `tsm maintenance backup` 命令生成的文件，扩展名为 .tsbak。
    
    您只能从身份存储与运行服务器类型相同的备份中进行还原。例如，使用本地身份验证的服务器中的备份只能还原到使用本地身份验证初始化的 Tableau Server，但使用 Active Directory 身份验证的服务器中的备份无法还原到使用本地身份验证初始化的服务器。
    
    使用 `tsm maintenance restore` 还原 Tableau 数据时，备份文件 (`.tsbak`) 中的内容会覆盖数据提取文件以及 PostgreSQL 数据库的内容。如果您正在运行 Tableau Server 的分布式安装，请在运行 TSM 控制器的节点（通常是初始节点）上执行还原。
- 备份资产：如前一部分中所述，这些资产包括记录的配置的列表。

还原独立 Tableau Server

1. 在要还原 Tableau Server 的计算机上，[安装和初始化 TSM](https://help.tableau.com/current/server-linux/zh-cn/setup.htm)。如果您的组织使用非默认系统用户帐户（如本主题的前面部分中所述），则您必须在此步骤中指定用户。
2. [激活并注册 Tableau Server](https://help.tableau.com/current/server-linux/zh-cn/activate.htm)。
3. （可选）。[配置本地防火墙](https://help.tableau.com/current/server-linux/zh-cn/config_firewall_linux.htm)。
4. （可选）。验证 LDAP。
5. 初始化 Tableau Server。请参见[配置初始节点设置](https://help.tableau.com/current/server-linux/zh-cn/config_general.htm)。
6. 导入拓扑和配置数据。将拓扑和配置 json 备份文件复制到计算机。通过运行以下命令来导入 json 文件：
    
    `tsm settings import -f <filename>.json`
7. （可选）。应用待处理的更改。在命令提示符处，运行：
    
    `tsm pending-changes apply`
8. 重新启动 Tableau Server。在命令提示符处，运行：
    
    `tsm restart`
9. 还原存储库数据。请参见[还原备份内容](https://help.tableau.com/current/server-linux/zh-cn/db_restore.htm#db)。
10. （可选）。重新填充 TSM 组成员身份。使用此命令向组中添加用户：
    
    `sudo usermod -G <group_name> -a <username>`

还原 Tableau Server 群集

1. 在初始节点上，[安装和初始化 TSM](https://help.tableau.com/current/server-linux/zh-cn/setup.htm)。如果您的组织使用非默认系统用户帐户（如本主题的前面部分中所述），则您必须在此步骤中指定用户。
2. 在初始节点上，[激活并注册 Tableau Server](https://help.tableau.com/current/server-linux/zh-cn/activate.htm)。
3. （可选）。在初始节点上，[配置本地防火墙](https://help.tableau.com/current/server-linux/zh-cn/config_firewall_linux.htm)。
4. 在初始节点上，验证 LDAP（可选），并初始化 Tableau Server。请参见[配置初始节点设置](https://help.tableau.com/current/server-linux/zh-cn/config_general.htm)。
5. 在初始节点上，运行 `tsm topology nodes get-bootstrap-file --file <path\file>.json`。
6. 将 bootstrap.json 文件复制到群集中的所有附加节点。
7. 在群集中的每个附加节点上：

1. 安装 Tableau Server 软件包。
2. 导航到脚本目录。
3. 在初始节点和附加节点之间发起通信：
    
    `sudo ./initialize-tsm -b <path-to-bootstrap>.json -u <admin-user-on-first-node> --accepteula`

9. 在初始节点上，运行 `tsm topology list-nodes -v`，并确保节点名称在导出的拓扑设置中未更改。_如果节点名称已更改，则应使用新名称手动更新拓扑设置，或者应手动配置进程_。
10. 每个节点上都需要群集控制器进程，并且需要显式添加。从初始节点中，向每个附加节点添加一个群集控制器实例，其中 `<nodeID>` 是附加节点之一的 ID。将进程分别添加到每个节点。在本例中，我们将群集控制器添加到节点 2 和 3：
    
    tsm topology set-process -n node2 -pr clustercontroller -c 1
    tsm topology set-process -n node3 -pr clustercontroller -c 1
    tsm pending-changes apply
11. 从初始节点中[部署协调服务整体](https://help.tableau.com/current/server-linux/zh-cn/distrib_ha_zk.htm)。整体配置必须与以前的配置匹配。
12. 在初始节点上，导入拓扑和配置数据。将拓扑和配置 json 备份文件复制到计算机。通过运行以下命令来导入 json 文件：
    
    `tsm settings import -f <filename>.json`
13. 在初始节点上，应用未完成的更改。在命令提示符处，运行：
    
    `tsm pending-changes apply`
14. 在初始节点上，重新启动 Tableau Server。在命令提示符处，运行：
    
    `tsm restart`
15. 在初始节点上，还原存储库数据。请参见[还原备份内容](https://help.tableau.com/current/server-linux/zh-cn/db_restore.htm#db)。
16. 在初始节点上，重新填充 TSM 组成员身份。使用此命令向组中添加用户：
    
    `sudo usermod -G <group_name> -a <username>`

## 还原其他功能

如果以前的服务器配置为具有以下功能，则您将需要在还原的服务器上重新启用和重新配置这些功能：

- **身份验证解决方案：**外部 SSL、OpenID、SAML（服务器范围和站点级别）和受信任的身份验证。请参见[身份验证](https://help.tableau.com/current/server-linux/zh-cn/security_auth.htm)。这些解决方案的证书文件、密钥文件和其他资产未包括在备份中，必须在还原的服务器上重新配置。
    
    - **有关外部 SSL 的更多信息：**外部 SSL 的证书和密钥包含在备份配置数据中，并会自动还原。但是，您必须在还原的服务器上重新启用和重新配置外部 SSL。请参见[针对与来往 Tableau Server 的外部 HTTP 流量配置 SSL](https://help.tableau.com/current/server-linux/zh-cn/ssl_config.htm)。
    - **有关 SAML 的更多信息：**请参见有关在还原后重新配置 SAML 的知识文章 -[“从完整备份还原后因错误‘未能从我们的 SAML 配置加载 SP 私钥’导致无法启动 Tableau Server”](https://help.salesforce.com/s/articleView?id=001475210&type=1)。
- **站点自定义项：**请参见[tsm customize](https://help.tableau.com/current/server-linux/zh-cn/cli_customize.htm)。
- **启用对 PostgreSQL 存储库的访问：**请参见[tsm data-access repository-access enable](https://help.tableau.com/current/server-linux/zh-cn/cli_data-access.htm#repository-access-enable)。

## 在还原之后重新加密数据提取

（可选）如果要使用静态数据提取加密功能，您可以在还原备份之后使用不同的加密密钥对数据提取进行重新加密。请参见[静态数据提取加密](https://help.tableau.com/current/server-linux/zh-cn/security_ear.htm)。

运行 `tabcmd reencryptextracts <site-name>` 以对给定站点上的数据提取进行重新加密。有关详细信息，请参见[reencryptextracts](https://help.tableau.com/current/server-linux/zh-cn/tabcmd_cmd.htm#reencryptextracts_tabcmd)。在您存储加密数据提取的每个站点上运行此命令。根据站点上加密数据提取的数量，此操作可能会占用大量的服务器处理负载。考虑在工作时间以外运行此操作。