Moje odkazy
Obsah článku:
vydáno: 28. 4. 2009 16:38, aktualizováno: 14. 9. 2015 00:49
Pár mých tipů pro PostgreSQL
změníme heslo uživateli postgres:
# su postgres
$ psql
postgres=# ALTER USER postgres WITH PASSWORD 'nbusr_krásné_nové_heslo_123';
založíme si nového uživatele:
postgres=# CREATE USER franta WITH PASSWORD 'heslo123';
Zapneme SSL – postgresql.conf
ssl = true
(klíče a certifikáty se nacházejí v /var/lib/postgresql/8.3/main/
)
Povolíme připojení z vybraných IP adres – pg_hba.conf
host all all aaa.bbb.ccc.ddd/32 md5
Budeme naslouchat na všech IP adresách – postgresql.conf
listen_addresses = '*'
Nainstalujeme potřebný balíček:
$ aptitude install postgresql-contrib
Nainstalujeme funkce do databáze:
$ psql NÁZEV_DATABÁZE < /usr/share/postgresql/8.3/contrib/pgcrypto.sql
V novějších verzích je to už jinak – nespouštíme ručně skript, ale zadáme příkaz v psql
:
$ psql psql (9.1.9) Pro získání nápovědy napište "help". postgres=# CREATE EXTENSION pgcrypto; CREATE EXTENSION postgres=#
Můžeme si vytvořit funkci pro výpočet SHA-512:
CREATE OR REPLACE FUNCTION sha512(text) RETURNS text AS $$
SELECT encode(digest(decode($1,'escape'::text),'sha512'::text),'base64');
$$ LANGUAGE SQL STRICT IMMUTABLE;
Doména slouží pro přesnější vymezení než datový typ, ze kterého je odvozena. Můžeme ji např. omezit na hodnoty, které vyhovují regulárnímu výrazu.
CREATE DOMAIN email
AS character varying(255)
NOT NULL
CONSTRAINT email_regexp CHECK (((VALUE)::text ~
'^[_a-zA-Z0-9\\.\\-]+@[_a-zA-Z0-9\\.\\-]+\\.[a-zA-Z]{2,4}$'::text));
Doninstalujeme si podporu pro procedurální jazyk plpgsql:
$ su postgres
$ createlang plpgsql -d NÁZEV_DATABÁZE
$ createlang -l -d NÁZEV_DATABÁZE # vypíše nainstalovaní jazyky
$ psql -h localhost NÁZEV_DATABÁZE -U UŽIVATEL --password
Tento článek zatím nikdo nekomentoval