Skip to content

Aviso: Este artigo ainda é um rascunho!

Roteiro para alterar o locale

  1. Logar com usuário root

  2. Ir para o diretório bin cd /usr/local/pgsql/bin/

  3. Fazer o dump completo do banco ./pg_dumpall -U TOTALI > totali.dmp

  4. Entrar no PostgreSQL ./psql -U TOTALI totali

  5. Executar os comandos abaixo: \o search_path.sql select 'ALTER USER "'||usename||'" set '||useconfig[1]||';' from pg_user usu where useconfig[1] like 'search_path%'; \o

  6. Desconectar \q

  7. Parar o banco ./pg_ctl stop -D ../data

  8. Voltar para pgsql cd ..

  9. Renomear a pasta data mv data data_antiga

  10. Criar nova pasta data mkdir data

  11. Dar permissões chown postgres:postgres data

  12. Alterar para postgres su - postgres

  13. Voltar para bin cd /usr/local/pgsql/bin/

  14. Criar novo database ./initdb -D ../data --locale=C -E LATIN1

  15. Iniciar o banco ./pg_ctl start -D ../data -l ../data/log.txt

  16. Criar Linguagem ./createlang plpgsql template1

  17. Criar funções básicas ./psql template1 -f /instala/pgsql_functions.sql

  18. Criar database ./createdb -E LATIN1 totali

  19. logar no banco ./psql totali

  20. Criar usuario CREATE USER "TOTALI" PASSWORD '2000' CREATEDB CREATEUSER;

  21. Criar schema CREATE SCHEMA "TOTALI" AUTHORIZATION "TOTALI";

  22. Desconectar \q

  23. passar para usuário root exit

  24. Ir para o diretório bin cd /usr/local/pgsql/bin/

  25. Usar o replace totali sh replace_totali template0 template1 totali.dmp

  26. importar o dump ./psql -U postgres totali < totali.dmp

Obs: a mensagem de erro abaixo é aceitável na importação do dump. ERROR: group "nnn" does not exist Obs: onde "nnn" pode ser um número qualquer. Ex.: "148"

  1. recriar search_paths ./psql -U postgres totali < search_path.sql

  2. Parar o banco ./pg_ctl stop -D ../data

  3. copiar configurações antigas cp ../data_antiga/pg_hba.conf ../data/ cp ../data_antiga/postgresql.conf ../data/

  4. Alterar para postgres su - postgres

  5. Voltar para bin cd /usr/local/pgsql/bin/

  6. iniciar o banco ./postmaster -i -D ../data &

obs: a tela ficara parada após a mensagem "LOG: database system is ready" e será necessário pressionar novamente o ENTER

  1. ./vacuumdb -f -z -U TOTALI totali

  2. exit

  3. logout

fim