13.8.5. Migrating from an External PostgreSQL Database to an Embedded Database
The requirements to migrate from an External PostgreSQL Database to an Embedded database:
- A complete installation of Red Hat Satellite server (
satellite.example.com
) using an External PostgreSQL Database (postgresql.example.com
).
Procedure 13.6. Migrating to an Embedded Database from an External PostgreSQL Database
- Shut down all services on the Red Hat Satellite server:
[root@satellite ~]# rhn-satellite stop
- Make sure your External PostgreSQL Database is still running.
- Remove the
rhn-upgrade
if it exists on your server:[root@satellite ~]# yum remove rhn-upgrade
- Update the External PostgreSQL Database to the latest schema version:
[root@satellite ~]# yum update satellite-schema [root@satellite ~]# spacewalk-schema-upgrade
This ensures that your database version matches the latest version for the Embedded Database. - Create a directory to hold your database snapshot.
[root@satellite ~]# mkdir ~/dbbackup [root@satellite ~]# cd ~/dbbackup
- Export the database using
spacewalk-dump-schema
:[root@satellite dbbackup]# spacewalk-dump-schema --to=postgresql > migrate-to-postgresql.sql
- Stop the External Database. It is no longer required.
- Install the PostgreSQL installation and Satellite database tools packages on the Satellite server:
[root@satellite dbbackup]# yum install -y spacewalk-setup-postgresql spacewalk-dobby
- Use
spacewalk-setup
to populate the Embedded Database:[root@satellite dbbackup]# spacewalk-setup --db-only
The script populates the database. Wait until this process completes.** Database: Setting up database connection for PostgreSQL backend. ** Database: Installing the database: ** Database: This is a long process that is logged in: ** Database: /var/log/rhn/install_db.log *** Progress: # ** Database: Installation complete. ** Database: Populating database. *** Progress: ####################################
- When the script completes database population, restore the database schema:
[root@satellite dbbackup]# spacewalk-sql -i < migrate-to-postgresql.sql
- Start Red Hat Satellite.
[root@satellite ~]# rhn-satellite start
The database is now migrated from an External PostgreSQL Database to an Embedded Database.