Move the Repository Process

Tableau Server relies on the PostgreSQL repository to store server data. There must always be at least one active instance of the repository in any Tableau Server installation, and you can have a maximum of two instances (one active, one passive) if you have at least three nodes in your installation. You cannot remove a repository instance if it is the only instance.

This means that if you want to move the only instance of your repository from one node to another node, you need to add a second instance and synchronise the new repository with the old one before you remove the old one. Synchronise repository instances by starting server. If you've added a new repository, it will automatically synchronise with the existing instance.

If you are deleting a node from your server cluster and that node is hosting the only instance of the repository, you must add a second instance of the repository and synchronise the instances before removing the node.

If you are also moving the file store, you can move the repository at the same time. See Move the File Store Process.

Before making a change to the repository, create a full backup of Tableau Server. For more information, see tsm maintenance backup.

Important: You cannot add a second repository instance and remove the first one in the same step. You must have both running so the contents of the first is synchronised with the second, before you remove the original instance.

The steps for moving the repository are:

  1. Add a new instance of the repository to another node, start server and wait for it to synchronise with the first repository.

  2. Remove the instance of the repository from the original node.

To move a repository you need to first add a second instance on a second node, and then after the two instances have synchronised all the data in the original repository, remove the original instance. These steps must be done separately to allow for the synchronisation of content between the two instances.

Add a new instance of the repository.

  1. Open TSM in a browser:

    https://<tsm-computer-name>:8850

    For more information, see Sign in to Tableau Services Manager Web UI.

  2. Click the Configuration tab.

  3. For the node you are adding the repository to:

    Select Repository (pgsql).

  4. Click Pending Changes at the top of the page:

    The Pending Changes list displays.

    If you are configuring a three- or five-node cluster and have not deployed a Coordination Service ensemble, a warning will display. You can continue, and deploy a Coordination Service ensemble in a separate step. For details on deploying a Coordination Service ensemble, see Deploy a Coordination Service Ensemble.

  5. Click Apply Changes and Restart and Confirm to confirm a restart of Tableau Server.

  6. After Tableau Server has restarted, on the Status tab, verify that all processes are active.

Remove an instance of the repository.

  1. In TSM, on the Status tab, verify that all processes are active. When both repositories show as Active, you can remove the first one.

  2. Click the Configuration tab.

  3. For the node you're removing the repository from, clear the Repository box.

  4. Click Pending Changes at the top of the page.

    If you are configuring a three- or five-node cluster and have not deployed a Coordination Service ensemble, a warning will display. You can continue, and deploy a Coordination Service ensemble in a separate step. For details on deploying a Coordination Service ensemble, see Deploy a Coordination Service Ensemble.

  5. Click Apply Changes and Restart and Confirm to confirm a restart of Tableau Server.

To move a repository you need to first add a second instance on a second node, and then after the two instances have synchronised all the data in the original repository, remove the original instance. These steps must be done separately to allow for the synchronisation of content between the two instances.

Add a new instance of the repository.

  1. Add the repository (pgsql) to another node:

    tsm topology set-process -n <nodeID> -pr pgsql -c 1
  2. Apply the changes. If the pending changes require a server restart, the pending-changes apply command will display a prompt to let you know a restart will occur. This prompt displays even if the server is stopped, but in that case, there is no restart. You can suppress the prompt using the --ignore-prompt option, but this does not change the restart behaviour. If the changes do not require a restart, the changes are applied without a prompt. For more information, see tsm pending-changes apply.

    tsm pending-changes apply
  3. Wait for the new repository on the second node to synchronise with the repository on the first node.

    tsm status -v

    Wait until the new repository status shows as "passive".

Remove an instance of the repository.

Once the new instance of the repository is fully synchronised and shows as "passive" you can remove the original instance:

  1. Remove the repository from the first node by setting the process count to 0 (zero):

    tsm topology set-process -n <nodeID> -pr pgsql -c 0
  2. Apply the change. If the pending changes require a server restart, the pending-changes apply command will display a prompt to let you know a restart will occur. This prompt displays even if the server is stopped, but in that case, there is no restart. You can suppress the prompt using the --ignore-prompt option, but this does not change the restart behaviour. If the changes do not require a restart, the changes are applied without a prompt. For more information, see tsm pending-changes apply.

    tsm pending-changes apply
Thanks for your feedback!Your feedback has been successfully submitted. Thank you!