Deixo neste post a minhas anotações criadas ao instalar o banco postgresql no OpenSuse 11.2. Siga as instruções a seguir após instalar o banco via RPM, source ou YAST.
# rcpostgresql stop
# su - postgres
$$ psql -U postgres template1
em vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL.
Digite: \copyright para mostrar termos de distribuição
\h para ajuda com comandos SQL
\? para ajuda com comandos do psql
\g ou terminar com ponto-e-vÃrgula para executar a consulta
\q para sair
template1=# alter user postgres with encrypted password 'NOVA-SENHA';
ALTER ROLE
template1=# \q
Alterar o conteúdo do arquivp pg_hba.conf conforme o exemplo abaixo:
/var/lib/pgsql/data/pg_hba.conf local all all password host all all 127.0.0.1/32 password host all all ::1/128 password tcpip_socket = true listen_addresses = '*'
Criando usuário:
$ createuser -U postgres -W -P Digite o nome da role a ser adicionada: cabelo Digite a senha para a nova role: Digite-a novamente: A nova role podera criar um super-usuario? (s/n) n A nova role podera criar bancos de dados? (s/n) s A nova role podera criar novas roles? (s/n) n Senha: CREATE ROLE
Criando e apagando um banco de dados.
$createdb BANCO-VOL Senha: $dropdb BANCO-VOL Senha:
Criando uma tabela;
$ psql FACIAL Bem vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL. Digite: \copyright para mostrar termos de distribuição \h para ajuda com comandos SQL \? para ajuda com comandos do psql \g ou terminar com ponto-e-vÃrgula para executar a consulta \q para sair FACIAL=> CREATE TABLE usuarios ( FACIAL(> registro int primary key NOT NULL, FACIAL(> nome varchar(60) NOT NULL, FACIAL(> dt_cadastro timestamp, FACIAL(> dt_acesso timestamp, FACIAL(> aviso varchar(256), FACIAL(> depto varchar(30), FACIAL(> cargo varchar(30), FACIAL(> chamar varchar(30), FACIAL(> novofir varchar(1), FACIAL(> alterarfoto varchar(1), FACIAL(> empresa varchar(30), FACIAL(> documento varchar(20), FACIAL(> endereco varchar(60), FACIAL(> cidade varchar(30), FACIAL(> estado varchar(2), FACIAL(> tipo_doc varchar(10) FACIAL(> ); NOTA: CREATE TABLE / PRIMARY KEY criara indice implicito "usuarios_pkey" na tabela "usuarios" CREATE TABLE FACIAL=> \q
Alterando uma tabela:
$ psql FACIAL
Bem vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL.
Digite: \copyright para mostrar termos de distribuição
\h para ajuda com comandos SQL
\? para ajuda com comandos do psql
\g ou terminar com ponto-e-vÃrgula para executar a consulta
\q para sair
FACIAL=> ALTER TABLE usuarios ADD COLUMN foto OID;
FACIAL=> ALTER TABLE usuarios ADD COLUMN fir OID;
ALTER TABLE usuarios ALTER tipo_doc TYPE VARCHAR(15);
alter table acesso add sequencia int primary key DEFAULT NEXTVAL('acesso_seq')
ALTER TABLE
FACIAL=> \q;
Backup e restore:
$ pg_dump -Ftob FACIAL > FACIAL.tar $ pg_restore -d FACIAL FACIAL.tar
Inserindo auto-incremento na tabela:
CREATE SEQUENCE sq;
CREATE TABLE t_test( id INTEGER PRIMARY KEY DEFAULT NEXTVAL('sq'), name VARCHAR(10) );
INSERT INTO t_test(name)
VALUES ('Andrew');
INSERT INTO t_test(name)
VALUES ('Gordon');
SELECT * FROM t_test;
Por enquanto é só, até o próximo post.
