Centos - POstgresql 9.2

download Centos - POstgresql 9.2

of 21

Transcript of Centos - POstgresql 9.2

  • 8/17/2019 Centos - POstgresql 9.2

    1/21

    Open source database management systems –PostgreSQL & MySQLTech blog on PostgreSQL / MySQL for DBAs & Developers

    How to Install PostgreSQL 9.2 on CentOS6.3/RedHat EL6/Fedora

    0

    As a good measure install all updates to this CentOS 6 server. Before you continue further. This step is op-

    tional.

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    2/21

    Postgres Repo:

    pgdg is the repo that postgresql can be downloaded and installed from. Here is where you download it from.

    Identify which version of rpm you want to download for installing PostgreSQL database server. Right now I

    am picking PostgreSQL 9.2 for CentOS [CentOS 6 - x86_64] as this is the latest version at this time. Now that

    we have identified which version we want to download, right click on that hyperlink and click "copy link ad-

    dress".

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    3/21

    Login into your CentOS Server by SSH and run the following command to download it into your CentOS 6

    Server.

    wget http://yum.pgrpms.org/9.2/redhat/rhel-6-x86_64/pgdg-centos92-9.2-6.noarch.rpm

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    4/21

    If It fails and complains that you dont have wget utility installed on your machine, Install wget utility by run-

    ning command

    yum install wget

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    5/21

    Now that wget utility is installed, download the rpm from PostgreSQL rpm repository

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    6/21

    Now install this rpm with this command.

    rpm -ivh pgdg-centos92-9.2-6.noarch.rpm

    Now that we have installed the pgdg central PostgreSQL repo, we should have postgresql rpms show up in

    yum package manager search. Run the following command on command line to search for all postgres re-

    lated available rpms.

    yum search postgres

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    7/21

    The following list should be generated from the search. Now install PostgreSQL client / Server programs.

    Run the following commands to install PostgreSQL server/client

    yum install postgresql92 postgresql92-server

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    8/21

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    9/21

    You now have successfully installed PostgreSQL database server / client on this CentOS Server.

    Now create default data/tables into this newly build database server by running command:

    service postgresql-9.2 initdb

    [Service name is postgresql-9.2 or corresponding PostgreSQL generated init file under /etc/init.d/ directory]

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    1 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    10/21

    Start the PostgreSQL database server now.

    service postgresql-9.2 start

    Make your database server auto starts when this CentOS server starts/restarts.

    chkconfig postgresql-9.2 on

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    11/21

    Create an user other than default user for granting access to the database from outside world into this data-

    base server.

    Login into database as postgres user, to do that run the following commands:

    su postgres

    psql -dpostgres

    Above command some times lead to a PostgreSQL shared library issue. On some systems that have shared

    libraries (which most systems do) you need to tell your system how to find the newly installed shared li-

    braries. If you did not encounter this error, please skip this step of adding path to /etc/profile file and move

    on to creating user.

     psql: error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or direc-

    tory 

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    12/21

    To fix this issue we need to add the following lines in your /etc/profile file all the way at the bottom of thefile. First exit out as postgres user by typing exit on command line and add the following lines at the bottom

    on /etc/profile file as root user. Save and quit from here after adding those lines mentioned below.

    LD_LIBRARY_PATH=/usr/pgsql-9.2/lib  [Which ever path is relevant to your installation] 

    export LD_LIBRARY_PATH

    Restart your CentOS Server to get the new LD_LIBRARY_PATH variable set properly.

    shutdown -r now

    After the server is up and running, SSH in and run the following commands to create an user.

    su – postgres

    psql -dpostgres

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    13/21

    Now you are inside PostgreSQL database server, so create a super user for accessing database server from

    outside world and exit out of there.

    CREATE role opensourcedbms LOGIN PASSWORD 'opensourcedbms' SUPERUSER;

    \q

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    14/21

    Now we have created a super user for managing the database. We are almost done. To grant outside world

    access we need to make modifications to the database server configuration files and CentOS Server firewall

    rules [iptables]. First exit out as postgres user on your server and log back in as root user.

    Make the changes in your database configuration file :

    vi /var/lib/pgsql/9.2/data/postgresql.conf

    Uncomment the line #listen_addresses = ‘localhost’ and change it to listen_addresses = ‘*’

    The second configuration file that you need to edit in order to grant access to outside world is below [Host

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    15/21

    based authentication file]:

    vi /var/lib/pgsql/9.2/data/pg_hba.conf

    Add a new line under IPv4 local connections all the way to the near bottom of the file. Make appropriatechanges to network you want this new user to login from. If your subnet is 192.168.1.1/24 or 192.168.1.1/32,

    please use that or what ever is relevant in you case. This rule I added indicates the database server to accept

    connections for this user originating with in 192.168.1.1/24 sub-net network.

    host all opensourcedbms 192.168.1.1/24 md5

    Now restart postgres server to get these changes in effect

    service postgresql-9.2 restart

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    16/21

    Finally open the default PostgreSQL database port in server firewall to connecting from outside world.

    vi /etc/sysconfig/iptables

    Add line:

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

    and now restart iptables

    service iptables restart

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    17/21

    At this point you should be able to connect to this database server from clients outside this server like pgAd-

    min III [Download pgAdmin III and install on a host that you want to access this database from] as shown be-

    low:

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    18/21

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    19/21

    If you have installed this in a virtual machine, make sure that you port forward (NAT Only) 5432 under your

    VM Settings > Network Settings > Advanced > Port forwarding to pass through this 5432 from main host to

    your VM to connect from outside VM.

    Written by: Prashanth Goriparthi on February 2, 2013.

    This entry was posted in PostgreSQL on February 2, 2013 [http://opensourcedbms.com/dbms/installing-post-

    gresql-9-2-on-cent-os-6-3-redhat-el6-fedora/] .

    10 thoughts on “How to Install PostgreSQL 9.2 on CentOS 6.3/RedHat EL6/Fedora”

    Pingback: How to do point in time recovery with PostgreSQL 9.2 : PITR in CentOS 6/Redhat EL6

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    20/21

    Pingback: Setup replication with Postgres 9.2 on CentOS 6/Redhat EL6/Fedora

    Pingback: Setup pgbouncer connection pooling for PostgreSQL on CentOS/RedHat/Fedora | Open source

    database management systems - PostgreSQL & MySQL

    This is one of the best! Thanks for sharing in one place. Great work

    BVSat

    February 25, 2013 at 2:14 am

    Hi, Thanks for tutorial install postgre on Centos 5.9 x64 from installing to initdb but when i started the service

    [FAILED] do you have solution for this one? Thanks.

    what does pg startup log say ?

    Alexander Murad

    April 18, 2013 at 8:30 am

    Prashanth Goriparthi

    April 18, 2013 at 4:27 pm

    Post author

    Thx, I was new to cent os

    Tobi

    April 25, 2013 at 12:35 pm

    anonymous

    April 25, 2013 at 1:05 pm

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce

    21 7/9/2013

  • 8/17/2019 Centos - POstgresql 9.2

    21/21

    Pingback: Running multiple PostgreSQL 9.2 Instances on one server in CentOS 6/RHEL 6/Fedora | Open

    source database management systems - PostgreSQL & MySQL

    Good one, thanks it solved our problems. Keep writing.

    Thanks a ton !!!!!!!!!! Great Tutorial…..

    Feby

     June 14, 2013 at 5:40 am

    to Install PostgreSQL 9.2 on CentOS 6.3 / RedHat EL6/Fedora http://opensourcedbms.com/dbms/installing-postgresql-9-2-on-ce