====== PostgreSQL ====== Zarządzanie bazą odbywa się z poziomu konta użytkownika postgres. su - postgres Do wykonywania zapytań używamy programu ''psql''. Poza zapytaniami, warto zapamiętać kilka komend związanych z obsługą baz danych: psql \l # Wylistowanie baz danych \q # Wyjście z psql \c irk # Zmiana wybranej bazy danych \du # Wyświetlenie istniejących użytkowników Różnica pomiędzy ''psql'' i kontem użytkownika ''postgres'' jest taka, że w ''psql'' wykonujemy zapytania SQLowe, np. utworzenie użytkownika: CREATE USER someuser; zaś z konta użytkownika ''postgres'': createuser someuser; Zwróć uwagę, że w programie ''psql'' nie dodanie średnika na końcu polecenia wprowadza tryb wieloliniowy, tzn. po naciśnięciu enter, program czeka na dalszy ciąg instrukcji. Znak zachęty zmienia się z ''postgres=#'' na ''postgres-#''. ===== Tworzenie bazy danych ===== su - postgres createdb -e -E UTF8 -l pl_PL.UTF-8 -T template0 somedb; ===== Zarządzanie użytkownikami ===== CREATE USER ; GRANT SELECT ON TO ; Zmiana hasła ALTER USER username WITH PASSWORD 'newpassword'; ===== Backup bazy ===== wykonuje się poleceniem ''pg_dump''. Oto przykładowy skrypt: FILE_NAME="backup-$(date '+%Y-%m-%d.%H')" echo "$(date +'%Y-%m-%d %H:%M:%S'): Wykonuje dump $FILE_NAME" su --command "pg_dump db > $FILE_NAME.sql" postgres tar -zcvf $FILE_NAME.tar.gz $FILE_NAME.sql rm -f $FILE_NAME.sql ==== Przywrócenie backupu ==== su - postgres psql nazwabazy < nazwapliku.sql