In this post, we configure Streaming Replication between One Master and 2 Standbys(Standby 1/Standby 2). Replication will be 1:1 but not cascading. Below are my setup details
OS - RedHat Enterprise Linux 7.x Master IP - 172.31.34.34 Standby 1 IP - 172.31.32.122 Standby 2 IP - 172.31.41.249 Installation Today www.postgresql.org distributes binaries in different formats contributed by many companies. For this setup, am going to use YUM method of installation as shown in the main website link here.
As you all know, EDB Failover Manager(EFM) provides the high availability insfrastructure for EDB Postgres clusters. Failover Manager monitors the members of a Postgres cluster, identifies and verifies database failures quickly and reliably, and if needed promotes a standby node to become the cluster master and issues alerts.
Every release of EFM has new features and functionalities and to take benefit of it you may need to upgrade your existing cluster to new version.
plpgsql_check extension helps developers to validate all embeded SQL and SQL statements inside plpgsql function. Its one of the useful extensions particularly when working with plpgsql development. For more details refer to plpgsql_check documentation.
By default, plpgsql_check extension not enabled in community PostgreSQL or commercial EDB Postgres. You need compile the extension with your flavor database. Community PostgreSQL compilation is easy and documented in the above reference link, however below steps help you to compile with commercial EDB Postgres database.
This is one of the quickest blog am publishing :). I am publishing from my terminal as is of my testing to create language plpython3u.
Using trusted or untrusted distributions of python we can create plpython3u language in PostgreSQL. In my testing, am trying with SCL distribution(am not recommending, I tried for testing) of python3.3 to create language plpython3u.
Let’s begin creating language on a binary version of PostgreSQL 9.6 installation without any tweaking.
Before doing a deep dive into the subject, a short outline about PgBouncer, its a lightweight connection pooler for PostgreSQL that dramatically reduces the processing time and resources for maintaining a large number of client connections to one or more databases. Typically used to increase the number of user connections that can be handled in a high performance environment. For more details on Installing/Configuring PgBouncer refer to the documentation here.