Upgrading PostgreSQL on Cpanel 11 Server

Upgrading PostgreSQL 8.2 on Cpanel Server

*ANY ACTIONS YOU TAKE, YOU TAKE THEM AT YOUR OWN RESPONSABILITY*

Reason :

PostgreSQL 8.2 offers a huge performance increase pretty much across the board and few other fixes

Platforms:

RHEL 3,4,Centos 3.x,4.x, Fedora Core 5,6
Make sure if you have postgresql installed.

rpm -qa | grep postgres | tee /root/rpm_pgsql

The above will list all the installed postgresql rpm packages and store the output to /root/rpm_pgsql. You can use this list to remove all the postgresql related rpm later.

  • Backup all your databases
    su postgres -
    
    mkdir backups
    
    pg_dumpall > /var/lib/pgsql/backups/postgresql_backup
    
    exit

    exit will logout from the postgres user

  • Now stop the postgrsql daemon using the following command
    /sbin/service postgresql stop
  • Backup the whole database folder
    mv /var/lib/pgsql /var/lib/pgsql_old
  • Remove the old rpms using rpm -e, you can use the previously stored /root/rpm_pgsql to remove the postgresql rpm and its depended, for example the perl-DBD-pg depends on it. So you will be removing the /root/rpm_pgsql list + perl-DBD-gpFor example, it might differ on your servers
    rpm -e rh-postgresql-server
    
    rpm -e rh-postgresql
    
    rpm -e rh-postgresql-devel
    
    rpm -e rh-postgresql-python
    
    rpm -e rh-postgresql-libs
    
    rpm -e perl-DBD-Pg
  • Download the new version of postgreSQL from the postgresql download site into/usr/local/src or any directory you prefer.
  • After you have download the postgreSQL rpms from PostgreSQL download site.Download the following rpms
    postgresql-8.2.4-1PGDG.i686.rpm
    postgresql-contrib-8.2.4-1PGDG.i686.rpm
    postgresql-devel-8.2.4-1PGDG.i686.rpm
    postgresql-libs-8.2.4-1PGDG.i686.rpm
    postgresql-plpython-8.2.4-1PGDG.i686.rpm
    postgresql-server-8.2.4-1PGDG.i686.rpm

    To install

    rpm -Uhv postgresql*.rpm
  • After you have installed the new postgreSQL rpms login to WHM usinghttps://ip:2087under the SQL service Menu

    Postgres Config

    Install new configuration and change the password

  • To restore the old databases
    psql template1 < /var/lib/pgsql_old/postgresql_backup_file

    The above will restore the databases

    if you see any mistake please feel free to comment using comments

  • How to compile php 4.4.9 for Plesk Server

    How to compile php on a plesk machine and actually get it to work so I took the time to document everything. This guide *should* work, I know it worked on 2 seperate machines. Aside from that do it at your own risk I am not so fond of plesk because it does have so many issues with upgrade. If you have any trouble or dep issues please post thme here so I can work the fixes into the guide.

    yum install zlib-devel webalizer unixODBC unixODBC-devel tcl tcl-devel sysstat sendmail-devel rwho pspell-devel php-devel php-imap php-ldap php-mysql php-odbc perl-Crypt-SSLeay perl-DBD-Pg perl-DB_File perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-Parse-Yapp perl-Time-HiRes perl-URI perl-XML-Dumper perl-XML-Encoding perl-XML-Grove perl-XML-Parser perl-XML-Twig perl-libwww-perl perl-libxml-enno perl-libxml-perl perl-suidperl pciutils-devel patchutils openssl-perl openssl-devel net-snmp net-snmp-devel net-snmp-libs net-snmp-perl net-snmp-utilsmysql-devel mrtg mod_perl mod_perl-devel mod_ssl mailman libxslt libxslt-devel libxml libxml-devel libtool libstdc++-devel libpng-devel libpng10 libpng10-devel libjpeg-devel libdbi-dbd-mysql joe htdig htdig-web gd gd-devel compat-libstdc++ compat-libstdc++-devel compat-db compat-gcc compat-gcc-c++ compat-glibc bzip2-devel bind bind-chroot bind-devel ImageMagick ImageMagick-devel ImageMagick-perl MyODBC mysql-bench libmhash libmhash-devel libmcrypt libmcrypt-devel sablotron sablotron-devel js- js-devel

    cd /root
    wget http://us2.php.net/distributions/php-4.4.9.tar.gz
    tar -zvxf php-4.4.9.tar.gz
    cd php-4.4.9

    ./configure –prefix=/usr/local/php4 –bindir=/usr/bin –sbindir=/usr/sbin –sysconfdir=/etc –datadir=/usr/share –includedir=/usr/include –libdir=/usr/lib –libexecdir=/usr/libexec –with-libdir=lib –with-curl=/usr/bin –with-config-file-path=/usr/local/php4/lib –with-pic –disable-rpath –with-exec-dir=/usr/bin –with-png-dir=/usr –enable-gd-native-ttf –without-gdbm –with-gettext –with-iconv –with-jpeg-dir=/usr –with-png –with-zlib –enable-exif –enable-ftp –enable-magic-quotes –enable-sockets –enable-track-vars –enable-trans-sid –enable-yp –enable-wddx –with-pear=/usr/share/pear –enable-calendar –with-libxml-dir=/usr –with-xml –enable-force-cgi-redirect –enable-pcntl –enable-mbstring –enable-mbregex –with-ncurses –with-gd –enable-bcmath –with-xmlrpc –with-mysql –with-mysqli –enable-dom –with-xsl –enable-fastcgi –with-openssl –program-suffix=4 –with-expat-dir=/usr –with-mhash –with-mcrypt

    make
    make install