postgres

Criei um pacote de instalação do postgres, versão 10, para o Slackware, a partir dos ficheiros do slackbuilds.org.

Precisei de colocar a BD numa drive SSD e, por isso, a configuração foi um pouco diferente do normal. Seguem as instruções.

installpkg postgresql-10.2-x86_64-1_SBo.tgz

groupadd -g 209 postgres
useradd -u 209 -g 209 -d /disco4/pgsql postgres
mkdir /disco4/pgsql
chown -R postgres:postgres /disco4/pgsql
su postgres -c "initdb -D /disco4/pgsql/10.2/data --locale=en_US.UTF-8 -A md5 -W"

Depois tive que atualizar a diretoria das BDs no ficheiro /etc/rc.d/rc.postgresql. Onde estava:

DATADIR=/var/lib/pgsql/$PG_VERSION/data

alterei para

DATADIR=/disco4/pgsql/$PG_VERSION/data

Depois já se pode arrancar com o postgres:

/etc/rc.d/rc.postgresql start

Para criar um utilizador “alex” e dar-lhe permissões de administrador, executar os comandos seguintes, inserindo a password de superuser, de cada vez:

sudo -u postgres createuser alex
sudo -u postgres createdb alex
sudo -u postgres psql

Com este último comando, entramos no psql e deve emitir-se o comando seguinte para atribuir permissões de administrador ao novo utilizador:

alter user alex with encrypted password 'password';

Para sair: \q

O postgres – vá-se lá saber porquê – cria uma BD de nome alex para o utilizador alex e atribui-a ao utilizador. Se quisermos criar outra BD para esse utilizador, podemos emitir os comandos seguintes, ainda dentro do psql:

sudo -u postgres createdb nova_bd
sudo -u postgres psql
grant all privileges on database nova_bd to alex ;

Depois, para sair, escrever \q

O utilizador alex pode agora entrar com o seu login:

psql -U alex

e ligar-se à sua nova BD:

\c nova_bd

Para correr um script SQL externo – por exemplo, para criar uma nova BD – executar o comando:

\i script.sql


Par ausar o postgres a partir do Python3, deve instalar-se o pacote seguinte:

pip3 install -U psycopg2-binary

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

Este site utiliza o Akismet para reduzir spam. Fica a saber como são processados os dados dos comentários.