Introdução ao banco de dados Postgresql 1 uso

1.1 instalação

Desnecessário dizer que você precisa instalá-lo antes de usar o PostgreSQL. Se o PostgreSQL estiver pré-instalado em seu sistema operacional ou se o administrador do sistema o tiver instalado, você precisará obter informações sobre como acessar o PostgreSQL na documentação do sistema operacional ou no administrador do sistema.

Se você não tem certeza se o PostgreSQL já está instalado ou se o PostgreSQL instalado está disponível, você mesmo pode instalá-lo. A instalação do PostgreSQL não é difícil e a instalação em si é uma boa oportunidade de exercício. O PostgreSQL pode ser instalado por usuários sem privilégios e não requer direitos de acesso de superusuário (root).

Se você deseja instalar o PostgreSQL por conta própria, consulte as instruções de instalação no Capítulo 15 e retorne a esta instrução após a conclusão da instalação. Certifique-se de definir as variáveis ​​de ambiente relevantes.

Se o administrador do seu servidor não instalar o PostgreSQL da maneira padrão, você precisará fazer algum trabalho extra. Por exemplo, se o servidor de banco de dados estiver em um computador remoto, você precisa definir a variável de ambiente PGHOST para o nome do computador do servidor de banco de dados, e a variável de ambiente PGPORT também pode precisar ser definida. O mais comum é que, se você iniciar o aplicativo, mas não conseguir se conectar ao banco de dados, você deve entrar em contato com o administrador do sistema imediatamente; se você for um administrador, deve consultar a documentação para garantir que as variáveis ​​de ambiente estejam definidas corretamente. Se você ainda não tem certeza sobre o conteúdo mencionado acima, leia a próxima seção primeiro.

1.2 Conceitos básicos do sistema

Em primeiro lugar, você precisa entender a arquitetura básica do sistema PostgreSQL. Compreender as inter-relações entre as várias partes do sistema PostgreSQL tornará este capítulo mais claro.

O PostgreSQL usa o modelo cliente / servidor (C / S) para fornecer serviços. Uma sessão de PostgreSQL consiste nos seguintes processos (programas) relacionados:

(1) Um processo do lado do servidor. Este processo gerencia arquivos de banco de dados, aceita conexões de clientes com o banco de dados e executa operações no banco de dados em nome do cliente. O nome do programa desse processo é postgres.

(2) Aplicativos front-end, ou seja, aplicativos cliente que requerem operações de banco de dados. Os próprios aplicativos cliente podem ser diversos: eles podem ser uma ferramenta de interface de caractere, um aplicativo de interface gráfica, um servidor da web que exibe páginas da web acessando um banco de dados ou uma ferramenta especial de gerenciamento de banco de dados. Alguns aplicativos clientes são fornecidos com a versão PostgreSQL, mas a maioria deles é desenvolvida por usuários.

Como um aplicativo cliente / servidor típico (aplicativo C / S), o cliente e o servidor podem estar em hosts diferentes. Neste ponto, eles estão conectados via TCP / IP. Você deve ter isso em mente, porque os arquivos que podem ser acessados ​​no cliente podem não estar acessíveis na máquina do servidor de banco de dados (ou só podem ser acessados ​​com um nome de arquivo diferente) .

O servidor PostgreSQL pode lidar com várias solicitações simultâneas de clientes. Para poder fazer isso, ele iniciará ("bifurcações") um novo processo para cada solicitação. Então, o cliente e o novo processo do servidor não se comunicarão diretamente através do processo postgres original. Portanto, o processo principal do lado do servidor está sempre em execução, aguardando uma conexão do cliente; enquanto o cliente e o processo do lado do servidor associado só serão executados quando necessário. (Claro, eles são transparentes para os usuários, e eu falo sobre eles aqui para fins de integridade.)

 

1.3 Criar um banco de dados

