instalando_e_configurando_o_postgresql_no_openbsd_pt_br - DevOps|DevSecOps|SRE|Developer|Cloud|Cyber Security
You are here: start » instalando_e_configurando_o_postgresql_no_openbsd_pt_br
instalando_e_configurando_o_postgresql_no_openbsd_pt_br [2019/08/08 15:24] (current)
+ ====== Instalando e configurando o PostgreSQL no OpenBSD ======
+ export PKG_PATH=ftp://openbsd.locaweb.com.br/pub/OpenBSD/5.1/packages/`machine -a`/
+ mkdir /var/postgresql/data
+ initdb -D /var/postgresql/data -U postgres -A md5 -W
+ The files belonging to this database system will be owned by user "_postgresql".
+ The default text search configuration will be set to "english".
+ fixing permissions on existing directory /var/postgresql/data ... ok
+ creating template1 database in /var/postgresql/data/base/1 ... ok
+ loading system objects' descriptions ... ok
+ postgres -D /var/postgresql/data
+ pg_ctl -D /var/postgresql/data -l logfile start
+ vim /var/postgresql/data/postgresql.conf
+ listen_address = '*'
+ Agora precisamos liberar o acesso no postgresql para que os clientes consigam se conectar nele, então vamos liberar a maquina do programador por exemplo que tem o ip 10.0.0.20
+ vim /var/postgresql/data/pg_hba.conf
+ host all all 10.101.0.0/24 md5
+ Aqui no exemplo acima estamos liberando acesso para as máquinas da rede 10.101.0.0/24
+ /etc/rc.d/postgresql restart
+ Agora vamos verificar se ele esta escutando
+ tcp 0 0 *.5432 *.* LISTEN
+ tcp6 0 0 *.5432 *.* LISTEN
+ 0xfffffe801de05778 stream 0 0 0xfffffe801d70fbc0 0x0 0x0 0x0 /tmp/.s.PGSQL.5432
+ Password for user postgres:
+ Type "help" for help.
+ Senha para usuário postgres:
+ Algumas funcionalidades do psql podem não funcionar.
+ Digite "help" para ajuda.
+ Como pode ser notado conseguimos conectar no servidor porém recebemos um aviso sobre as versões da aplicação, eu estou utilizando um cliente 9.2 e o servidor é 9.1 neste caso o cliente tem compatibilidade com o servidor caso fosse o contrário o cliente não se conectaria no servidor por incompatibilidade de versão.
+ Agora vamos cadastrar mais um usuário para teste no postgresql
+ postgres=# CREATE USER douglas WITH PASSWORD 'S3Nh4' SUPERUSER;
+ Senha para usuário douglas:
+ psql: FATAL: database "douglas" does not exist
+ ERROR: role "douglas" cannot be dropped because some objects depend on it
+ DETAIL: owner of database douglas
+ Por meio do comando GRANT é possível atribuir direitos de acessos a contas de usuários e/ou regras do sistema de forma eficiente. Como o comando é responsável por gerenciar acessos a diferentes tipos de objetos do servidor PostgreSQL, o mesmo possui algumas variações, tendo opções voltadas somente para tabelas, outras para funções etc.
+ Ao criar um usuário e/ou uma regra no PostgreSQL, o comando CREATE USER permite informar a qual grupo a conta em questão pertence, bem como informar quais outras contas fazem parte da regra que está sendo criada, se for necessário. Porém, muitos destes atributos variam com o tempo, sem alternar os nomes das contas. Por este motivo é recomendado gerenciar as atribuições de grupos e regras por meio do comando GRANT, e somente criar as contas com o comando CREATE USER.
+ GRANT role[,role2, ...] TO usuário [,usuário2, ...] [WITH ADMIN OPTION];
+ Como existem vários tipos de objetos no PostgreSQL, existe uma sintaxe específica para atribuir acessos a cada um deles. Na verdade, o comando é o mesmo, com pequenas variações, conforme será visto a seguir.
+ TO beneficiários;
+ **opções_tabela:** As opções de utilização de tabelas são as seguintes:
+ ON SEQUENCE sequência[,sequência2,...]
+ **opções_sequência:** As opções de utilização de sequências são as seguintes:
+ ON DATABASE banco[,banco2,...]
+ **opções_banco:** AS opções de utilização de bancos de dados são as seguintes:
+ ON FUNCTION função (argumentos) [,função2(argumentos),...]
+ **opções_funcões:** AS opções de utilização de funções são as seguintes:
+ |**ALL**|Habilita todos os direitos de acessos previamente abordados. No caso, tem o mesmo efeito de utilizar somente a opção anterior, pois somente esta opção está disponível para utilização.|
+ TO benificiários;
+ **opções_linguagem:** As opções de utilização de linguagens são as seguintes:
+ ON SCHEMA schema [,schema2,...]
+ **opções_schema:** As opções de utilização de esquemas são as seguintes:
+ ON TABLESPACE tablespace [, tablespaces2, ...]
+ **opções_tablespaces:** AS opções de utilização de tablespaces são as seguintes:
+ |** ALL**|Habilita todos os direitos de acessos previamente abordados. No caso, tem o mesmo efeito de utilizar somente a opção anterior, pois somente esta opção está disponível para utilização|
+ **beneficiários:** As opções de utilização de beneficiários são as seguintes:
+ |**PUBLIC**|Se o acesso estiver sendo liberado sem restrições, utilize o termo PUBLIC.|
+ **WITH GRANT OPTION:** No final da sintaxe é possível adicionar a opção WITH GRANT OPTION, a qual permite com que os beneficiários do comando possam repassar os direitos de acesso em questão para outras contas e/ou regras do sistema.
+ useradd -m -s /usr/local/bin/bash usuario
+ passwd usuario
+ postgres=# CREATE USER usuario WITH PASSWORD 'senha' SUPERUSER;
+ pkg_scripts="postgresql"
+ export PGPASSWORD="senha"
+ psql: FATAL: database "teste" does not exist
+ You are now connected to database "postgres" as user "postgres".
+ ERROR: role "postgres" already exists
+ ERROR: role "usuario" already exists
+ You are now connected to database "template1" as user "postgres".
+ You are now connected to database "teste" as user "postgres".
+ - http://wiki.postgresql.org/wiki/Main_Page
+ - http://wiki.postgresql.org/wiki/FAQ/pt
+ - http://www.postgresql.org/docs/manuals/
+ - http://www.postgresql.org/docs/books/
+ - http://www.postgresql.org/files/documentation/pdf/8.4/postgresql-8.4-A4.pdf
+ - http://www.postgresql.org/files/documentation/pdf/9.1/postgresql-9.1-A4.pdf
+ - http://www.postgresql.org/docs/8.1/static/backup.html
instalando_e_configurando_o_postgresql_no_openbsd_pt_br.txt · Last modified: 2019/08/08 15:24 (external edit)