Como instalar uma base de dados PostgreSQL em Ubuntu 22.04?
Instalar uma base de dados PostgreSQL em Ubuntu 22.04
Objetivo
O PostgreSQL é uma das bases de dados mais famosas do mundo. A sua simplicidade de utilização e a abordagem Open Source são dois fatores importantes para a sua ampla adoção. Para obter mais informações e saber mais sobre as capacidades do PostgreSQL, consulte a documentação oficial.
Neste tutorial, descobrirá como instalar uma base de dados PostgreSQL na distribuição Linux Ubuntu 22.04.
Requisitos
Este tutorial parte do princípio de que dispõe de um Ubuntu 22.04, a correr numa instância de computação OVHcloud, por exemplo. Alguns conhecimentos básicos sobre o seu funcionamento são também necessários. Se não tiver o Ubuntu 22.04, siga este guia para utilizar uma Instância de Computação OVHcloud.
Instruções
Neste tutorial, numa primeira fase, irá instalar uma base de dados PostgreSQL e, em seguida, irá criar a sua própria base de dados com base na primeira.
Instalação da Base de Dados PostgreSQL
Aquando da redação deste tutorial, a última versão de PostgreSQL é a 14.x. Consulte a secção de download da documentação oficial no caso de versões mais antigas ou mais recentes.
A forma mais fácil de instalar o PostgreSQL em Ubuntu é usar o comando apt-get:
sudo apt-get -y install postgresql-14
O resultado deve ser o seguinte:
$ sudo apt-get -y install postgresql-14 Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: libcommon-sense-perl libjson-perl libjson-xs-perl libllvm14 libpq5 libsensors-config libsensors5 libtypes-serialiser-perl postgresql-client-14 postgresql-client-common postgresql-common ssl-cert sysstat Suggested packages: lm-sensors postgresql-doc-14 isag The following NEW packages will be installed: libcommon-sense-perl libjson-perl libjson-xs-perl libllvm14 libpq5 libsensors-config libsensors5 libtypes-serialiser-perl postgresql-14 postgresql-client-14 postgresql-client-common postgresql-common ssl-cert sysstat 0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded. Need to get 42.4 MB of archives. After this operation, 161 MB of additional disk space will be used. Get:1 http://nova.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 libcommon-sense-perl amd64 3.75-2build1 [21.1 kB] ... update-alternatives: using /usr/share/postgresql/14/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode Processing triggers for man-db (2.10.2-1) ... Processing triggers for libc-bin (2.35-0ubuntu3) ... Scanning processes... Scanning linux images... Running kernel seems to be up-to-date. No services need to be restarted. No containers need to be restarted. No user sessions are running outdated binaries. No VM guests are running outdated hypervisor (qemu) binaries on this host.
Tenha em conta que o pacote Ubuntu contém o CLI psql.
Em seguida, pode testar a sua nova instalação:
sudo su - postgres postgres@ubuntu-machine:~$ psql
O resultado deve ser o seguinte:
$ sudo su - postgres postgres@tutos-ugc:~$ psql psql (14.2 (Ubuntu 14.2-1ubuntu1)) Type "help" for help. postgres=# exit postgres@tutos-ugc:~$
Tenha em mente que, por defeito, a instalação de PostgreSQL cria uma conta postgres. Trata-se de uma conta de superutilizador para a base de dados. Tenha cuidado quando a utilizar. Nos próximos capítulos, ser-lhe-á explicado como criar utilizadores padrão.
Adicionar um utilizador no PostgreSQL
Existem duas formas de adicionar um utilizador no PostgreSQL: com pedidos SQL ou recorrendo a um comando em bash. Neste tutorial, iremos debruçar-nos apenas sobre o método, por ser mais completo. Para saber como utilizar o modo de comando, consulte a documentação oficial. Para criar a sua nova conta, deverá utilizar a conta predefinida postgres e o CLIpsql (veja primeiro como se ligar ao psql).
Deve começar por criar um papel (uma espécie de combinação de utilizadores e direitos no mundo PostgreSQL):
postgres=# CREATE USER foo WITH PASSWORD 'bar';
O resultado deve ser o seguinte:
postgres=# CREATE USER foo WITH PASSWORD 'bar'; CREATE ROLE postgres=#
Criar uma base de dados
Aquando da criação da base de dados, é possível definir o proprietário:
postgres=# CREATE DATABASE example OWNER foo
O resultado deve ser o seguinte:
postgres=# CREATE DATABASE example OWNER foo CREATE DATABASE postgres-#
Em seguida, para utilizar o seu novo utilizador, deve criar um utilizador linux equivalente (os privilégios root são obrigatórios para este tipo de comando):
adduser foo
O resultado deve ser o seguinte:
$ sudo su - $ root@tutos-ugc:~# adduser foo Adding user `foo' ... Adding new group `foo' (1001) ... Adding new user `foo' (1001) with group `foo' ... Creating home directory `/home/foo' ... Copying files from `/etc/skel' ... New password: Retype new password: passwd: password updated successfully Changing the user information for foo Enter the new value, or press ENTER for the default Full Name []: Foo Bar Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] Y $ root@tutos-ugc:~# exit
Agora, pode testar a sua nova conta:
sudo su - foo psql -d example
O resultado deve ser o seguinte:
ubuntu@tutos-ugc:~$ sudo su - foo foo@tutos-ugc:~$ psql -d example psql (14.2 (Ubuntu 14.2-1ubuntu1)) Type "help" for help. example=>
Pode elaborar uma lista das suas bases de dados para verificar a criação das mesmas:
postgres=# \l
O resultado deve ser o seguinte:
postgres=# \l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+---------+---------+----------------------- example | foo | UTF8 | C.UTF-8 | C.UTF-8 | postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (4 rows)
Criar uma tabela e utilizá-la
Nesta fase, pode criar tabelas e utilizá-las.
Para os comandos seguintes, recorra ao utilizador foo que criou anteriormente.
example=> CREATE TABLE first_table (id INT PRIMARY KEY NOT NULL, column1 CHAR(50));
O resultado deve ser o seguinte:
example=> CREATE TABLE first_table (id INT PRIMARY KEY NOT NULL, column1 CHAR(50)); CREATE TABLE example=>
Nesta altura, pode utilizar o comando first_table nos pedidos SQL:
example=> INSERT INTO first_table (id, column1) VALUES (1, 'example'); example=> SELECT * FROM first_table;
O resultado deve ser o seguinte:
example=> INSERT INTO first_table (id, column1) VALUES (1, 'example'); INSERT 0 1 example=> SELECT * FROM first_table; id | column1 ----+---------------------------------------------------- 1 | example (1 row)
Já está! Instalou e configurou com sucesso uma base de dados PostgreSQL no Ubuntu 22.04.
Ir mais longe
Consulte as ofertas de bases de dados geridas PostgreSQL e de instâncias Public Cloud na OVHcloud.