Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
postgresql_installation [2020/01/27 10:02] andonovjpostgresql_installation [2021/12/10 17:47] (current) – [Install the Repositories] andonovj
Line 1: Line 1:
 =====Overview===== =====Overview=====
 PostegreSQL is open source database offered under the license of GPL and is supported by the community. The installation of postegresql is rather simple. PostegreSQL is open source database offered under the license of GPL and is supported by the community. The installation of postegresql is rather simple.
-====Installation====+ 
 +=====Installation=====
 Installation is composed by 3 steps: Installation is composed by 3 steps:
  
Line 11: Line 12:
 The configuration is done afterwards. The configuration is done afterwards.
  
-===Install the Repositories===+====Install the Repositories====
  
 <sxh bash> <sxh bash>
-[root@postegresqlmaster ~]# yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-redhat96-9.6-3.noarch.rpm+[root@postegresqlmaster ~]# yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
 Loaded plugins: fastestmirror Loaded plugins: fastestmirror
 Setting up Install Process Setting up Install Process
Line 61: Line 62:
  
  
-===Install the packages===+====Install the packages====
 <sxh bash> <sxh bash>
 [root@postegresqlmaster ~]# yum install postgresql96 [root@postegresqlmaster ~]# yum install postgresql96
Line 168: Line 169:
  
  
-====Configuration====+=====Configuration=====
 Configuration of the server is initially done as follows: Configuration of the server is initially done as follows:
  
-===Server Configuration===+====Server Configuration====
 For Linux 6: For Linux 6:
 <sxh bash> <sxh bash>
Line 195: Line 196:
 Initializing database ... OK Initializing database ... OK
 </Code> </Code>
 +
 +Example for 12:
 +
 +<Code:bash|PostgreSQL 12>
 +yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
 +yum install -y postgresql12-server
 +yum install -y postgresql12-contrib
 +/usr/pgsql-12/bin/postgresql-12-setup initdb
 +</Code>
 +
 +
 ===Initial connection and Password management=== ===Initial connection and Password management===
 In order to log in, you have to set the password initially as follows: In order to log in, you have to set the password initially as follows:
Line 224: Line 236:
 <sxh bash> <sxh bash>
 [root@postgresqlmaster data]# cat postgresql.conf | grep port [root@postgresqlmaster data]# cat postgresql.conf | grep port
-#port = 5432                            # (change requires restart)+port = 6000                            # (change requires restart)
                                         # supported by the operating system:                                         # supported by the operating system:
                                         # supported by the operating system:                                         # supported by the operating system:
Line 230: Line 242:
 [root@postgresqlmaster data]# [root@postgresqlmaster data]#
 </sxh> </sxh>
 +
 +That PostgreSQL listens on certain port, doesn't mean it will allow users to the database. The user connection settings are specified in the pg_hba.conf file in the PGDATA directory (by default).
 +In order to allow a connection you have to add an entry there, per specified syntax:
 +
 +<sxh bash>
 +[root@postgresqlmaster data]# cat pg_hba.conf
 +# PostgreSQL Client Authentication Configuration File
 +# ===================================================
 +#
 +# Refer to the "Client Authentication" section in the PostgreSQL
 +# documentation for a complete description of this file.  A short
 +# synopsis follows.
 +#
 +# This file controls: which hosts are allowed to connect, how clients
 +# are authenticated, which PostgreSQL user names they can use, which
 +# databases they can access.  Records take one of these forms:
 +#
 +# local      DATABASE  USER  METHOD  [OPTIONS]
 +# host       DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
 +</sxh>
 +
 +Where the fields stands for:
 +  - Source can be either: Host (for external connections) or Local (for local connections)
 +  - The database to which you wish to connect, can be: "all" or particular database
 +  - User which will be user or (+ = role)
 +  - Address which the connection will be coming (omitted for local and IP for host type)
 +  - Method of the authentication: md5(old), trust, ident, AES and others
 +  - OPTIONS - additional options like LDAP (Pam) and so on.
 +
  • postgresql_installation.1580119351.txt.gz
  • Last modified: 2020/01/27 18:02
  • (external edit)