Criando seu 1° super usuário no PostgreSQL.
Depois de instalado seu SGBD postgres, como criar seu 1° usuário? Qual a senha de root? Qual a senha padrão?
Esta dica é para iniciantes.
Simples, na máquina com o banco instalado siga os seguintes passos, existem varias maneiras de fazer isso, e essa foi a maneira mais básica/simples que eu achei para explicar.
Logue-se como root, digite “su root” ou “sudo -i” ou “sudo su” (no terminal a mensagem padrão deve terminar com #).
Entre como usuário postgres com o comando:
Entre como usuário postgres com o comando:
1
| # su postgres |
Conecte ao Shell do postgres (por padrão você se conecta ao DB postgres) comando:
1
| $ psql |
Agora deve aparecer uma frase de boas vindas (Bem vindo ao psql…) e você está no terminal do posgres, note que o shell mudou antes era root@pc # agora ficou postgres=#
Isso quer dizer que agora você está no shell do PostgreSQL conectado no banco postgres.
Isso quer dizer que agora você está no shell do PostgreSQL conectado no banco postgres.
Para criar nosso superuser, digite o comando:
1
| CREATE USER nomedousuario SUPERUSER INHERIT CREATEDB CREATEROLE; |
Depois temos que alterar a senha, então digite o comando:
1
| ALTER USER nomedousuario PASSWORD 'senha' ; |
Olha que maravilha! Super Usuário criado.
Comandos básicos, para você que está acostumado com o golfinho, o Mamute é bem diferente.
# psql
\l => Lista todos os bancos de dados
\c nome-banco => Conecta no banco nome-banco
\d => Lista as tabelas do banco de dados conectado
\d table-name => Descrimina as colunas da tabela
\dg => Lista usuários existentes, as permissões e grupos que o usuário pertence
\password [usuario] => Troca a senha do usuário com segurança, ou seja você não vê a seha que foi digitada e não é possível ver através do histórico de comandos.
select * from table-name => Lista o conteúdo das tabelas (o.O)
\l => Lista todos os bancos de dados
\c nome-banco => Conecta no banco nome-banco
\d => Lista as tabelas do banco de dados conectado
\d table-name => Descrimina as colunas da tabela
\dg => Lista usuários existentes, as permissões e grupos que o usuário pertence
\password [usuario] => Troca a senha do usuário com segurança, ou seja você não vê a seha que foi digitada e não é possível ver através do histórico de comandos.
select * from table-name => Lista o conteúdo das tabelas (o.O)
Poderíamos usar essas opções da mesma forma, mas criando um usuário comum e colocando as permissões mais restritivas.
1
| CREATE USER jesuejunior WITH PASSWORD 'supersecret' ; |
Para conceder a permissão de executar somente Update ou Select ou Insert ou Delete ou Rule(dono)
1
| GRANT UPDATE ON nomedatabela to jesuejunior |
1
| GRANT SELECT ON nomedatabela to jesuejunior |
1
| GRANT INSERT ON nomedatabela to jesuejunior |
1
| GRANT DELETE ON nomedatabela to jesuejunior |
1
| GRANT RULE ON nomedatabela to jesuejunior |
E para dar permissão para fazer todas as operações.
1
| GRANT ALL PRIVILEGES ON nomedatabela to public |
Partindo do principio que você já está conectado com o usuário postgres.
Para apagar um usuário:
Para apagar um usuário:
1
| $ dropuser jesuejunior |