Uživatelské nástroje

Nástroje pro tento web


postgresql

PostgreSQL

Nástroje

Úprava locale pro výchozí české kódování UTF-8

/etc/environment
LANG="cs_CZ.UTF-8"
LC_ALL="cs_CZ.UTF-8"
LANGUAGE="cs_CZ"
/etc/sysconfig/i18n
#LANG="en_US.UTF-8"
LANG="cs_CZ.UTF-8"
LC_ALL="cs_CZ.UTF-8"
SYSFONT="latarcyrheb-sun16"

Instalace na CentOS 7.X

shell# yum install http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-redhat94-9.4-1.noarch.rpm
shell# yum install postgresql94-server postgresql94-contrib
shell# /usr/pgsql-9.4/bin/postgresql94-setup initdb
shell# systemctl enable postgresql-9.4.service
shell# systemctl start postgresql-9.4.service

Adresáře

  • /usr/pgsql-9.4
  • /var/lib/pgsql/9.4/data

Instalace na CentOS 6.X

http://www.postgresql.org/download/linux/redhat/

shell# rpm -i http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm
shell# yum install postgresql93-server postgresql93-contrib
shell# service postgresql-9.3 initdb
shell# chkconfig postgresql-9.3 on
shell# service postgresql-9.3 start

Adresáře

  • /usr/pgsql-9.3
  • /var/lib/pgsql/9.3/data

Vytvoření dalšího uživatele

Název servisní databáze = postgres.

[blazek@pg ~]$ su
Password:
[root@pg blazek]# su - postgres
-bash-4.1$ createuser blazek

Vytvoření databáze

[blazek@pg ~]$ su
Password:
[root@pg blazek]# su - postgres
-bash-4.1$ createdb test --locale=cs_CZ.UTF-8 -e UTF-8
CREATE DATABASE test LC_COLLATE 'cs_CZ.UTF-8' LC_CTYPE 'cs_CZ.UTF-8';
COMMENT ON DATABASE test IS 'UTF-8';
-bash-4.1$

Přihlášení do SQL konzole

[blazek@pg ~]$ psql postgres
psql (9.3.4)
Pro získání nápovědy napište "help".

postgres=>

Opuštění SQL konzole

postgres=> \q

Změna databáze

postgres=> \connect dbname
postgres=> \c dbname

Odinstalace PostgreSQL

shell# yum remove postgres*
shell# rm -rf /usr/pgsql-9.3
shell# rm -rf /var/lib/pgsql

Vzdálený přístup

Pro vzdálený přístup k PostgreSQL je nutné nastavit následující. Ve výchozím nastavení je PostgreSQL přístup pouze z localhost.

Nastavení hesla pro uživatele postgres

[blazek@pg ~]$ su -
Heslo:
[root@pg ~]# su - postgres
-bash-4.1$ psql postgres
psql (9.3.4)
Pro získání nápovědy napište "help".

postgres=# ALTER USER postgres with password 'secure-password';
ALTER ROLE
postgres=#

Záloha konfigurace (PostgreSQL Client Authentication Configuration File)

shell# cp /var/lib/pgsql/9.3/data/pg_hba.conf /var/lib/pgsql/9.3/data/pg_hba.conf-backup

Doplnit do konfigurace IP adresu odkud se bude vzdáleně přistupovat

Nastavení pro šifrované připojení, při autentizací se předává šifrované heslo.

/var/lib/pgsql/9.3/data/pg_hba.conf
# The first field is the connection type: "local" is a Unix-domain
# socket, "host" is either a plain or SSL-encrypted TCP/IP socket,
# "hostssl" is an SSL-encrypted TCP/IP socket, and "hostnossl" is a
# plain TCP/IP socket.
#
# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi",
# "krb5", "ident", "peer", "pam", "ldap", "radius" or "cert".  Note that
# "password" sends passwords in clear text; "md5" is preferred since
# it sends encrypted passwords.
 
# TYPE  DATABASE        USER            ADDRESS                 METHOD
# IPv4 remote connection (example)
host    all             all             192.168.100.100/32       md5
host    all             all             127.0.0.1/32            md5

Nastavení interface, na kterém PostgreSQL naslouchá

/var/lib/pgsql/9.3/data/postgresql.conf
# default = localhost
# listen_addresses = 'localhost'
 
# pro vsechny interfaces
# listen_addresses = '*'
 
# pro konkretni interface
# listen_addresses = '192.168.100.1'
 
# pro localhost a konkretni interface (oddeluje se carkou)
listen_addresses = 'localhost,192.168.100.1'

Restart PostgreSQL

shell# service postgresql-9.3 restart

Test připojení

shell# psql -U postgres -h 192.168.100.1

SQL

Smazání všech tabulek

DROP SCHEMA public CASCADE;
postgresql.txt · Poslední úprava: 2023/12/26 19:13 autor: 127.0.0.1