O primeiro exemplo para testar se você pode acessar o servidor de banco de dados é tentar criar um banco de dados, um servidor PostgreSQL pode gerenciar vários bancos de dados, normalmente usaremos um banco de dados separado para cada projeto e cada usuário.

O administrador do sistema pode ter criado o banco de dados para você e fornecido o nome do banco de dados. Se for esse o caso, você pode pular esta etapa e pular para a próxima seção

Para criar um novo banco de dados denominado mydb (mydb em nosso exemplo), você pode usar o seguinte comando:

   $ createdb mydb

Se nenhuma informação especial for exibida após a execução do comando, o comando foi bem-sucedido e você pode pular o restante desta seção.

Se você vir uma mensagem como a seguinte

   createdb: command not found 

Então o PostgreSQL não foi instalado corretamente. Ou ele não está instalado ou a configuração do caminho de pesquisa do shell não o inclui. Tente chamar o comando com um caminho absoluto:

   $ /usr/local/pgsql/bin/createdb mydb 

O caminho em seu nó pode ser diferente. Entre em contato com seu administrador ou consulte as instruções de instalação para o local correto.

Outra resposta pode ser assim:

   createdb: could not connect to database postgres: could not connect to server:
   No such file or directory
       Is the server running locally and accepting
       connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

Isso significa que o servidor não foi iniciado ou não foi iniciado onde o createdb esperava. Da mesma forma, você também deve verificar as instruções de instalação ou encontrar um administrador.

Outra resposta pode ser assim:

   createdb: could not connect to database postgres: FATAL: role "joe" does not exist 

Sua conta de login é mencionada aqui. Se o administrador não criar uma conta de usuário do PostgreSQL para você, esses fenômenos ocorrerão. (As contas de usuário do PostgreSQL e as contas de usuário do sistema operacional são diferentes.) Se você for um administrador, consulte o Capítulo 20 para obter ajuda na criação de contas de usuário. Você precisa mudar para a identidade do usuário do sistema operacional que instalou o PostgreSQL (geralmente postgres) para criar a primeira conta de usuário. Também é possível que o nome de usuário do PostgreSQL fornecido a você seja diferente do nome de usuário do seu sistema operacional; neste caso, você precisa usar a opção -U ou usar a variável de ambiente PGUSER para declarar seu nome de usuário do PostgreSQL.

Se você tiver uma conta de usuário de banco de dados, mas não tiver as permissões necessárias para criar um banco de dados, verá o seguinte prompt:

   createdb: database creation failed: ERROR:  permission denied to create database

Nem todos os usuários estão autorizados a criar novos bancos de dados. Se o PostgreSQL se recusar a criar um banco de dados, você precisará pedir ao administrador do nó para conceder a você a permissão para criar um banco de dados. Quando isso acontecer, consulte o administrador do nó. Se você instalou o PostgreSQL, deve efetuar login como o usuário que iniciou o servidor de banco de dados e consultar o manual para concluir o trabalho de autorização. [1]

Você também pode criar bancos de dados com outros nomes. O PostgreSQL permite que você crie qualquer número de bancos de dados em um determinado nó. O nome do banco de dados deve começar com uma letra e ter menos de 63 caracteres. Uma maneira conveniente é criar um banco de dados com o mesmo nome de seu nome de usuário atual. Muitas ferramentas presumem que o nome do banco de dados é o nome do banco de dados padrão, então você pode salvar suas teclas. Para criar esse banco de dados, basta digitar

   $ createdb

Se você não quiser mais usar seu banco de dados, poderá excluí-lo. Por exemplo, se você for o proprietário (criador) do banco de dados mydb, poderá excluí-lo com o seguinte comando:

   $ dropdb mydb

(Para este comando, o nome do banco de dados não é o nome de usuário padrão. Portanto, você deve declará-lo.) Esta ação exclui fisicamente todos os arquivos relacionados ao banco de dados e não pode ser cancelada, portanto, certifique-se de fazer isso antes de fazer isso Pense com clareza.

