Slide 1

Slide 1 text

O Guia do Mochileiro das Galáxias para quem está viajando no PostgreSQL Por Fábio Telles Rodriguez

Slide 2

Slide 2 text

Fábio Telles Rodriguez • Consultor pela Timbira • DBA Oracle e PostgreSQL + 15 anos • Colaborador da Comunidade Brasileira de PostgreSQL • Blog: savepoint.blog.br • [email protected] • @telles

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Conheça o seu mantra!

Slide 5

Slide 5 text

Conheça o seu mantra STFW Search The Fucking Web LMGTFY Let Me Google That For You RTFM Read The Fucking Manual

Slide 6

Slide 6 text

Respire fundo...

Slide 7

Slide 7 text

Conheça a documentação ➔ Índice: https://www.postgresql.org/docs/current/static/index.html ➔ Tutorial: https://www.postgresql.org/docs/current/static/tutorial.html ➔ Linguagem SQL: https://www.postgresql.org/docs/current/static/sql.html ➔ Referência: https://www.postgresql.org/docs/current/static/reference.htm

Slide 8

Slide 8 text

Outras fontes de informação ➔ FAQ: https://wiki.postgresql.org/wiki/FAQ ➔ Planet: https://planet.postgresql.org ➔ Wiki: https://wiki.postgresql.org ➔ Eventos: https://www.postgresql.org/about/events ➔ Novidades: https://www.postgresql.org/about/newsarchive ➔ Matriz de funcionalidades: https://www.postgresql.org/about/featurematrix

Slide 9

Slide 9 text

Obtendo ajuda! • Uma breve história do PostgreSQL: https://www.postgresql.org/docs/9.6/static/history.h tml “Many people continue to refer to PostgreSQL as "Postgres" (now rarely in all capital letters) because of tradition or because it is easier to pronounce. This usage is widely accepted as a nickname or alias.”

Slide 10

Slide 10 text

Obtendo ajuda! PostgreSQL: “O banco de dados de código aberto mais avançado do planeta com o pior nome do universo” Repita comigo: “postgres”* * A chance de uma pessoa experiente te ajudar cai muito quando você pronuncia ou escreve errado.

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Obtendo ajuda IRC https://www.postgresql.org/community/irc Listas por e-mail https://www.postgresql.org/list Suporte pago https://www.postgresql.org/support/professional_support Whatsapp https://chat.whatsapp.com/0xgJYrsVJnBJT97MsspxT4 Telegram https://t.me/postgresqlbr Facebook https://www.facebook.com/groups/postgresql.brasil

Slide 13

Slide 13 text

Antes de perguntar... • STFW e RTFM • Escreva corretamente sem abreviar e com boa gramática; • Isso inclui pontuação, acentos, concordância verbal, etc. • Não use gírias; • Não pergunte se alguém pode te ajudar, num lugar feito para tirar dúvidas; • Seja claro, objetivo, direto, mas não esqueça do contexto • Você pode precisar fornecer detalhes sobre os objetos do seu banco de dados, do seu servidor, etc. • Dê retorno para as pessoas que lhe ajudarem

Slide 14

Slide 14 text

Em listas de discussão • Não mande anexos • Mande seu e-mail em texto puro, evite funcionalidades que só funcionam em alguns clientes de e-mail; • Pense antes de escrever o assunto do e-mail, diga algo que indique o tipo de problema que você tem; • Não inicie uma nova pergunta no meio da thread de outro assunto; • Não faça top-posting;

Slide 15

Slide 15 text

Em chats • Não envie anexos a não ser que isso seja expressamente permitido; • Não cole textos longos. Se precisar use o pastebin.com ou outras ferramentas para compartilhar código, logs, etc. • Responda sempre dentro da thread que lhe interessa para não bagunçar a conversa e chamar a atenção de quem você quer que interaja com você; • Lembre-se que chats são assíncronos e as pessoas às vezes estão ocupadas com outras coisas;

Slide 16

Slide 16 text

Só para lembrar • Seja sempre educado e gentil; • Não entre em brigas, não ofenda ninguém; • Não discrimine ninguém por ser um iniciante, nem por sexo, credo, raça, religião, política, etc. Não entre nesses assuntos em fóruns técnicos. • Jamais espere que alguém vá fazer o seu trabalho. Para isso contrate suporte pago. Os canais de ajuda podem lhe tirar dúvidas, mas não fazer o seu trabalho. • Dúvidas muito específicas podem ficar sem resposta, procure canais mais especializados.

Slide 17

Slide 17 text

Instalação em Linux - RPM • Não instale nada da sua distribuição original! • Entre em https://yum.postgresql.org • Escolha a sua distribuição Linux e a sua versão do PostgreSQL • No Linux: • wget pgdg_.noarch.rpm • rpm -ivh pgdg_.noarch.rpm • yum update • yum search postgresqlxy, postgresqlxy-contrib, postgresqlxy-server

Slide 18

Slide 18 text

Instalação de um novo disco • fdisk -l • cfdisk /dev/sdx • mkfs.xfs /dev/sdx • mount /dev/sdx /pgdata • df -h • umount /pgdata • ls -lh /dev/disk/by-uuid • editar /etc/fstab • mount -a • chown postgres: /pgdata

Slide 19

Slide 19 text

Meu PostgreSQL não conecta! • O banco foi criado? • initdb • O banco de dados está no ar? • pg_ctl start/stop/status • postgresql.conf: listen_addresses = '*’ • pg_hba.conf: hostall all 0.0.0.0/0 md5 • createuser • createdb • firewall • telnet, ping

Slide 20

Slide 20 text

Arquitetura • Cluster • Catálogo global • Catálogo local • WAL • Tablespaces • pg_hba.conf • postgresql.conf • /usr/pgsql-xy/bin

Slide 21

Slide 21 text

Variáveis de ambiente • PGDATA • PGDATABASE • PGHOST • PGPORT • PGUSER • PGPASSWORD • ~/.pgpass.conf ou %APPDATA%\postgresql\pgpass.conf • hostname:port:database:username:password • chmod 0600

Slide 22

Slide 22 text

psql • psql -h host -p port -U username database • -c command • -f file • -l • -E • \? \d \o \i \d \q

Slide 23

Slide 23 text

Tuning • Em 5 minutos: • https://www.pgconfig.org • Para toda a vida: • autovacuum • ANALYZE • EXPLAIN • EXPLAIN ANALYZE • https://explain.depesz.com

Slide 24

Slide 24 text