Em 26 de abril de 2013 11:01, Matheus de Oliveira <[email protected] > escreveu:
> > > > 2013/4/26 Rogério D'Andréa <[email protected]> > >> >> >> >> Em 26 de abril de 2013 09:39, Matheus de Oliveira < >> [email protected]> escreveu: >> >> >>> >>> >>> 2013/4/25 Danilo Silva <[email protected]> >>> >>>> Em 25 de abril de 2013 11:16, Rogério D'Andréa >>>> <[email protected]>escreveu: >>>> >>>> Mas ai teria que ligar os micros em rede( ou poderia fazer esta >>>>> conexão pela internet?), Estou usando o postgreSQL como banco de dados >>>>> externo ao libreoffice para gerenciar cerca de 10 mil clientes e toda a >>>>> funcionalidade do programa está no libreoffice e estou aproveitando da >>>>> segurança e robustez do postgreSQL. >>>>> >>>> >>>> Rogerio, não utilize TOP-POSTING isso atrapalha a leitura e obviamente >>>> o raciocinio de quem está lendo e tentando te ajudar. >>>> >>>> >>> Realmente, já virou bagunça esse post... =/ >>> >>> >>> >>>> Respondendo as suas perguntas: Antes de começar a migração, avalie >>>> primeiro o tamanho do cluster e hardware, se o postgresql será migrado >>>> dentro do mesmo servidor ou em outro, se será, primeiro, migrado para um >>>> servidor de testes, janela de tempo, etc. Depois dessas perguntas >>>> respondidas, vc poderá planejar a migração, conforme já te responderam >>>> anteriormente, existem algumas opções de migração. eu particularmente, após >>>> avaliar os tamanhos etc, utilizo o pg_dump + pg_restore, para se ter uma >>>> idéia, recentemente eu fiz uma migração do 8.2 para 9.1 (o cluster tinha em >>>> torno de 15 GiB), em um servidor Ubuntu (não lembro a versão) com 8 GiB de >>>> RAM, o processo de dump + restore levou em torno de 1 hora e 30 minutos. >>>> >>>> >>> 1h30min para 15GB ainda me parece muito, mas depende de outros fatores >>> além dos informados... Uma dica para agilizar é, ao invés de usar o >>> pg_dumpall, usar o pg_dump em formato binário e ao importar com o >>> pg_restore utilizar a opção "-j <numero cores>" para paralelizar a operação >>> (o ganho é muito grande). O passo-a-passo seria +/- o seguinte (sempre >>> usando os binários da versão mais nova): >>> >>> 1. pg_dumpall *<versão antiga>* -g -f /path/to/global.sql # recupera >>> objetos globais (roles, tablespaces, etc.) >>> 2. para cada banco B: >>> pg_dump *<versão antiga> <banco B>* -Fc -f /path/to/*<B>*.dump >>> 3. psql *<versão nova>* -f /path/to/global.sql >>> 3. para cada banco B: >>> pg_restore *<versão nova>* -d template1 -C -j *<numero de >>> cores da máquina>* -f /path/to/*<B>*.dump >>> >>> >>> >>>> Lembre-se sempre, antes de executar, analise primeiro, estude todo o >>>> processo, marque o tempo das execuções, e documente tudo. >>>> >>>> >>> Ótima dica! >>> >>> >>> >>>> >>>>> Em 25 de abril de 2013 10:41, Matheus de Oliveira < >>>>> [email protected]> escreveu: >>>>> >>>>>> >>>>>> >>>>>> >>>>>> 2013/4/24 Rogério D'Andréa <[email protected]> >>>>>> >>>>>>> Sim Matheus é muito...rs Especialmente quando fazemos pela primeira >>>>>>> vez e não dá certo de primeira...rs Então vou seguir as sua dicas vou >>>>>>> instalar o 9.2 com o ubuntu 12.4 >>>>>>> >>>>>>> >>>>>> Particularmente não sou muito fã do Ubuntu para servidor, mas se for >>>>>> usá-lo, use a versão Server. Ok? >>>>>> >>>>>> >>>>>> >>>>>>> tenho então que instalar a versão 9.2 na mesma maquina que já esta >>>>>>> rodando a 8.4 para fazer o dump já com a versão 9.2 é isto? e depois >>>>>>> restore na outra maquina que tambem vai estar com a versão 9.2. Estava >>>>>>> fazendo o dump com a 8.4 e tentado o restore com a 9.1 deve ser por isto >>>>>>> que não estava dando certo >>>>>>> >>>>>>> >>>>>>> >>>>>> O ideal é usar sempre os binários da mais nova para realizar o dump, >>>>>> assim você evita problemas (eles são solúveis, mas é trabalhoso). >>>>>> >>>>>> Se você está migrando entre servidores diferentes, não há necessidade >>>>>> de instalar a 8.4 no mais novo. Assumindo que ambos estejam executando, >>>>>> basta você instalar a 9.2 no mais novo e executar o dump de lá (isso pode >>>>>> ser mais lento, mas se sua base não for grande é traquilo): >>>>>> >>>>>> /usr/lib/postgresql/9.2/bin/pg_dumpall -h <hostname/ip do servidor >>>>>> antigo> | psql >>>>>> >>>>>> Quanto ao pgAdmin, eu não sei te dizer se dá pra fazer por ele, mas >>>>>> ele usa o pg_dump internamente, só tem que conferir qual a versão do >>>>>> mesmo ele está usando, se não for da 9.2 pode apresentar erros. Aliás, >>>>>> quais foram os erros? >>>>>> >>>>>> Atenciosamente, >>>>>> -- >>>>>> Matheus de Oliveira >>>>>> Analista de Banco de Dados >>>>>> Dextra Sistemas - MPS.Br nível F! >>>>>> www.dextra.com.br/postgres >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> pgbr-geral mailing list >>>>>> [email protected] >>>>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> pgbr-geral mailing list >>>>> [email protected] >>>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> pgbr-geral mailing list >>>> [email protected] >>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>> >>>> >>> >>> At. >>> -- >>> Matheus de Oliveira >>> Analista de Banco de Dados >>> Dextra Sistemas - MPS.Br nível F! >>> www.dextra.com.br/postgres >>> >>> >>> _______________________________________________ >>> pgbr-geral mailing list >>> [email protected] >>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>> >>> bom instalei o 9.2 na mesma maquina que esta o 8.4, >> iniciei o servidor pelo terminal >> >> ro@VBR:~$ sudo /etc/init.d/postgresql restart >> [sudo] password for ro: >> * Restarting PostgreSQL 8.4 database server >> [ OK ] >> * Restarting PostgreSQL 9.2 database server >> [ OK ] >> >> parei o servidor 8.4 >> >> ro@VBR:~$ sudo /etc/init.d/postgresql stop 8.4 >> * Stopping PostgreSQL 8.4 database server >> [ OK ] >> >> >> > O 8.4 deve estar no ar para poder usar o pg_dumpall. > > >> ro@VBR:~$ /usr/lib/postgresql/9.2/bin/pg_dumpall -p 5432 | >> /usr/lib/postgresql/9.2/bin/psql -p 5433 >> psql: não pôde conectar ao servidor: Arquivo ou diretório não encontrado >> O servidor está executando localmente e aceitando >> conexões no soquete de domínio Unix >> "/var/run/postgresql/.s.PGSQL.5433"? >> pg_dumpall: não pôde conectar ao banco de dados "template1": FATAL: role >> "ro" n?o existe >> >> >> >> > Parece que 5433 é a versão 8.4 (pelo erro diz que é essa que não está > rodando), execute o pg_lsclusters para verificar a porta correta de cada > versão: > > $ pg_lsclusters > > > Atenciosamente, > -- > Matheus de Oliveira > Analista de Banco de Dados > Dextra Sistemas - MPS.Br nível F! > www.dextra.com.br/postgres > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > verificando as portas ro@VBR:~$ pg_lsclusters Ver Cluster Port Status Owner Data directory Log file 8.4 main 5433 down postgres /var/lib/postgresql/8.4/main /var/log/postgresql/postgresql-8.4-main.log 9.2 main 5432 online postgres /var/lib/postgresql/9.2/main /var/log/postgresql/postgresql-9.2-main.log reinicializando os servidores ro@VBR:~$ sudo /etc/init.d/postgresql restart[sudo] password for ro: * Restarting PostgreSQL 8.4 database server [ OK ] * Restarting PostgreSQL 9.2 database server [ OK ] executando o dumpall ro@VBR:~$ /usr/lib/postgresql/9.2/bin/pg_dumpall -p 5433 | /usr/lib/postgresql/9.2/bin/psql -p 5432 psql: FATAL: role "ro" n?o existe pg_dumpall: consulta falhou: ERRO: permissão negada para relação pg_authid pg_dumpall: consulta foi: SELECT oid, rolname, rolsuper, rolinherit, rolcreaterole, rolcreatedb, rolcanlogin, rolconnlimit, rolpassword, rolvaliduntil, false as rolreplication, pg_catalog.shobj_description(oid, 'pg_authid') as rolcomment FROM pg_authid ORDER BY 2
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
