Migrating Your vCAC Embedded Postgres DB to an External DB

When deploying vCAC in a distributed architecture you need to use an external database. So what happens when you’ve deployed a single vCAC appliance, and then decide you want to scale out? Registering your vCAC Appliance to an external Postgres database doesn’t magically migrate your data to that database.

First things first, get your external database setup. I’ve covered that here here. The one thing I’d suggest doing slightly differently to that article is to name your user ‘vcac’ and set your password as ‘vcac’. In that way, it will be identical to the embedded db configuration. I’ll stress one other point – ensure that you run the following commands or this will all turn to custard.

CREATE EXTENSION “hstore”;

CREATE EXTENSION “uuid-ossp”;

Ok, with that out of the way let’s make a start. SSH into your vCAC Appliance.

Run the following command:

su – vcac

Navigate to /opt/vmware/vpostgres/9.2/bin and run the following command:

./pg_dump vcac ./psql -h your_postgress_hostname vcac

This takes a backup of your db and restores it to the nominated database on the remote host.

You’ll note a couple of errors like this which you can safely ignore.

[/one_third] [two_thirds_last]

Ignore Errors

[/two_thirds_last]

[one_third] The final step is to login to the VAMI of your vCAC Appliance and point it to your external database. Enter your details, save settings and then reboot.[/one_third][two_thirds_last]

Update Database Location

[/two_thirds_last]