Informações sobre createdb e dropdb podem ser encontradas em seções separadas de createdb e dropdb, respectivamente.

Nota:

[1] Com relação ao motivo: o nome de usuário do PostgreSQL é separado da conta de usuário do sistema operacional. Ao se conectar a um banco de dados, você pode escolher com qual nome de usuário do PostgreSQL se conectar; se não escolher, o padrão será a conta do sistema operacional atual. Nesse caso, sempre haverá uma conta de usuário PostgreSQL com o mesmo nome do usuário do sistema operacional para iniciar o servidor e, geralmente, esse usuário tem permissão para criar um banco de dados. Se você não deseja efetuar login como esse usuário, também pode especificar uma opção -U em qualquer lugar para escolher um nome de usuário PostgreSQL ao qual se conectar.

1.4 Acesso ao banco de dados

Depois de criar um banco de dados, você pode acessá-lo das seguintes maneiras;

  • Execute o programa de terminal interativo PostgreSQL psql, que permite inserir, editar e executar comandos SQL interativamente.
  • Use as ferramentas gráficas de front-end existentes, como Pgadmin ou suítes de escritório com suporte ODBC ou JDBC para criar e gerenciar bancos de dados. Este método não é abordado neste tutorial.
  • Escreva um aplicativo cliente que use uma das várias ligações de idioma. Essas possibilidades são discutidas com mais detalhes na Parte IV.

Você pode querer iniciar o psql para experimentar os exemplos deste tutorial. Você pode inserir o seguinte comando para iniciar o banco de dados mydb:

   $ psql mydb

Se você não fornecer um nome de banco de dados, o padrão será o nome da sua conta de usuário. Você já sabe como usar o createdb na seção anterior.

No psql, você verá as seguintes informações:

   psql (9.1)
   Type "help" for help.
   mydb=>

A última linha também pode ser

   mydb=#

Este prompt significa que você é um superusuário do banco de dados, e a causa mais provável desta situação é sua própria instalação do PostgreSQL. Ser um superusuário significa que você não está restrito ao controle de acesso. Para os fins deste tutorial, não importa se você é um superusuário.

Se você encontrar problemas ao iniciar o psql, volte para a seção anterior. O método de diagnóstico do createdb é muito semelhante ao método de diagnóstico do psql. Se o primeiro funcionar, o último também deve funcionar.

A última linha impressa pelo psql é um prompt, o que significa que o psql está ouvindo você.Neste momento, você pode inserir instruções de consulta SQL em uma área de trabalho mantida pelo psql. Tente o seguinte comando:

mydb=> SELECT version();
                              version
-----------------------------------------------------------------------
PostgreSQL 9.1 on i586-pc-linux-gnu, compiled by GCC 2.96, 32-bit
(1 row)
mydb=> SELECT current_date;
   date
------------
 2002-08-31
(1 row)
mydb=> SELECT 2 + 2;
 ?column?
----------
       4
(1 row)

O programa psql possui alguns comandos internos que não são comandos SQL. Eles começam com uma barra invertida, "\". Por exemplo, você pode usar o seguinte comando para obter a sintaxe de ajuda de vários comandos SQL do PostgreSQL:

   mydb=> \h

Para sair do psql, digite

   mydb=> \q

Em seguida, o psql sairá e retornará à linha de comando do shell. (Para obter mais informações sobre comandos internos, você pode digitar \? No prompt do psql). A funcionalidade completa do psql está documentada na documentação do psql. Se o PostgreSQL estiver instalado corretamente, você também pode digitar man psql no prompt do shell do sistema operacional para ler o documento. Neste documento, não usaremos explicitamente esses recursos, mas você pode usá-los quando apropriado.

Acho que você gosta

Origin blog.csdn.net/qq_37061368/article/details/112978393
Recomendado
Clasificación