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

Document Information

Preface

1.  Installing and Configuring HA for PostgreSQL

A.  Files for Configuring Oracle 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.