Pg_profile kurulum ve örnekleri
Pg_profile PostgreSQL de extension olarak tanımladığımız bir uzantıdır, PostgreSQL veritabanlarınızdaki yoğun kaynak etkinliklerin çoğunu bulmanıza yardımcı olur.
Bu uzantı, PostgreSQL’in istatistik görünümlerine ve pg_stat_statements ve pg_stat_kcache katkı uzantılarına dayanmaktadır. Saf pl/pgsql ile yazılmıştır ve herhangi bir harici kütüphaneye veya yazılıma ihtiyaç duymaz, ancak PostgreSQL veritabanının kendisine ve periyodik görevleri gerçekleştiren cron benzeri bir araca ihtiyaç duyar. Başlangıçta PostgreSQL 9.6 uzantısı üzerinde geliştirilmiş ve test edilmiş, önceki sürümlerle uyumlu olmayabilir.
wget https://github.com/zubkov-andrei/pg_profile/releases/download/0.3.6/pg_profile--0.3.6.tar.gz
#Pg_profile'ın son sürümünü github reposundan indirebilirsiniz.tar xzf pg_profile--0.3.6.tar.gz --directory /usr/pgsql-13/share/extension/yum install postgresql13-contribls -ltr /usr/pgsql-13/share/extension/ su - postgres
psql\dx
select * from pg_stat_statements;#yüklemediyseniz bulamayacaktır.
exitcd $PGDATA
vi postgresql.conf
shared_preload_libraries = 'pg_stat_statements'
track_activities = on
track_counts = on
track_io_timing = on
track_functions = all
systemctl restart postgresql-13
psql
CREATE EXTENSION dblink;
CREATE EXTENSION pg_stat_statements;
CREATE SCHEMA profile;
CREATE EXTENSION pg_profile SCHEMA profile;
select * from pg_stat_statements;
\dx+ pg_profile
select * from profile.show_servers() ;
select * from profile.take_sample();#SELECT profile.create_server('postgresql13-all','host=<host> port=5432 user=profile_mon');SELECT * FROM profile.show_baselines('local');psql -Aqtc "SELECT profile.get_report('local',1,3)" -o web_postgresql_awr.html