Bueno, aquí está la consulta terminada y funcional.
Probada con 9.1.7, exactamente:
SELECT version();
version
------------------------------------------------------------------------------------------------------------
PostgreSQL 9.1.7 on x86_64-unknown-linux-gnu, compiled by gcc
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit
(1 row)
Aquí está la consulta:
# Find useless indexes in your db:
SELECT idstat.relname AS table_name,
indexrelname AS index_name,
idstat.idx_scan AS times_used,
pg_size_pretty(pg_relation_size(idstat.relid::regclass)) AS table_size,
pg_size_pretty(pg_relation_size(idstat.indexrelid::regclass)) AS index_size,
n_tup_upd + n_tup_ins + n_tup_del AS num_writes,
indexdef AS definition
FROM pg_stat_user_indexes AS idstat
JOIN pg_indexes ON indexrelname = indexname
JOIN pg_stat_user_tables AS tabstat ON idstat.relname = tabstat.relname
WHERE idstat.idx_scan < 200
AND indexdef !~* 'unique'
ORDER BY idstat.relname, indexrelname;
Saludos
On 02/06/2013 08:40 AM, Yoan Manuel Perez Piñero wrote:
Marcos si ya tienes la consulta mejorada, por favor compártela. Gracias de
antemano.
----- Mensaje original -----
De: "Marcos Ortiz" <mlor...@uci.cu>
Para: "Alvaro Herrera" <alvhe...@2ndquadrant.com>
CC: pgsql-es-ayuda@postgresql.org
Enviados: Martes, 5 de Febrero 2013 11:32:00
Asunto: Re: [pgsql-es-ayuda] Encontrar los índices menos usados en PostgreSQL
9.1
On 02/05/2013 11:28 AM, Alvaro Herrera wrote:
Marcos Ortiz escribió:
Bueno, encontré una forma más fácil de encontrar los índices que
menos se usan usando el campo idx_scan:
SELECT schemaname,
relname,
indexrelname,
idx_scan
FROM pg_stat_user_indexes
ORDER BY idx_scan ;
Pero cuidado. La otra consulta no es más compleja por puro capricho.
Por ej. debes tener cuidado con los índices únicos, que pueden tener
cero recorridos pero ser importantes para implementar una restricción de
unicidad, por ejemplo.
Si, precisamente, ese tema era una de las cuestiones que advertía
Josh Berkus en su post. Lo tendré en cuenta.
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda