Este guia orienta você em algumas tarefas comuns em torno de um servidor Postgres. Neste tutorial, abordaremos a instalação do Postgres, a criação de novos bancos de dados e usuários, o backup de bancos de dados e muito mais! Vamos cavar!
Nota:O restante deste tutorial requer que você tenha root privilégios. Comece fazendo login como root ou prefixe esses comandos com sudo .
Instalando o PostgreSQL
Instalar o Postgres é simples em nosso servidor CentOS VPS, graças ao gerenciador de pacotes YUM. Execute o seguinte comando para instalar o Postgres em seu sistema:
yum install -y postgres-server
Configurando o PostreSQL
Agora que o Postgres está instalado, é hora de configurar o serviço. Primeiro, o Postgres requer que você inicialize um banco de dados antes que ele possa ser usado. Felizmente, eles fornecem um comando para facilitar essa etapa para nós:
postgres-setup initdb
Vamos configurar o Postgres para iniciar automaticamente quando seu servidor for inicializado. Execute o seguinte comando para habilitar o serviço na inicialização:
systemctl enable postgres
Em seguida, iniciaremos o serviço. O comando a seguir iniciará o Postgres se ainda não estiver em execução:
systemctl start postgres
Por fim, verificamos se o Postgres está sendo executado após a reinicialização:
service postgres status
A saída deve exibir ativo (em execução), o que indica que o serviço está ativo e estamos prontos para prosseguir!
Criando um novo banco de dados e adicionando um novo usuário
O Postgres é executado como o usuário “postgres” em seu sistema CentOS Linux, não como “root”. Isso é importante observar porque você não pode interagir com o Postgres como root.
Primeiro, vamos mudar para o “postgres " do utilizador. Este usuário foi criado automaticamente em seu sistema quando instalamos o Postgres.
su - postgres
Em seguida, criaremos um novo banco de dados. Estamos chamando de “meubanco de dados ” em nosso exemplo, mas sinta-se à vontade para nomeá-lo como quiser.
createdb mydatabase
Agora, adicionaremos um novo usuário para esse banco de dados. Neste exemplo, estamos usando o nome de usuário “myusername ”, mas você pode nomear isso como quiser.
createuser myusername
Conceder permissões ao banco de dados PostgreSQL
Até agora, instalamos o Postgres, criamos um novo banco de dados e criamos um novo usuário para acessar o banco de dados. Há apenas uma etapa restante, que é conceder permissões para que nosso novo usuário tenha permissão para acessar o banco de dados. Para iniciar este processo, devemos primeiro entrar no “shell postgres”. Digite o seguinte comando:
psql
Após pressionar enter, você deve notar que seu prompt de comando mudou, indicando que agora você está no shell do Postgres.
psql (9.2.24)
Type “help” for help.
postgres =#
A partir daqui, agora podemos adicionar permissões para que nosso novo usuário acesse o banco de dados. Digite o seguinte comando para definir uma senha para nosso usuário. Há poucas coisas a serem observadas. Primeiro, as aspas simples ao redor da senha são obrigatórias! Em segundo lugar, certifique-se de substituir o exemplo my_secure_password para uma senha segura legítima! Finalmente, certifique-se de incluir o ponto e vírgula no final da declaração. É fácil perder!
alter username myusername with encrypted password ‘my_secure_password’;
O Postgres deve responder com o seguinte texto informando que foi bem-sucedido.
ALTER ROLE
Agora que a senha foi criada, vamos definir as permissões no banco de dados. Isso permitirá que myusername acesse mydatabase.
grant all privileges on database mydatabase to myusername;
O Postgres responderá com o seguinte texto se o comando for bem-sucedido.
GRANT
Vamos verificar nosso trabalho e verificar se o banco de dados aparece no Postgres. No shell, execute o \list comando e observe a saída com cuidado. Você deverá ver “meubanco de dados ” na lista de bancos de dados.
Foram realizadas! Digite o seguinte comando para sair do shell do Postgres.
\quit
Como fazer backup de um banco de dados PostgreSQL
Existem várias maneiras de fazer backup de um banco de dados Postgres. Para o nosso exemplo de hoje, mostraremos como usar o excelente “pg_dump ” comando, que gera seu banco de dados inteiro como um único arquivo. Criar backups é um piscar de olhos! Execute o seguinte comando para fazer backup de nosso banco de dados. Observe que usamos o nome “mydatabase.bak ” em nosso exemplo, mas você pode nomear seu arquivo de backup como quiser.
pg_dump mydatabase > mydatabase.bak
Agora você pode copiar ou mover facilmente esse arquivo para onde quiser armazenar backups. Como prática recomendada, sugerimos que você armazene seus backups em um disco de backup dedicado, separado da unidade do sistema operacional. Dessa forma, seus backups estão seguros e protegidos, mesmo no caso improvável de uma falha do sistema.
Como excluir um banco de dados PostgreSQL
A exclusão de um banco de dados é um processo direto. Ele requer que você primeiro acesse o shell do Postgres. Um lembrete rápido de que você pode acessar o shell do Postgres com o seguinte comando:
psql
A partir daqui, é um único comando para excluir o banco de dados. Vamos excluir nosso banco de dados de amostra.
drop database mydatabase
O Postgres confirmará o sucesso com a seguinte mensagem:
DROP DATABASE
Observação:Se você especificar um banco de dados que não existe, o Postgres responderá com o seguinte erro:
ERROR: database “my_other_database” does not exist
Você pode verificar se o banco de dados foi excluído usando o \list comando dentro do shell do Postgres. Observe a saída e você deve observar que “mydatabase ” foi removido da lista de bancos de dados.
Como restaurar um banco de dados PostgreSQL a partir de backups
Agora que excluímos nosso banco de dados chamado “mydatabase ”, vamos ver como restaurar esse banco de dados a partir do backup que criamos. Primeiro, precisamos usar um modelo vazio para hospedar o banco de dados restaurado. Certifique-se de executar o seguinte comando como seu usuário Postgres e a partir do shell BASH (não do shell Postgres!)
createdb -T template0 mydatabase
Agora que temos nosso espaço reservado para o modelo, podemos importar dados.
psql mydatabase < /path/to/mydatabase.bak
O banco de dados foi restaurado. Se você executar \list novamente no shell do Postgres, você verá que “mydatabase” aparecerá novamente em nossa lista de bancos de dados!
Parabéns por chegar ao final desta edição. Nós cobrimos muito terreno neste tutorial! Nós apenas arranhamos a superfície deste tópico e você já pode começar a ver por que os administradores de banco de dados ocupam cargos dedicados em muitas empresas! Felizmente, a Liquid Web está aqui para ajudá-lo com todas as suas necessidades de banco de dados. Nossa equipe de profissionais pode ajudar a aconselhar e gerenciar seus bancos de dados. Entre em contato conosco se tiver alguma dúvida e obrigado por ler!