JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris Cluster Data Service for PostgreSQL Guide
search filter icon
search icon

Document Information

Preface

1.  Installing and Configuring HA for PostgreSQL

A.  Files for Configuring Solaris Cluster HA for Solaris PostgreSQL Resources

B.  Deployment Example: Installing PostgreSQL in the Global Zone

C.  Deployment Example: Installing PostgreSQL in a Non-Global HA Container

D.  Deployment Example: Installing PostgreSQL in a Non-Global Zone

Target Cluster Configuration

Software Configuration

Assumptions

Installing and Configuring PostgreSQL on Shared Storage in a Non-Global Zone

Example: Preparing the Cluster for PostgreSQL

Example: Configuring the Zone

Example: Configuring Cluster Resources for PostgreSQL

Example: Modifying the PostgreSQL Configuration File

Example: Building and Installing the PostgreSQL Software on Shared Storage in a Zone

Example: Enabling the PostgreSQL Software to Run in the Cluster

Installing the PostgreSQL Binaries in the Default Directory in a Zone (Alternative Installation)

Example: Building and Installing the PostgreSQL Software in the Default Directory in a Zone

E.  Deployment Example: Installing PostgreSQL in the Global Zone Using WAL File Shipping

Index

Example: Building and Installing the PostgreSQL Software in the Default Directory in a Zone

This example illustrates how to install the PostgreSQL software in the default directory /usr/local/pgsql. You can also build and install the PostgreSQL binaries on shared storage. See Installing and Configuring PostgreSQL on Shared Storage in a Non-Global Zone.

Before You Begin

You can only install the PostgreSQL software in the default directory if one of the following conditions is true:

If /usr/local/pgsql is linked to the global zone, create this directory in the non-global zone as well.

  1. Create the home directory for PostgreSQL user.
    phys-schost-1# mkdir /glohal/mnt3/postgres
  2. Change the ownership of the postgres directory.
    phys-schost-1# chown -R postgres:postgres /glohal/mnt3/postgres
  3. Log in as the PostgreSQL user.
    zone-1# su - postgres
  4. Create the directory in the non-global zone.
    zone-1$ mkdir /pgsql-linksource
  5. Expand the software tar file.
    zone-1$ gzcat /tmp/postgresql-8.1.0.tar.gz |tar xvf -
  6. Add the C compiler and ar to your PATH.
    zone-1$ PATH=$PATH:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin
    zone-1$ export PATH
  7. Add the C compiler and readline libraries to your LD_LIBRARY_PATH.
    zone-1$ LD_LIBRARY_PATH=/usr/sfw/lib:/usr/local/lib:/usr/lib:/opt/csw/lib
    zone-1$ export LD_LIBRARY_PATH
  8. Install the source and configure the build.
    zone-1$ gzcat /tmp/postgresql-8.1.0.tar.gz |tar xvf -  
    zone-1$ cd /global/mnt3/postgres/build/postgresql-8.1.0
    zone-1$ ./configure
  9. Build the PostgreSQL binaries.
    zone-1$ gmake

    If you use gcc to build the postgres binaries, build them in a failover file system.

  10. Run the PostgreSQL regression tests.
    zone-1$ gmake check
  11. Switch to the root user.
    zone$ su
  12. Add the C compiler and ar to your PATH.

    This example assumes the following:

    • The compiler is gcc, located in /usr/sfw/bin.

    • ar is located in /usr/ccs/bin.

    zone-1# PATH=$PATH:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin
    zone-1# export PATH
  13. Add the C compiler and readline libraries to your LD_LIBRARY_PATH.
    zone-1# LD_LIBRARY_PATH=/usr/sfw/lib:/usr/local/lib:/usr/lib:/opt/csw/lib
    zone-1$# export LD_LIBRARY_PATH
  14. Install the binaries.
    zone-1# gmake install
  15. Copy the binaries to the second node.
    zone-1# scp -rp /usr/local/pgsql phys-schost-2:/usr/local
  16. Exit from root access.
    zone-1# exit
  17. Clean the distribution.
    zone-1$ gmake clean

Next Steps

Perform the steps in Example: Enabling the PostgreSQL Software to Run in the Cluster to complete installation and configuration of PostgreSQL.