PosgreSQL - jak zrobic rzeczy, ktorych nie robi sie codziennie....

Nadanie praw tylko do odczytu dla uÃâ ¬Â¦Ãƒâ€šÃ‚¼ytkownika raporty do tabel w schemacie (baza ryzyko)

 psql -d ryzyko -qAt -c "SELECT 'GRANT SELECT ON ' || tablename || ' TO raporty;' FROM pg_tables WHERE schemaname = 'public'" | psql -d ryzyko

Przeniesienie bazy z nowszego silnika do starszego

Gdy normalnie przy odtworzeniu pg_dump krzyczy, ale nie ta wersja archiwizatora....

PG ze Ãâ ¬Â¦Ãƒâ€šÃ‚ºródeÃâ ¬Â¦ÃƒÂ¢Ã¢â‚€šÂ¬ÅÅ¡

apt-get install libreadline6-dev
apt-get install zlib1g-dev
./configure
make
make install
mkdir /usr/local/pgsql/data
adduser postgres
chown postgres /usr/local/pgsql/data
su - postgres

PG password

sudo -u user_name psql db_name
ALTER USER "user_name" WITH PASSWORD 'new_password';

Backup

#!/bin/bash

Data=`date +%Y.%m.%d`
pass="XMpFeQIQ6XnAjMl7xxxxxxxxxxx"
# su - postgres -c "pg_dump roundcubemail > /var/backups/postgres/roundcubemail-$Data.backup"
PGPASSWORD=$pass /usr/bin/pg_dump roundcubemail -h localhost -U roundcube -f /var/backups/postgres/roundcubemail-$Data.bak# Zasilenie Bazy testowej
#su - postgres -c "psql -f psql -f cluster_backup.sql postgres roundcubemailtest"

su - postgres -c "psql -U postgres -c 'DROP DATABASE roundcubemailtest;' "
su - postgres -c "psql -U postgres -c 'CREATE DATABASE roundcubemailtest;' "
su - postgres -c "psql -U postgres -c 'ALTER DATABASE roundcubemailtest OWNER TO roundcube;' "
su - postgres -c "psql -U postgres -d roundcubemailtest  -f /var/backups/postgres/roundcubemail-$Data.bak"