Olá pessoal, Possuo quatro servidores:
1 - Master1 > 2 - Slave01 hot-standby (Mesmo hardware que o Master1) > 3 - Slave02 hot-standby (Mesmo hardware que o Master1) > 4 - Slave03 hot-standby (VM - Hardware inferior) Em minha DB, possuo um schema chamado 'GORFS'. Neste SCHEMA ficam todos os arquivos dos usuários, como fotos, notas, documentos, etc. Estaremos migrando este schema para um NFS server, com isto esperamos salvar espaco na DB, já que segundo o SQL a baixo o schema possuí 80GB: SELECT schema_name, > pg_size_pretty(sum(table_size)::bigint), > (sum(table_size) / pg_database_size(current_database())) * 100 > FROM ( > SELECT pg_catalog.pg_namespace.nspname as schema_name, > pg_relation_size(pg_catalog.pg_class.oid) as table_size > FROM pg_catalog.pg_class > JOIN pg_catalog.pg_namespace ON relnamespace = > pg_catalog.pg_namespace.oid > ) t > GROUP BY schema_name > ORDER BY schema_name Gostaria de saber a opinião de vocês, por favor. Estou com dúvidas em relacão à como fazer isto. Em meu ponto de vista, tenho duas opcões: 1 - Não estou certo se este procedimento irá de fato liberar espaco no MASTER - Somente um DROP SCHEMA é suficiente? Ou seria interessante realizar um TRUNCATE antes e depois DROP? 1. DROP SCHEMA schemaname; (Como faco para ver se há dependências?) 2. VACUUM na DB (Posso ativar os outros slaves para serem read-only, assim diminuo o tráfego para o MASTER para que o VACUUM seja feito mais suave 3. Realizar um DUMP na DB, já com o schema deletado e com o vacuum completo - Deletar a DB nos slaves - Importar o dump nos slaves (*basicamente criar um servidor slave novo, mas com os que já existe*) 2 - Esta seria a opcão mais difícil - Mas se a primeira não puder ser realizada... esta deverá então ser. 1. Promover um slave para o novo master (master2) 2. Migrar todos os outros slaves para replicar a partir do novo master2 3. Realizar um DUMP a partir do master2 para o master1, excluindo o schema 'GORFS' 4. Importar o dump para o master1 5. VACUUM FULL (só pra garantir) no master1 6. Promover o master1 o master primário (Todas as operacões que foram feitas no master2, não sei como fazer as alteracões serem incluídas no novo master) 7. Importar o dump dentro de todos os outros slaves - E mandar eles sincronizarem a partir do novo master1.
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral