In this blog i will cover how to do a source installation PostgreSQL lower (outdated) version.
This will be helpful when you want to test your setup other than prod.
We have all source packages available here, https://www.postgresql.org/ftp/source/
PostgreSQL Version : 9.0.23
OS : Opensuse Leap 15.3
Installing python package (make sure you have gcc devel packages installed)
zypper install python-base |
Download uuid and extract it (for source installation we need )
wget https://src.fedoraproject.org/repo/pkgs/uuid/uuid-1.6.2.tar.gz/5db0d43a9022a6ebbbc25337ae28942f/uuid-1.6.2.tar.gz tar -xf uuid-1.6.2.tar.gz |
Configure and install it
cd uuid-1.6.2/ ./configure make -j20 make install |
Download source package and extract it
wget https://ftp.postgresql.org/pub/source/v9.0.23/postgresql-9.0.23.tar.bz2 tar -xf postgresql-9.0.23.tar.bz2 |
Configure and install it
cd postgresql-9.0.23/ ./configure --with-python make -j20 make install cd contrib make all make install export PATH=/usr/local/pgsql/bin:$PATH |
During configure if you get below readline error please follow the fix given below
Expected error
Fix (need to install readline-devel)
zypper install readline-devel |
Create the user and required folders
groupadd postgres useradd -G postgres postgres passwd postgres mkdir /home/postgres/ mkdir /usr/local/pgsql/data/ mkdir /var/log/postgres/ chown postgres.postgres /home/postgres/ chown postgres.postgres /usr/local/pgsql/data/ chown postgres.postgres /var/log/postgres export PATH=/usr/local/pgsql/bin:$PATH |
Switch to postgres user and initialize the db and we can start the service
su postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data --encoding=UTF8 --lc-collate=en_US.UTF-8 --locale=en_US.utf8 /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start |
You can login to the DB ,